diff --git a/.gitignore b/.gitignore index a73988e..c7697f8 100644 --- a/.gitignore +++ b/.gitignore @@ -24,4 +24,4 @@ tests/phpunit/.cache build/* # WordPress -wordpress/ \ No newline at end of file +wordpress/ diff --git a/.wp-env.json b/.wp-env.json index b3a69ae..29a63b6 100644 --- a/.wp-env.json +++ b/.wp-env.json @@ -2,7 +2,10 @@ "core": null, "phpVersion": "7.4", "themes": ["WordPress/twentytwentyfive"], - "plugins": ["."], + "plugins": [], + "mappings": { + "wp-content/plugins/cooked": "." + }, "port": 8888, "testsEnvironment": false, "config": { @@ -12,5 +15,8 @@ "SCRIPT_DEBUG": true, "WP_ENVIRONMENT_TYPE": "local", "DISALLOW_FILE_EDIT": false + }, + "lifecycleScripts": { + "afterStart": "wp-env run cli bash -c 'curl -fsSL -o /tmp/wp-cli.phar https://github.com/wp-cli/builds/raw/gh-pages/phar/wp-cli.phar && chmod +x /tmp/wp-cli.phar && sudo cp /tmp/wp-cli.phar /usr/local/bin/wp && sudo chmod +x /usr/local/bin/wp'" } } diff --git a/CITATION.cff b/CITATION.cff index 367f626..6a63f36 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -6,7 +6,7 @@ authors: given-names: Justin - family-names: Tresova given-names: Armand -version: 1.15.0 +version: 1.16.0 doi: 10.5281/zenodo.1171250 date-released: 2017-05-08 url: "https://github.com/XjSv/cooked" diff --git a/assets/admin/css/style.css b/assets/admin/css/style.css index a7b8dec..a9bab1f 100644 --- a/assets/admin/css/style.css +++ b/assets/admin/css/style.css @@ -53,10 +53,8 @@ body.post-type-cp_recipe .mce-fullscreen { #cooked-settings-wrap.is-stuck { position:static !important; } #cooked-settings-wrap .cooked-settings-update-button { position:absolute; top:30px; right:30px; } #cooked-settings-wrap .cooked-settings-update-button > .button-primary { box-shadow:none; border:none; } -#cooked-settings-wrap.is-stuck .cooked-settings-update-button { position:fixed; top:40px; right:11px; z-index:100001; } +#cooked-settings-wrap.is-stuck .cooked-settings-update-button { position:fixed; top:35px; right:11px; z-index:100001; } -#cooked_recipe_settings .hndle, #cooked_recipe_settings button.handlediv { display:none; } -#cooked_recipe_settings .inside { padding:0; margin:0; } #cooked-recipe-tabs { list-style:none; padding:0; margin:0; position:absolute; top:0; left:0; width:100%; } #cooked-recipe-tabs li { font-size:0.9rem; line-height:3rem; height:3rem; font-weight:500; display:inline-block; padding:0 1.25rem; margin:0; color:#fff; } @@ -68,7 +66,7 @@ body.post-type-cp_recipe .mce-fullscreen { #cooked-recipe-tabs li.cooked-loading:hover { background:none; color:#fff; } #cooked_recipe_settings.cooked-loading #cooked-recipe-tabs li.cooked-loading { opacity:1; } -#cooked_recipe_settings .inside { padding-top:41px; } +#cooked_recipe_settings .inside { padding-top:60px; margin: 0} #cooked_recipe_settings.stuck #cooked-recipe-tabs { position: fixed; width: auto; @@ -328,12 +326,12 @@ body .button.button-cooked-reset:hover { color:#555; } #cooked-directions-builder .cooked-direction-block.cooked-direction-heading { padding:5px 25px 5px 35px; } #cooked-directions-builder .cooked-direction-block:hover { background:#f5f5f5; } #cooked-directions-builder .cooked-direction-block.cooked-direction-heading:hover { background:#eee; } -#cooked-directions-builder .cooked-direction-block textarea { margin:0; display:block; height:191px; top:0; } +#cooked-directions-builder .cooked-direction-block textarea { margin:0; display:block; height:250px; top:0; } #cooked-directions-builder .cooked-direction-block > div { display:inline-block; float:left; box-sizing:border-box; padding-right:15px; } #cooked-directions-builder .cooked-direction-block > div:last-child { padding:0; } #cooked-directions-builder .cooked-direction-block > div input[type="text"] { width:100%; } #cooked-directions-builder .cooked-direction-block .mce-statusbar { display:none; } -#cooked-directions-builder .cooked-direction-block > .cooked-direction-image { width:120px; position:absolute; top:15px; left:35px; } +#cooked-directions-builder .cooked-direction-block > .cooked-direction-image { width:135px; position:absolute; top:15px; left:35px; } #cooked-directions-builder .cooked-direction-block > .cooked-direction-image img { cursor:pointer; display:none; border-radius:3px; } #cooked-directions-builder .cooked-direction-block > .cooked-direction-image .cooked-direction-img-placeholder { box-sizing: border-box; cursor:pointer; border-radius:3px; width:100%; padding-bottom:100%; background:none; border:2px dashed #ddd; border-radius:3px; margin-top:15px; } #cooked-directions-builder .cooked-direction-block:hover > .cooked-direction-image .cooked-direction-img-placeholder { background:none; } @@ -344,28 +342,106 @@ body .button.button-cooked-reset:hover { color:#555; } #cooked-directions-builder .cooked-direction-block > .cooked-direction-image.cooked-has-image .remove-image-button:hover { background:#ff0100; } #cooked-directions-builder .cooked-direction-block > .cooked-direction-image.cooked-has-image img { width:100%; height:auto; display:block; margin:15px 0 0; } #cooked-directions-builder .cooked-direction-block > .cooked-direction-image.cooked-has-image .cooked-direction-img-placeholder { display:none; } -#cooked-directions-builder .cooked-direction-block > .cooked-direction-content { width:100%; padding-left:120px; } +#cooked-directions-builder .cooked-direction-block > .cooked-direction-content { width:100%; padding-left:175px; padding-right:175px; } #cooked-directions-builder .cooked-direction-block .cooked-direction-number { opacity:0.4; position:absolute; display:inline-block; font-weight:800; top:17px; left:35px; font-size:1.25rem; line-height:1; } #cooked-directions-builder .cooked-direction-block.cooked-direction-has-number > .cooked-direction-image { left: 65px; } -#cooked-directions-builder .cooked-direction-block.cooked-direction-has-number > .cooked-direction-content { padding-left:175px; } -#cooked-directions-builder .cooked-direction-block.cooked-direction-has-number-wide > .cooked-direction-content { padding-left:185px; } +#cooked-directions-builder .cooked-direction-block.cooked-direction-has-number > .cooked-direction-content { padding-left:175px; padding-right:175px; } +#cooked-directions-builder .cooked-direction-block.cooked-direction-has-number-wide > .cooked-direction-content { padding-left:185px; padding-right:175px; } #cooked-directions-builder .cooked-direction-block > .cooked-heading-name { width:100%; } #cooked-directions-builder .cooked-direction-block { margin:0; } #cooked-directions-builder .cooked-direction-block i.cooked-icon-drag { cursor:move; color:#ccc; font-size:32px; position:absolute; top:13px; left:1px; touch-action:none; } #cooked-directions-builder .cooked-direction-block.cooked-direction-heading i.cooked-icon-drag { top:5px; } #cooked-directions-builder .cooked-direction-block:hover i.cooked-icon-drag { color:#888; } #cooked-directions-builder .cooked-direction-block.ui-sortable-helper { background:#f5f5f5; box-shadow:0 10px 20px rgba(0,0,0,0.15); -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; } -#cooked-directions-builder .cooked-direction-block.ui-sortable-placeholder { visibility:visible !important; background:#eee; display:block; width:100%; height:221px; border-top:6px solid #fff; border-bottom:6px solid #fff; } +#cooked-directions-builder .cooked-direction-block.ui-sortable-placeholder { visibility:visible !important; background:#eee; display:block; width:100%; height:280px; border-top:6px solid #fff; border-bottom:6px solid #fff; } #cooked-directions-builder .cooked-direction-block.cooked-direction-heading.ui-sortable-placeholder { height:43px; } #cooked-directions-builder .cooked-direction-block .cooked-delete-direction { cursor:pointer; font-size:14px; position:absolute; right:14px; } #cooked-directions-builder .cooked-direction-block .cooked-delete-direction .cooked-icon { color:#fff; } #cooked-directions-builder .cooked-direction-block:hover .cooked-delete-direction .cooked-icon { color:#888; } #cooked-directions-builder .cooked-direction-block .cooked-delete-direction .cooked-icon:hover { color:#de2020; } +#cooked-directions-builder .cooked-direction-block > .cooked-direction-video { width:135px; position:absolute; top:15px; right:25px; } #cooked-directions-builder .cooked-direction-block.cooked-direction-heading { margin:10px 0; } #cooked-directions-builder .cooked-direction-block.cooked-direction-heading > div input[type="text"] { padding:0px 7px; font-size:16px; background:#f9f9f9; font-weight:600; top:0; margin:0; } #cooked-directions-builder .cooked-direction-block .cooked-delete-direction { top:16px; } #cooked-directions-builder .cooked-direction-block.cooked-direction-heading .cooked-delete-direction { top:14px; } +/* Settings image field */ +.cooked-settings-image-field { position:relative; display:inline-block; max-width:150px; } +.cooked-settings-image-field .cooked-settings-image-preview-img { display:none; width:100%; height:auto; margin:10px 0 0; border-radius:3px; } +.cooked-settings-image-field .cooked-settings-image-remove { display:none; position:absolute; top:50px; right:0; padding:10px; background:rgba(0,0,0,0.25); color:#fff; border-radius: 3px; } +.cooked-settings-image-field.cooked-has-image .cooked-settings-image-remove { display:inline-block; } +.cooked-settings-image-field.cooked-has-image .cooked-settings-image-remove:hover { background:#ff0100; } +.cooked-settings-image-field.cooked-has-image .cooked-settings-image-preview-img { display:block; } + +/* Direction Video */ +#cooked-directions-builder .cooked-direction-block > .cooked-direction-video .cooked-direction-video-preview { display:none; width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:3px; cursor:pointer; } +#cooked-directions-builder .cooked-direction-block > .cooked-direction-video .cooked-direction-video-placeholder { box-sizing:border-box; cursor:pointer; border-radius:3px; width:100%; padding-bottom:100%; background:none; border:2px dashed #ddd; margin-top:15px; } +#cooked-directions-builder .cooked-direction-block > .cooked-direction-video .cooked-direction-video-placeholder:hover { background:#ddd; border:2px solid #ddd; } +#cooked-directions-builder .cooked-direction-block > .cooked-direction-video .direction-video-button { width:100%; text-align:center; } +#cooked-directions-builder .cooked-direction-block > .cooked-direction-video.cooked-has-video .cooked-direction-video-placeholder { display:none; } +#cooked-directions-builder .cooked-direction-block > .cooked-direction-video.cooked-has-video .cooked-direction-video-preview { display:block; width:100%; aspect-ratio:1/1; object-fit:cover; margin-top:15px; } +#cooked-directions-builder .cooked-direction-block > .cooked-direction-video .remove-video-button { display:none; position:absolute; top:43px; right:15px; } +#cooked-directions-builder .cooked-direction-block > .cooked-direction-video.cooked-has-video .remove-video-button { display:inline-block; padding:10px; background:rgba(0,0,0,0.25); color:#fff; } +#cooked-directions-builder .cooked-direction-block > .cooked-direction-video.cooked-has-video .remove-video-button:hover { background:#ff0100; } + +/* Direction Steps: Responsive (below 1440px) — stack content above image+video */ +@media screen and (max-width: 1440px) { + #cooked-directions-builder .cooked-direction-block:not(.cooked-direction-heading) { + display: grid; + grid-template-columns: 1fr 1fr; + grid-template-areas: + "content content" + "image video"; + gap: 10px; + padding: 15px 0px 15px 0px; + } + #cooked-directions-builder .cooked-direction-block:not(.cooked-direction-heading) > .cooked-direction-content { + grid-area: content; + padding: 14px 14px 0 14px!important; + min-height: 80px; + } + #cooked-directions-builder .cooked-direction-block:not(.cooked-direction-heading) > .cooked-direction-image { + grid-area: image; + position: relative; + width: auto; + left: auto; + top: auto; + padding-left: 15px; + padding-right: 0; + } + #cooked-directions-builder .cooked-direction-block:not(.cooked-direction-heading) > .cooked-direction-video { + grid-area: video; + position: relative; + width: auto; + right: auto; + top: auto; + } + #cooked_recipe_settings .cooked-recipe-tab-content { + padding: 0px 0px 15px 0px; + } + #cooked-recipe-tabs { + white-space: nowrap; + overflow-x: auto; + scrollbar-width: none; + -ms-overflow-style: none; + top: 0; + width: 100%; + } + #cooked-recipe-tabs::-webkit-scrollbar { + display: none; + } + #cooked-recipe-tabs li { + float: none; + } + #cooked_recipe_settings.stuck #cooked-recipe-tabs { + position: fixed; + top: 32px; + left: 0; + width: 100%; + margin-left: 0; + } +} + /* Recipe Gallery */ #cooked-recipe-image-gallery { margin:0 -1% 0; } #cooked-recipe-image-gallery .cooked-recipe-gallery-item { position:relative; overflow:hidden; cursor:move; box-sizing:border-box; display:inline-block; width:18%; height:auto; padding:0; margin:0 1% 2% 1%; } @@ -681,6 +757,164 @@ body .button.button-cooked-reset:hover { color:#555; } #cooked_recipe_settings.stuck #cooked-recipe-tabs { margin-left:36px; } } +@media screen and ( max-width: 768px ) { + #cooked_recipe_settings.stuck #cooked-recipe-tabs { + position: absolute; + top: 0; + left: 0; + width: 100%; + margin-left: 0; + box-shadow: 0 3px 50px rgba(0,0,0,0.25); + } + #cooked_recipe_settings .cooked-clearfix:has(> .cooked-setting-column-14) { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 10px; + } + #cooked_recipe_settings .cooked-setting-column-14 { + width: 100%; + float: none; + padding-right: 0; + } + #cooked_recipe_settings .recipe-setting-block h3.cooked-settings-title { + width: 60%; + } + + +} + +@media screen and ( max-width: 600px ) { + #cooked_recipe_settings .recipe-setting-block h3.cooked-settings-title { + display: flex; + flex-wrap: wrap; + align-items: center; + row-gap: 10px; + } + #cooked_recipe_settings .recipe-setting-block:has(#cooked-nutrition-label) .cooked-setting-column-12 { + width: 100%; + float: none; + padding-right: 0; + } + #cooked_recipe_settings .recipe-setting-block:has(#cooked-nutrition-label) p.cooked-measurement-inputs { + display: flex; + gap: 10px; + } + #cooked_recipe_settings .recipe-setting-block:has(#cooked-nutrition-label) p.cooked-measurement-inputs .cooked-measurement-column { + width: 50%; + margin-right: 0; + flex: 1; + } + #cooked-ingredients-builder .cooked-ingredient-block { + display: grid; + grid-template-columns: 1fr 1fr; + column-gap: 8px; + row-gap: 4px; + padding-left: 30px; + padding-right: 35px; + } + #cooked-ingredients-builder .cooked-ingredient-block > div { + display: block; + float: none; + padding-right: 0; + } + #cooked-ingredients-builder .cooked-ingredient-block > .cooked-ingredient-amount { + width: auto; + grid-column: 1; + } + #cooked-ingredients-builder .cooked-ingredient-block > .cooked-ingredient-measurement { + width: auto; + grid-column: 2; + } + #cooked-ingredients-builder .cooked-ingredient-block > .cooked-ingredient-name { + width: auto; + grid-column: 1 / -1; + padding-right: 40px; + } + #cooked-ingredients-builder .cooked-ingredient-block > .cooked-substitution-fields { + width: auto; + float: none; + clear: none; + grid-column: 1 / -1; + } + #cooked-ingredients-builder .cooked-ingredient-block > .cooked-heading-name { + grid-column: 1 / -1; + } + #cooked_recipe_settings .cooked-ingredient-headers { + display: grid; + grid-template-columns: 1fr 1fr; + padding-left: 30px; + padding-right: 35px; + } + #cooked_recipe_settings .cooked-ingredient-headers span { + display: block; + float: none; + } + #cooked_recipe_settings .cooked-layout-save-default { + margin: 0; + } + #cooked_recipe_settings .cooked-ingredient-headers span.cooked-ingredient-header-amount { + width: auto; + } + #cooked_recipe_settings .cooked-ingredient-headers span.cooked-ingredient-header-measurement { + width: auto; + } + #cooked_recipe_settings .cooked-ingredient-headers span.cooked-ingredient-header-item { + width: auto; + grid-column: 1 / -1; + padding-top: 2px; + } + #cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded > .cooked-substitution-fields { + display: grid; + grid-template-columns: 1fr 1fr; + column-gap: 8px; + row-gap: 4px; + } + #cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded > .cooked-substitution-fields > div { + display: block; + float: none; + padding-right: 0; + } + #cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded > .cooked-substitution-fields .cooked-ingredient-amount, + #cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded > .cooked-substitution-fields .cooked-ingredient-measurement { + width: 100%; + display: block; + } + #cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded > .cooked-substitution-fields .cooked-ingredient-name { + width: auto; + grid-column: 1 / -1; + padding-top: 0; + } + #cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded > .cooked-substitution-fields .cooked-sub-label { + grid-column: 1 / -1; + } + #cooked-ingredients-builder .cooked-ingredient-block { + position: relative; + } + #cooked-ingredients-builder .cooked-ingredient-block .cooked-show-substitution { + top: 60px; + right: 42px; + } + #cooked-ingredients-builder .cooked-ingredient-block:hover .cooked-show-substitution, + #cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded .cooked-show-substitution, + #cooked-ingredients-builder .cooked-ingredient-block.cooked-has-substitution .cooked-show-substitution { + right: 42px; + } + #cooked-ingredients-builder .cooked-ingredient-block .cooked-delete-ingredient { + right: 11px; + } + +} + +@media screen and ( max-width: 500px ) { + #cooked_recipe_settings .cooked-clearfix:has(> .cooked-setting-column-14) { + grid-template-columns: 1fr; + } + + #cooked_recipe_settings.stuck #cooked-recipe-tabs { + width: 100%; + } +} + /* Substitution Fields */ #cooked-ingredients-builder .cooked-ingredient-block > .cooked-substitution-fields { width: 100%; diff --git a/assets/admin/css/style.min.css b/assets/admin/css/style.min.css index 58f345e..11547ac 100644 --- a/assets/admin/css/style.min.css +++ b/assets/admin/css/style.min.css @@ -1 +1 @@ -.cooked-clearfix:after{content:"";display:table;clear:both}#post-body-content #postdivrich{display:none}body.post-type-cp_recipe .wp-list-table tfoot th.check-column,body.post-type-cp_recipe .wp-list-table thead th.check-column{padding:15px 0 0 7px}body.post-type-cp_recipe .wp-list-table tfoot td,body.post-type-cp_recipe .wp-list-table tfoot th,body.post-type-cp_recipe .wp-list-table thead td,body.post-type-cp_recipe .wp-list-table thead th{padding:10px 10px}body.post-type-cp_recipe .wp-list-table tfoot th.sortable a,body.post-type-cp_recipe .wp-list-table tfoot th.sorted a,body.post-type-cp_recipe .wp-list-table thead th.sortable a,body.post-type-cp_recipe .wp-list-table thead th.sorted a{padding-left:0;padding-right:0}body.post-type-cp_recipe .wp-list-table tbody th.check-column{padding:15px 0 0 10px}body.post-type-cp_recipe .wp-list-table tbody td,body.post-type-cp_recipe .wp-list-table tbody th{padding:12px 10px}body.post-type-cp_recipe .wp-list-table tbody td.column-title strong{margin-top:6px}body.post-type-cp_recipe .wp-list-table tbody td.column-title strong .row-title{padding-top:10px;font-size:1rem!important}th.column-featured_image{width:50px;text-align:center}td.column-featured_image{width:50px;text-align:center}.cooked-admin-recipes-list-image img{width:49px;height:auto;border-radius:3px;position:relative;top:3px}body.post-type-cp_recipe #titlediv #title{box-shadow:none;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;padding:0 12px;font-weight:400;font-size:19px;letter-spacing:0;height:44px}body.post-type-cp_recipe #titlediv #title-prompt-text{font-size:15px;color:#888;font-weight:400;letter-spacing:0;padding:12px 15px}body.post-type-cp_recipe .mce-fullscreen{z-index:100100!important}#cooked-settings-prewrap{display:flex;justify-content:center}#cooked-settings-wrap{position:relative;border-radius:10px;margin:40px 40px 40px 20px;max-width:1200px;min-width:1000px;background:#fff;box-shadow:0 4px 4px rgba(0,0,0,.05),0 8px 8px rgba(0,0,0,.05),0 32px 32px rgba(0,0,0,.05),0 64px 64px rgba(0,0,0,.05)}#cooked-settings-wrap.is-stuck{position:static!important}#cooked-settings-wrap .cooked-settings-update-button{position:absolute;top:30px;right:30px}#cooked-settings-wrap .cooked-settings-update-button>.button-primary{box-shadow:none;border:none}#cooked-settings-wrap.is-stuck .cooked-settings-update-button{position:fixed;top:40px;right:11px;z-index:100001}#cooked_recipe_settings .hndle,#cooked_recipe_settings button.handlediv{display:none}#cooked_recipe_settings .inside{padding:0;margin:0}#cooked-recipe-tabs{list-style:none;padding:0;margin:0;position:absolute;top:0;left:0;width:100%}#cooked-recipe-tabs li{font-size:.9rem;line-height:3rem;height:3rem;font-weight:500;display:inline-block;padding:0 1.25rem;margin:0;color:#fff}#cooked-recipe-tabs li:hover{cursor:pointer}#cooked-recipe-tabs li.active,#cooked-recipe-tabs li.active:hover{cursor:default}#cooked-recipe-tabs li:last-child{border-right:none!important}#cooked-recipe-tabs li.cooked-loading{opacity:0;background:0 0;color:#fff;position:absolute;top:0;right:0;cursor:default;font-size:14px;width:40px;height:40px;text-align:center;display:block;line-height:40px;padding:0}#cooked-recipe-tabs li.cooked-loading:hover{background:0 0;color:#fff}#cooked_recipe_settings.cooked-loading #cooked-recipe-tabs li.cooked-loading{opacity:1}#cooked_recipe_settings .inside{padding-top:41px}#cooked_recipe_settings.stuck #cooked-recipe-tabs{position:fixed;width:auto;top:32px;left:23px;z-index:100000;margin-left:160px;box-shadow:0 3px 50px rgba(0,0,0,.25)}#cooked_recipe_settings.stuck #cooked-recipe-tabs li.cooked-loading{right:160px}.cooked-recipe-tab-content-wrapper .cooked-recipe-tab-content{display:none}.cooked-recipe-tab-content-wrapper .cooked-recipe-tab-content:first-child{display:block}.cooked-left{float:left;display:inline-block;width:auto}.cooked-right{float:right;display:inline-block;width:auto}#cooked_field--cooked_pro_license_key{font-family:monospace}#cooked_recipe_settings .cooked-bm-5{margin-bottom:5px!important}#cooked_recipe_settings .cooked-bm-10{margin-bottom:10px!important}#cooked_recipe_settings .cooked-tm-10{margin-top:10px!important}#cooked_recipe_settings .cooked-bm-15{margin-bottom:15px!important}#cooked_recipe_settings .cooked-bm-20{margin-bottom:20px!important}#cooked_recipe_settings .cooked-bm-30{margin-bottom:30px!important}#cooked_recipe_settings .cooked-bm-5-up{margin-bottom:-5px!important}#cooked_recipe_settings .cooked-bm-10-up{margin-bottom:-10px!important}#cooked_recipe_settings .cooked-bm-15-up{margin-bottom:-15px!important}#cooked_recipe_settings .cooked-bm-20-up{margin-bottom:-20px!important}#cooked_recipe_settings .cooked-bm-30-up{margin-bottom:-30px!important}#cooked_recipe_settings .cooked-hr{border:none;border-top:2px solid #ddd;margin:10px 0 0 0;padding:15px 0 0 0}#cooked_recipe_settings .cooked-conditional-hidden{display:none}#cooked_recipe_settings .cooked-recipe-tab-content{padding:23px 30px 15px 30px}#cooked_recipe_settings .recipe-setting-block{margin:0 0 20px;width:100%}#cooked_recipe_settings .recipe-setting-block p{font-size:.9rem;line-height:1.5rem;margin:0 0 1rem;padding:0}#cooked_recipe_settings .recipe-setting-block p.cooked-padded{line-height:1.75rem;font-size:.85rem}#cooked_recipe_settings .recipe-setting-block .cooked-conditional-hidden{padding:0}#cooked_recipe_settings textarea{width:100%;height:75px;padding:15px;box-sizing:border-box;position:relative;top:5px}#cooked_recipe_settings .recipe-setting-block>label.cooked-select-label{top:5px}#cooked_recipe_settings select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-shadow:none;border-radius:3px;padding:0 45px 0 9px;line-height:31px;height:33px;box-sizing:border-box;background:#fff}#cooked_recipe_settings .cooked-select-wrapper{background:#fff;position:relative;width:auto;display:inline-block;border-radius:3px;margin:0 5px 0 0}#cooked_recipe_settings .cooked-select-wrapper select{margin:0;background:0 0;position:relative}#cooked_recipe_settings .cooked-select-wrapper:before{font-family:CookedIcons;display:block;width:15px;height:15px;line-height:14px;color:#000;font-size:14px;content:"\f00b";position:absolute;right:12px;top:11px;color:rgba(0,0,0,.3)}#cooked_recipe_settings .cooked-select-wrapper:hover:before{color:#000}#cooked_recipe_settings .cooked-select-wrapper:hover select{border-color:#ccc}#cooked_recipe_settings .cooked-checkbox-radio-label{position:relative;left:1px}#cooked_recipe_settings .recipe-setting-block input[type=checkbox],#cooked_recipe_settings .recipe-setting-block input[type=radio]{margin-top:0}#cooked_recipe_settings .recipe-setting-block input[type=number]{width:65px}#cooked_recipe_settings .recipe-setting-block input[type=password],#cooked_recipe_settings .recipe-setting-block input[type=text]{width:75%}#cooked_recipe_settings .recipe-setting-block input[type=number],#cooked_recipe_settings .recipe-setting-block input[type=password],#cooked_recipe_settings .recipe-setting-block input[type=text]{margin:0 6px 5px 0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;height:33px;box-shadow:none;position:relative;top:2px;padding:0 10px}#cooked_recipe_settings .recipe-setting-block p.cooked-measurement-inputs .cooked-measurement-column{width:43%;margin-right:3%;display:inline-block}#cooked_recipe_settings .recipe-setting-block p.cooked-measurement-inputs .cooked-select-wrapper,#cooked_recipe_settings .recipe-setting-block p.cooked-measurement-inputs input,#cooked_recipe_settings .recipe-setting-block p.cooked-measurement-inputs label{width:100%;display:block}#cooked_recipe_settings .recipe-setting-block p.cooked-measurement-inputs .cooked-select-wrapper select{width:100%}#cooked_recipe_settings .recipe-setting-block input[type=number],#cooked_recipe_settings .recipe-setting-block input[type=password].cooked-small-textfield,#cooked_recipe_settings .recipe-setting-block input[type=text].cooked-small-textfield{width:150px}#cooked_recipe_settings small{display:block;line-height:1.5;font-size:12px;color:#888;padding:10px 0 0}#cooked_recipe_settings .recipe-setting-block em{color:#aaa}#cooked_recipe_settings .recipe-setting-block,#cooked_recipe_settings .recipe-setting-block .cooked-repositioned{display:block;position:relative;box-sizing:border-box;line-height:1}#cooked_recipe_settings .recipe-setting-block .cooked-repositioned{padding-left:157px}#cooked_recipe_settings .recipe-setting-block h3.cooked-settings-title{width:70%;position:relative;z-index:2;padding:.5rem 0 .5rem;margin:0;font-size:1rem;line-height:1.5rem;font-weight:600}#cooked_recipe_settings .recipe-setting-block strong.cooked-heading{font-size:14px}#cooked_recipe_settings .recipe-setting-block .cooked-repositioned>label{position:absolute;top:1px;left:0;width:147px;cursor:default;font-weight:600}#cooked_recipe_settings .recipe-setting-block .cooked-tooltip-icon{color:#aaa;cursor:help;display:inline-block;margin-left:10px}#cooked_recipe_settings .recipe-setting-block .cooked-tooltip-icon:hover{color:#eee}#cooked_recipe_settings .recipe-setting-block .cooked-repositioned>.cooked-checkbox-radio-label{top:7px}#cooked_recipe_settings .recipe-setting-block .cooked-repositioned>label{top:auto;height:33px;line-height:30px;padding:0;width:130px}#cooked_recipe_settings .recipe-setting-block .cooked-repositioned:first-child label:first-child{padding-top:12px;margin-top:-12px}#cooked_recipe_settings .recipe-setting-block .cooked-repositioned span.cooked-padded{padding:0 0 15px;display:block;line-height:1.9}#cooked_recipe_settings .recipe-setting-block .wp-picker-container .cooked-color-field.wp-color-picker{padding:5px;height:25px;top:0;margin:0;width:74px;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;border:1px solid #ccc}#cooked_recipe_settings .recipe-setting-block input[type=text].cooked-shortcode-field{font-family:monospace;background:#f5f5f5;font-size:12px}#cooked_recipe_settings .cooked-banner-block{margin:30px -30px -17px;display:block;box-sizing:content-box;padding:10px 30px 15px;background:#f9f9f9;width:100%;border-top:1px solid #e5e5e5}#cooked_recipe_settings .cooked-advanced-options-hr{border:none;border-bottom:1px solid #ddd;height:1px;padding:10px 0 0 0;margin:0 0 20px}#cooked_recipe_settings .recipe-setting-block input.cooked-time-picker{top:0;width:100%;padding-right:70%;margin:0 0 3px}#cooked_recipe_settings .recipe-setting-block .cooked-time-picker-text{position:absolute;bottom:13px;right:40px;color:#888}#cooked_recipe_settings .cooked-alert-block{background:#fffbdc;-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;margin:10px 0 15px;padding:10px 22px 2px;border:2px solid #ece8c4}#cooked_recipe_settings .recipe-setting-block.cooked-template{display:none}#cooked_recipe_settings ul.cooked-admin-ul{font-size:.9rem;margin:0 0 1rem 2rem;list-style:disc}#cooked_recipe_settings ul.cooked-admin-ul li{font-size:.9rem;padding:0;margin:0 0 .5rem}#cooked_recipe_settings .cooked-html-block{background:#fff;width:auto;min-width:300px;display:inline-block;padding:.5rem 1.3rem .25rem;border-radius:3px;box-shadow:0 1px 3px rgba(0,0,0,.15)}#cooked_recipe_settings .recipe-setting-block .cooked-html-block h3.cooked-settings-title{width:100%;color:#333}#cooked_recipe_settings .recipe-setting-block .cooked-html-block.valid{background:#fff;border:2px solid #0aa780;box-shadow:none;border-radius:5px}#cooked_recipe_settings .recipe-setting-block .cooked-html-block.valid>.cooked-settings-title{color:#0aa780}#cooked_recipe_settings .recipe-setting-block .cooked-html-block.expired{border:2px solid #ca4a20}#cooked-directions-builder .cooked-direction-block.cooked-expanded>.cooked-heading-name,#cooked-directions-builder .cooked-direction-block.cooked-has-heading-element>.cooked-heading-name,#cooked-directions-builder .cooked-direction-block:hover>.cooked-heading-name,#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded>.cooked-heading-name,#cooked-ingredients-builder .cooked-ingredient-block.cooked-has-heading-element>.cooked-heading-name,#cooked-ingredients-builder .cooked-ingredient-block:hover>.cooked-heading-name{padding-right:32px}#cooked-directions-builder .cooked-direction-block .cooked-show-heading-element,#cooked-ingredients-builder .cooked-ingredient-block .cooked-show-heading-element{opacity:0;cursor:pointer;font-size:14px;position:absolute;top:14px;right:35px}#cooked-directions-builder .cooked-direction-block .cooked-show-heading-element .cooked-icon,#cooked-ingredients-builder .cooked-ingredient-block .cooked-show-heading-element .cooked-icon{color:#888}#cooked-directions-builder .cooked-direction-block.cooked-expanded .cooked-show-heading-element,#cooked-directions-builder .cooked-direction-block.cooked-has-heading-element .cooked-show-heading-element,#cooked-directions-builder .cooked-direction-block:hover .cooked-show-heading-element,#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded .cooked-show-heading-element,#cooked-ingredients-builder .cooked-ingredient-block.cooked-has-heading-element .cooked-show-heading-element,#cooked-ingredients-builder .cooked-ingredient-block:hover .cooked-show-heading-element{opacity:1}#cooked-directions-builder .cooked-direction-block .cooked-show-heading-element .cooked-icon:hover,#cooked-directions-builder .cooked-direction-block.cooked-expanded .cooked-show-heading-element .cooked-icon,#cooked-directions-builder .cooked-direction-block.cooked-has-heading-element .cooked-show-heading-element .cooked-icon,#cooked-ingredients-builder .cooked-ingredient-block .cooked-show-heading-element .cooked-icon:hover,#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded .cooked-show-heading-element .cooked-icon,#cooked-ingredients-builder .cooked-ingredient-block.cooked-has-heading-element .cooked-show-heading-element .cooked-icon{color:#0685ba}#cooked-directions-builder .cooked-direction-block>.cooked-heading-element,#cooked-ingredients-builder .cooked-ingredient-block>.cooked-heading-element{display:none;width:65%;float:right;margin-top:4px;padding-right:32px}#cooked-directions-builder .cooked-direction-block>.cooked-heading-element select,#cooked-ingredients-builder .cooked-ingredient-block>.cooked-heading-element select{color:#0685ba;width:100%}#cooked-directions-builder .cooked-direction-block>.cooked-heading-element label,#cooked-ingredients-builder .cooked-ingredient-block>.cooked-heading-element label{font-weight:600}#cooked-directions-builder .cooked-direction-block.cooked-expanded>.cooked-heading-element,#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded>.cooked-heading-element{display:block}#cooked-ingredients-builder .cooked-ingredient-block .cooked-show-substitution{opacity:0;cursor:pointer;font-size:14px;position:absolute;top:15px;right:58px}#cooked-ingredients-builder .cooked-ingredient-block .cooked-show-substitution .cooked-icon{color:#888}#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded .cooked-show-substitution,#cooked-ingredients-builder .cooked-ingredient-block.cooked-has-substitution .cooked-show-substitution,#cooked-ingredients-builder .cooked-ingredient-block:hover .cooked-show-substitution{opacity:1;right:50px}#cooked-ingredients-builder .cooked-ingredient-block .cooked-show-substitution .cooked-icon:hover,#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded .cooked-show-substitution .cooked-icon,#cooked-ingredients-builder .cooked-ingredient-block.cooked-has-substitution .cooked-show-substitution .cooked-icon{color:#0685ba}#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded>.cooked-ingredient-name,#cooked-ingredients-builder .cooked-ingredient-block.cooked-has-substitution>.cooked-ingredient-name,#cooked-ingredients-builder .cooked-ingredient-block:hover>.cooked-ingredient-name{padding-right:32px}#cooked_recipe_settings .switchery-small,body.post-type-cp_recipe .switchery-small{height:1rem;width:1.75rem;border-radius:1rem;margin-right:.4rem}#cooked_recipe_settings .switchery-small>small,body.post-type-cp_recipe .switchery-small>small{width:1rem;height:1rem;padding:0}.cooked-tooltip-buttons .cooked-icon-spin{margin-top:10px;font-size:15px}.cooked-tooltip-buttons .cooked-saved-default{height:28px;line-height:28px;font-weight:700;font-size:15px;color:#888}.cooked-progress{display:none;position:relative;background:#eee;width:100%;height:6px;padding:0;border-radius:3px;margin:10px 0 0 0}.cooked-progress-text{display:none;font-size:10px;color:#aaa;padding:2px 0 5px}.cooked-progress-text.cooked-active,.cooked-progress.cooked-active{display:block}.cooked-progress .cooked-progress-bar{display:block;position:absolute;background:#0085ba;width:0%;height:6px;top:0;left:0;border-radius:3px}#cooked-import-progress.cooked-progress,#cooked-migration-progress.cooked-progress{background:#ccc;margin:25px 0 0 0;border-radius:6px;height:12px;max-width:600px}#cooked-import-progress.cooked-progress .cooked-progress-bar,#cooked-migration-progress.cooked-progress .cooked-progress-bar{border-radius:6px;height:12px}#cooked-import-progress-text.cooked-progress-text,#cooked-migration-progress-text.cooked-progress-text{font-size:11px;color:#888;max-width:600px}#cooked-import-completed,#cooked-migration-completed{display:none}#cooked-import-completed.cooked-active,#cooked-migration-completed.cooked-active{display:block}#cooked-csv-import-progress.cooked-progress{background:#ccc;margin:25px 0 0 0;border-radius:6px;height:12px;max-width:600px}#cooked-csv-import-progress.cooked-progress .cooked-progress-bar{border-radius:6px;height:12px}#cooked-csv-import-progress-text.cooked-progress-text{font-size:11px;color:#888;max-width:600px}#cooked-csv-import-completed{display:none}#cooked-csv-import-completed.cooked-active{display:block}#cooked-csv-import-form{max-width:100%;box-sizing:border-box}#cooked-csv-import-form input[type=file]{max-width:100%;box-sizing:border-box;width:100%}#cooked-csv-import-errors{max-width:100%;box-sizing:border-box;word-wrap:break-word}#cooked-import-progress.cooked-progress,#cooked-migration-progress.cooked-progress,#cooked-related-progress.cooked-progress{background:#ccc;margin:25px 0 0 0;border-radius:6px;height:12px;max-width:600px}#cooked-import-progress.cooked-progress .cooked-progress-bar,#cooked-migration-progress.cooked-progress .cooked-progress-bar,#cooked-related-progress.cooked-progress .cooked-progress-bar{border-radius:6px;height:12px}#cooked-import-progress-text.cooked-progress-text,#cooked-migration-progress-text.cooked-progress-text,#cooked-related-progress-text.cooked-progress-text{font-size:11px;color:#888;max-width:600px}#cooked-import-completed,#cooked-migration-completed,#cooked-related-completed{display:none}#cooked-import-completed.cooked-active,#cooked-migration-completed.cooked-active,#cooked-related-completed.cooked-active{display:block}.cooked-related-status{margin:0 0 12px 0;padding:8px 12px;font-size:13px;line-height:1.4;border-radius:4px;border-left:3px solid #00a878;background:#f0f9f6;color:#2d4a42;max-width:480px}#cooked-related-last-done.cooked-related-status{border-left-color:#8c9b99;background:#f6f8f7;color:#5c6b69}#cooked_recipe_settings .cooked-layout-save-default{position:relative;top:-2px;z-index:10;margin:0 0 0 15px;padding:0 8px 1px}#cooked_recipe_settings .cooked-layout-load-default{position:relative;top:-2px;z-index:10;margin:0 0 0 10px;padding:0 8px 1px}body .button.button-cooked-reset{color:#999}body .button.button-cooked-reset:hover{color:#555}#cooked_recipe_settings .cooked-ingredient-headers{display:block;padding:5px 25px 0 35px}#cooked_recipe_settings .cooked-ingredient-headers span{font-size:.7rem;font-weight:700;letter-spacing:.03rem;text-transform:uppercase;color:#0085ba;box-sizing:border-box;display:inline-block;float:left}#cooked_recipe_settings .cooked-ingredient-headers span.cooked-ingredient-header-amount{width:15%}#cooked_recipe_settings .cooked-ingredient-headers span.cooked-ingredient-header-measurement{width:20%}#cooked_recipe_settings .cooked-ingredient-headers span.cooked-ingredient-header-item{width:65%}#cooked-ingredients-builder{margin:0 0 20px}#cooked-ingredients-builder .cooked-ingredient-block{display:block;padding:5px 45px 5px 35px}#cooked-ingredients-builder .cooked-ingredient-block:hover{background:#eee}#cooked-ingredients-builder .cooked-ingredient-block input[type=number],#cooked-ingredients-builder .cooked-ingredient-block input[type=text],#cooked-ingredients-builder .cooked-ingredient-block select{margin:0;display:block;top:0}#cooked-ingredients-builder .cooked-ingredient-block>div{display:inline-block;float:left;box-sizing:border-box;padding-right:10px}#cooked-ingredients-builder .cooked-ingredient-block>div input[type=text]{width:100%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-ingredient-amount{width:15%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-ingredient-measurement{width:20%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-ingredient-measurement .cooked-select-wrapper{width:100%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-ingredient-measurement .cooked-select-wrapper select{width:100%}#cooked-ingredients-builder .cooked-ingredient-block .cooked-substitution-fields>.cooked-ingredient-measurement .cooked-select-wrapper{width:100%}#cooked-ingredients-builder .cooked-ingredient-block .cooked-substitution-fields>.cooked-ingredient-measurement .cooked-select-wrapper select{width:100%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-ingredient-name{width:65%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-heading-name{width:100%}#cooked-ingredients-builder .cooked-ingredient-block>div small.cooked-input-ex{display:block;padding:5px 0 0 2px}#cooked-ingredients-builder .cooked-ingredient-block{margin:0}#cooked-ingredients-builder .cooked-ingredient-block i.cooked-icon-drag{cursor:move;color:#ccc;font-size:32px;position:absolute;top:5px;left:1px;touch-action:none}#cooked-ingredients-builder .cooked-ingredient-block:hover i.cooked-icon-drag{color:#888}#cooked-ingredients-builder .cooked-ingredient-block.ui-sortable-helper{background:#f5f5f5;box-shadow:0 10px 20px rgba(0,0,0,.15);-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}#cooked-ingredients-builder .cooked-ingredient-block.ui-sortable-placeholder{visibility:visible!important;background:#eee;display:block;width:100%;height:43px;border-top:6px solid #fff;border-bottom:6px solid #fff}#cooked-ingredients-builder .cooked-ingredient-block .cooked-delete-ingredient{cursor:pointer;font-size:14px;position:absolute;top:14px;right:11px}#cooked-ingredients-builder .cooked-ingredient-block .cooked-delete-ingredient .cooked-icon{color:#fff}#cooked-ingredients-builder .cooked-ingredient-block:hover .cooked-delete-ingredient .cooked-icon{color:#888}#cooked-ingredients-builder .cooked-ingredient-block .cooked-delete-ingredient .cooked-icon:hover{color:#de2020}#cooked-ingredients-builder .cooked-ingredient-block.cooked-ingredient-heading{margin:10px 0}#cooked-ingredients-builder .cooked-ingredient-block.cooked-ingredient-heading>div input[type=text]{padding:0 7px;font-size:16px;background:#f9f9f9;font-weight:600}#cooked-directions-builder{margin:0 0 20px}#cooked-directions-builder .cooked-direction-block{display:block;padding:15px 25px 15px 35px}#cooked-directions-builder .cooked-direction-block.cooked-direction-heading{padding:5px 25px 5px 35px}#cooked-directions-builder .cooked-direction-block:hover{background:#f5f5f5}#cooked-directions-builder .cooked-direction-block.cooked-direction-heading:hover{background:#eee}#cooked-directions-builder .cooked-direction-block textarea{margin:0;display:block;height:191px;top:0}#cooked-directions-builder .cooked-direction-block>div{display:inline-block;float:left;box-sizing:border-box;padding-right:15px}#cooked-directions-builder .cooked-direction-block>div:last-child{padding:0}#cooked-directions-builder .cooked-direction-block>div input[type=text]{width:100%}#cooked-directions-builder .cooked-direction-block .mce-statusbar{display:none}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image{width:120px;position:absolute;top:15px;left:35px}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image img{cursor:pointer;display:none;border-radius:3px}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image .cooked-direction-img-placeholder{box-sizing:border-box;cursor:pointer;border-radius:3px;width:100%;padding-bottom:100%;background:0 0;border:2px dashed #ddd;border-radius:3px;margin-top:15px}#cooked-directions-builder .cooked-direction-block:hover>.cooked-direction-image .cooked-direction-img-placeholder{background:0 0}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image .cooked-direction-img-placeholder:hover{background:#ddd;border:2px solid #ddd}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image .direction-image-button{width:100%;text-align:center}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image .remove-image-button{display:none;position:absolute;top:43px;right:15px}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image.cooked-has-image .remove-image-button{display:inline-block;padding:10px;background:rgba(0,0,0,.25);color:#fff}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image.cooked-has-image .remove-image-button:hover{background:#ff0100}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image.cooked-has-image img{width:100%;height:auto;display:block;margin:15px 0 0}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image.cooked-has-image .cooked-direction-img-placeholder{display:none}#cooked-directions-builder .cooked-direction-block>.cooked-direction-content{width:100%;padding-left:120px}#cooked-directions-builder .cooked-direction-block .cooked-direction-number{opacity:.4;position:absolute;display:inline-block;font-weight:800;top:17px;left:35px;font-size:1.25rem;line-height:1}#cooked-directions-builder .cooked-direction-block.cooked-direction-has-number>.cooked-direction-image{left:65px}#cooked-directions-builder .cooked-direction-block.cooked-direction-has-number>.cooked-direction-content{padding-left:175px}#cooked-directions-builder .cooked-direction-block.cooked-direction-has-number-wide>.cooked-direction-content{padding-left:185px}#cooked-directions-builder .cooked-direction-block>.cooked-heading-name{width:100%}#cooked-directions-builder .cooked-direction-block{margin:0}#cooked-directions-builder .cooked-direction-block i.cooked-icon-drag{cursor:move;color:#ccc;font-size:32px;position:absolute;top:13px;left:1px;touch-action:none}#cooked-directions-builder .cooked-direction-block.cooked-direction-heading i.cooked-icon-drag{top:5px}#cooked-directions-builder .cooked-direction-block:hover i.cooked-icon-drag{color:#888}#cooked-directions-builder .cooked-direction-block.ui-sortable-helper{background:#f5f5f5;box-shadow:0 10px 20px rgba(0,0,0,.15);-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}#cooked-directions-builder .cooked-direction-block.ui-sortable-placeholder{visibility:visible!important;background:#eee;display:block;width:100%;height:221px;border-top:6px solid #fff;border-bottom:6px solid #fff}#cooked-directions-builder .cooked-direction-block.cooked-direction-heading.ui-sortable-placeholder{height:43px}#cooked-directions-builder .cooked-direction-block .cooked-delete-direction{cursor:pointer;font-size:14px;position:absolute;right:14px}#cooked-directions-builder .cooked-direction-block .cooked-delete-direction .cooked-icon{color:#fff}#cooked-directions-builder .cooked-direction-block:hover .cooked-delete-direction .cooked-icon{color:#888}#cooked-directions-builder .cooked-direction-block .cooked-delete-direction .cooked-icon:hover{color:#de2020}#cooked-directions-builder .cooked-direction-block.cooked-direction-heading{margin:10px 0}#cooked-directions-builder .cooked-direction-block.cooked-direction-heading>div input[type=text]{padding:0 7px;font-size:16px;background:#f9f9f9;font-weight:600;top:0;margin:0}#cooked-directions-builder .cooked-direction-block .cooked-delete-direction{top:16px}#cooked-directions-builder .cooked-direction-block.cooked-direction-heading .cooked-delete-direction{top:14px}#cooked-recipe-image-gallery{margin:0 -1% 0}#cooked-recipe-image-gallery .cooked-recipe-gallery-item{position:relative;overflow:hidden;cursor:move;box-sizing:border-box;display:inline-block;width:18%;height:auto;padding:0;margin:0 1% 2% 1%}#cooked-recipe-image-gallery .cooked-recipe-gallery-item:hover{opacity:.9}#cooked-recipe-image-gallery .cooked-recipe-gallery-item img{width:100%;height:auto;border-radius:3px;display:block;margin:0;padding:0;border:none}#cooked-recipe-image-gallery .cooked-recipe-gallery-item.ui-sortable-helper,#cooked-recipe-image-gallery .cooked-recipe-gallery-item.ui-sortable-helper:hover{opacity:.75;box-shadow:0 10px 20px rgba(0,0,0,.15)}#cooked-recipe-image-gallery .cooked-recipe-gallery-item.ui-sortable-placeholder{width:18%;height:auto;visibility:visible!important;border-radius:3px;background:#ddd;display:inline-block}#cooked-recipe-image-gallery .cooked-recipe-gallery-item .remove-image-button{border-radius:0 3px 0 0;display:inline-block;position:absolute;top:0;right:0;padding:10px;background:rgba(0,0,0,.25);color:#fff}#cooked-recipe-image-gallery .cooked-recipe-gallery-item .remove-image-button:hover{background:#ff0100}#cooked-recipe-image-gallery .cooked-recipe-gallery-item .cooked-gallery-edit-button{border-radius:3px 0 0 0;display:inline-block;position:absolute;top:0;left:0;padding:10px;background:rgba(0,0,0,.25);color:#fff}#cooked-recipe-image-gallery .cooked-recipe-gallery-item .cooked-gallery-edit-button:hover{background:#0084bc}#cooked-recipe-image-gallery .cooked-recipe-gallery-item .cooked-gallery-item-title{position:absolute;left:0;bottom:0;box-sizing:border-box;width:100%;border-radius:0 0 3px 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;padding:10px 10px 11px;text-align:center;background:#000;background:rgba(0,0,0,.3);color:#fff;font-size:12px}#cooked-recipe-image-gallery .cooked-recipe-gallery-item:hover .cooked-gallery-item-title{background:#000;background:rgba(0,0,0,.75)}#cooked-recipe-image-gallery .cooked-recipe-gallery-item.ui-sortable-helper{-webkit-animation:cooked-wiggle .4s infinite;-moz-animation:cooked-wiggle .4s infinite;-o-animation:cooked-wiggle .4s infinite;animation:cooked-wiggle .4s infinite}#cooked_recipe_settings label.cooked-nutrition-label{display:block;font-size:.7rem;letter-spacing:.03rem;font-weight:700;text-transform:uppercase;line-height:1;margin:0 0 7px}#cooked_recipe_settings #cooked-nutrition-label{line-height:1.6;font-size:1.1rem;border:1px solid #aaa;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;padding:5%;margin:0 0 2rem;font-family:Helvetica,Arial,sans-serif;container-name:nutrition-label;container-type:inline-size}#cooked_recipe_settings #cooked-nutrition-label h2{font-size:2.5rem;line-height:1;letter-spacing:0;font-weight:800;padding:0 0 .5rem 0;margin:0 0 .4rem;color:#333;border-bottom:1px solid #aaa}#cooked_recipe_settings #cooked-nutrition-label p.cooked-daily-value-text{padding:.5rem 0 0 0;margin:0;font-size:.9rem}#cooked_recipe_settings #cooked-nutrition-label ul.cooked-nut-servings p{font-size:1.5rem}#cooked_recipe_settings #cooked-nutrition-label ul{list-style:none;margin:0;padding:0}#cooked_recipe_settings #cooked-nutrition-label li{position:relative;margin:0;padding:0 0 3px 0;border-top:1px solid #aaa}#cooked_recipe_settings #cooked-nutrition-label li li{padding:3px 0 0;margin:3px 0 0}#cooked_recipe_settings #cooked-nutrition-label li:after{content:"";display:table;clear:both}#cooked_recipe_settings #cooked-nutrition-label li.no-after:after{content:none}#cooked_recipe_settings #cooked-nutrition-label li.cooked-nut-spacer{border:none;height:.6rem;padding:0;background:#333}#cooked_recipe_settings #cooked-nutrition-label ul li.cooked-nut-no-border,#cooked_recipe_settings #cooked-nutrition-label>ul>li:first-child{border:none}#cooked_recipe_settings #cooked-nutrition-label li ul{padding:0;margin:0 0 0 20px}#cooked_recipe_settings #cooked-nutrition-label li ul.cooked-right{margin:0}#cooked_recipe_settings #cooked-nutrition-label li ul.cooked-right li{border:none;padding:0;margin:0}#cooked_recipe_settings #cooked-nutrition-label li.cooked-calories ul.cooked-right li strong.cooked-nut-label{font-size:2.5rem;line-height:1}#cooked_recipe_settings #cooked-nutrition-label .cooked-calories{border-top:none;display:flex;justify-content:space-between;align-items:baseline;padding:0}#cooked_recipe_settings #cooked-nutrition-label .cooked-calories strong,#cooked_recipe_settings #cooked-nutrition-label .cooked-calories strong.cooked-nut-label{font-size:2rem;font-weight:800}#cooked_recipe_settings #cooked-nutrition-label ul.cooked-nut-servings li{border:none}#cooked_recipe_settings #cooked-nutrition-label ul.cooked-nut-servings{margin:0}#cooked_recipe_settings #cooked-nutrition-label .cooked-nut-hr{border:none;border-top:1.3rem solid #333;margin:.1rem 0 0;padding:0}#cooked_recipe_settings #cooked-nutrition-label strong{font-weight:800}#cooked_recipe_settings #cooked-nutrition-label .cooked-serving-size strong,#cooked_recipe_settings #cooked-nutrition-label .cooked-serving-size strong.cooked-nut-label{font-size:1.5rem;font-weight:800}#cooked_recipe_settings #cooked-nutrition-label strong.cooked-nut-heading{font-size:1rem}#cooked_recipe_settings #cooked-nutrition-label strong.cooked-nut-label{font-weight:400}#cooked_recipe_settings #cooked-nutrition-label .cooked-nut-right{float:right}#cooked_recipe_settings #cooked-nutrition-label ul.cooked-nut-bottom{margin:0 0 .75rem}#cooked_recipe_settings #cooked-nutrition-label ul.cooked-nut-bottom li{border-top:none;border-bottom:1px solid #aaa;float:left;width:100%;box-sizing:border-box}#cooked_recipe_settings .cooked-measurement-inputs .cooked-select-wrapper:before{top:8px}.cooked-auto-nutrition{display:flex;justify-content:end;margin:0 0 1rem}#cooked-tooltip-auto-nutrition-notice{margin:0}.cooked-settings-header{border-radius:10px 10px 0 0;width:auto;height:90px;line-height:85px;padding:0 30px;font-weight:600;box-sizing:border-box;background:#33373c;color:#fff;font-size:29px;letter-spacing:-.03rem}.cooked-settings-header .cooked-icon{color:#00e0a9}.cooked-settings-submit-wrap{padding:0 0 35px 35px;margin:-20px 0 0}#cooked_recipe_settings .recipe-setting-block .cooked-permalink-field-wrapper span{font-size:14px;display:inline-block;line-height:32px;padding:5px 0 0 0}#cooked_recipe_settings .recipe-setting-block input[type=text].cooked-permalink-field{position:relative;top:0;display:inline-block;width:150px;margin:0 10px}#cooked-settings-panel{position:relative;margin:0;padding:0}#cooked-settings-tabs{display:flex;width:auto;padding:0 20px 0 0;margin:0;list-style:none}#cooked-settings-tabs li{font-size:13px;line-height:1;font-weight:400;display:block;padding:0;margin:0;color:#fff}#cooked-settings-tabs li .cooked-icon{font-size:14px}#cooked-settings-tabs li .cooked-icon.cooked-icon-recipe-icon{font-size:20px;top:2px;position:relative}#cooked-settings-tabs li:hover{cursor:pointer}#cooked-settings-tabs li.active,#cooked-settings-tabs li.active:hover{cursor:default}#cooked-settings-tabs a{line-height:41px;font-size:.9rem;letter-spacing:.03rem;padding:2px 15px 4px;display:block;outline:0;box-shadow:none;border:none;white-space:nowrap}#cooked-settings-panel.stuck{padding-top:41px}#cooked-settings-panel.stuck #cooked-settings-tabs{position:fixed;width:calc(100% - 180px);top:32px;left:0;z-index:100000;margin-left:160px}#cooked-settings-panel .cooked-settings-tab-content-wrapper .cooked-settings-tab-content{display:none}#cooked-settings-panel .cooked-settings-tab-content-wrapper .cooked-settings-tab-content:first-child{display:block}#cooked-settings-panel .cooked-settings-tab-content{padding:25px 35px;margin-right:0}#cooked-settings-panel #cooked_recipe_settings .recipe-setting-block h3.cooked-settings-title{padding-bottom:.2rem}#cooked_recipe_settings .cooked-setting-column-14{position:relative;width:25%;float:left;padding-right:20px;box-sizing:border-box}#cooked_recipe_settings .cooked-setting-column-13{position:relative;width:33%;float:left;padding-right:20px;box-sizing:border-box}#cooked_recipe_settings .cooked-setting-column-23{position:relative;width:66%;float:left;padding-right:20px;box-sizing:border-box}#cooked_recipe_settings .cooked-setting-column-12{position:relative;width:50%;float:left;padding-right:20px;box-sizing:border-box}#cooked_recipe_settings .cooked-setting-column-12 input[type=text],#cooked_recipe_settings .cooked-setting-column-13 input[type=text],#cooked_recipe_settings .cooked-setting-column-14 input[type=text],#cooked_recipe_settings .cooked-setting-column-23 input[type=text],#cooked_recipe_settings .recipe-setting-block input[type=text].cooked-shortcode-field{width:95%}#cooked_recipe_settings .cooked-setting-column-12 .cooked-select-wrapper,#cooked_recipe_settings .cooked-setting-column-12 select,#cooked_recipe_settings .cooked-setting-column-13 .cooked-select-wrapper,#cooked_recipe_settings .cooked-setting-column-13 select,#cooked_recipe_settings .cooked-setting-column-14 .cooked-select-wrapper,#cooked_recipe_settings .cooked-setting-column-14 select,#cooked_recipe_settings .cooked-setting-column-23 select{width:100%}#cooked_recipe_settings .cooked-setting-column-14.cooked-tb-col{padding:0}#cooked-welcome-screen{padding:15px 50px 0 30px;position:relative}#cooked-welcome-screen .cooked-badge{position:absolute;top:0;right:0}#cooked-welcome-screen .cooked-badge img{border:none;width:150px;height:150px;display:block;margin:0}#cooked-welcome-screen .about-text{margin-bottom:40px;line-height:1.8;font-size:17px;margin-right:260px}#cooked-welcome-screen .about-wrap{margin:25px auto 0;max-width:1000px}#cooked-welcome-screen .about-wrap h1{font-size:2.25rem}#cooked-welcome-screen .about-wrap p{font-size:1rem;margin:0 0 2rem;line-height:1.7rem}#cooked-welcome-screen #cooked-welcome-panel{background:#fff;padding:30px 30px 15px 30px;-moz-border-radius:15px;-webkit-border-radius:15px;border-radius:15px;border:none;box-shadow:0 4px 4px rgba(0,0,0,.05),0 8px 8px rgba(0,0,0,.05),0 32px 32px rgba(0,0,0,.05),0 64px 64px rgba(0,0,0,.05)}#cooked-welcome-screen #cooked-welcome-panel img.cooked-welcome-banner{border:none;display:block;padding:0;margin:0 0 30px;box-sizing:border-box;border-radius:5px 5px 0 0}#cooked-welcome-screen #cooked-welcome-panel .cooked-welcome-panel-intro{text-align:center;margin:0 50px 2rem;padding:15px 0;border-bottom:1px solid #e5e5e5}#cooked-welcome-screen #cooked-welcome-panel .cooked-welcome-panel-intro h1{font-size:1.75rem;margin:0 0 1rem;padding:0}#cooked-welcome-screen #cooked-welcome-panel .cooked-welcome-panel-intro p{max-width:600px;font-size:1.1rem;line-height:1.8rem;margin:0 auto 2rem;padding:0}#cooked-welcome-screen .cooked-welcome-panel a{text-decoration:none}#cooked-welcome-screen .cooked-welcome-panel-column{display:block!important}#cooked-welcome-screen .cooked-welcome-panel-column>strong{font-size:1rem}#cooked-welcome-screen .cooked-welcome-panel-column h3{font-size:1.75rem;margin:0 0 1rem;position:relative}#cooked-welcome-screen .cooked-welcome-panel-column h3 a{position:absolute;top:0;right:0;font-size:12px;font-weight:400}#cooked-welcome-screen .cooked-welcome-panel-column h3 a i.fa{position:relative;top:1px}#cooked-welcome-screen .cooked-welcome-panel-column h4{font-size:1.25rem;margin:0 0 1rem;position:relative}#cooked-welcome-screen .cooked-welcome-panel-column h4 a{position:absolute;top:0;right:0;font-size:12px;font-weight:400}#cooked-welcome-screen .cooked-welcome-panel-column h4 a i.fa{position:relative;top:1px}#cooked-welcome-screen .cooked-welcome-panel-column.cooked-welcome-panel-full{width:100%;padding-right:0;float:none}#cooked-welcome-screen .cooked-welcome-panel-column.cooked-welcome-panel-last{width:70%;padding-right:0;float:right}#cooked-welcome-screen .cooked-welcome-panel-column .fa-external-link{color:#888}#cooked-welcome-screen .cooked-welcome-panel-content{min-height:1px;padding:10px 50px 20px;margin:0}#cooked-welcome-screen .cooked-welcome-panel .cooked-welcome-panel-column-container{display:flex;justify-content:between!important;padding:0!important;flex-wrap:wrap}#cooked-welcome-screen .cooked-welcome-panel-column{box-sizing:border-box;padding-right:2rem;width:30%}#cooked-welcome-screen .cooked-pro-features{width:85%;margin:0 auto;padding:0 0 10px;display:flex;flex-wrap:wrap}#cooked-welcome-screen ul.cooked-whatsnew-list{margin-right:0}#cooked-welcome-screen ul.cooked-whatsnew-list li{line-height:1.7;position:relative;margin-right:0;border-top:1px solid #e5e5e5;padding:8px 0 4px 0}#cooked-welcome-screen ul.cooked-whatsnew-list li:first-child{border:none;padding-top:0}#cooked-welcome-screen ul.cooked-whatsnew-list em.fix,#cooked-welcome-screen ul.cooked-whatsnew-list strong.new,#cooked-welcome-screen ul.cooked-whatsnew-list strong.tweak{position:absolute;font-style:normal;display:inline-block;background:#aaa;text-transform:uppercase;top:11px;left:0;color:#fff;font-weight:600;-moz-border-radius:3px;-webkit-border-radius:3px;text-align:center;width:38px;border-radius:3px;font-size:10px;line-height:19px;height:19px;padding:0 6px;margin:0 6px 0 0}#cooked-welcome-screen ul.cooked-whatsnew-list li:first-child em.fix,#cooked-welcome-screen ul.cooked-whatsnew-list li:first-child strong.new,#cooked-welcome-screen ul.cooked-whatsnew-list li:first-child strong.tweak{top:3px}#cooked-welcome-screen ul.cooked-whatsnew-list strong.new{background:#56c477}#cooked-welcome-screen ul.cooked-whatsnew-list strong.tweak{background:#0073aa}#cooked-welcome-screen ul.cooked-whatsnew-list em.fix{background:#ffad10}#cooked-welcome-screen ul li.cooked-pro i.cooked-icon{color:#ffad10}#cooked-welcome-screen ul li.cooked-pro a{font-weight:600;color:#ffad10}#cooked-welcome-screen ul li.cooked-pro a:hover{color:#d3910f}#cooked-welcome-screen ul.cooked-whatsnew-pro{margin-bottom:0;flex:1 0 auto;width:33.333%}#cooked-welcome-screen ul.cooked-whatsnew-pro li{padding-left:0;font-size:1.15rem;font-weight:400}#cooked-welcome-screen ul.cooked-whatsnew-pro li i.cooked-icon-star{color:#ffad10;margin:0 7px 0 0;font-size:19px;position:relative;top:1px}#cooked-welcome-screen .cooked-welcome-bottom{text-align:center;background:#f9f9f9;margin:30px -80px -15px;border-top:1px solid #f1f1f1}#cooked-welcome-screen .cooked-pro-button{display:inline-block;clear:both;text-align:center;width:auto;margin:30px auto;padding:20px 25px 21px;font-size:1.25rem;line-height:1rem;font-weight:600;color:#fff;background:#ffad10;border-radius:50px}#cooked-welcome-screen .cooked-pro-button:hover{background:#e08704}#cooked-welcome-screen .cooked-coupon-code{color:#4c5e65;display:inline-block;font-size:17px;padding:0 0 0 1.5rem}@media screen and (max-width:1050px){#cooked-welcome-screen ul.cooked-whatsnew-pro{width:100%;margin-top:0}#cooked-welcome-screen ul.cooked-whatsnew-pro:first-child{margin-top:10px}#cooked-welcome-screen ul.cooked-whatsnew-pro li:first-child{border-top:1px solid #e5e5e5;padding-top:8px}#cooked-welcome-screen ul.cooked-whatsnew-pro:first-child li:first-child{border:none;padding-top:0}}@media screen and (max-width:870px){#cooked-welcome-screen .cooked-pro-features{width:90%}#cooked-welcome-screen .cooked-welcome-panel-column{padding-right:0}#cooked-welcome-screen .cooked-welcome-panel-column.cooked-welcome-panel-last{width:100%;padding-top:20px}#cooked-welcome-screen .about-wrap{margin-top:0}#cooked-welcome-screen .cooked-welcome-panel .cooked-welcome-panel-column li{display:block}}@media screen and (max-width:782px){#cooked-welcome-screen .cooked-pro-features{width:100%}#cooked-welcome-screen{padding:15px 40px 0 30px}#cooked-welcome-screen .cooked-badge{display:none}#cooked-welcome-screen .about-text,#cooked-welcome-screen .about-wrap h1{margin-right:0}#cooked-welcome-screen .cooked-welcome-panel-column h3 a{display:block;position:relative}}@media screen and (max-width:500px){#cooked-welcome-screen #cooked-welcome-panel img.cooked-welcome-banner{display:none}#cooked-welcome-screen .about-wrap h1{font-size:1.8rem}#cooked-welcome-screen .about-text{font-size:15px}}#cooked_recipe_settings #cooked-nutrition-label .cooked-nut-label,#cooked_recipe_settings .recipe-setting-block h3.cooked-settings-title{color:#0173aa}#cooked_recipe_settings .recipe-setting-block.cooked-danger h3.cooked-settings-title{color:#d44d1f}#cooked_recipe_settings .cooked-alert-block h3.cooked-settings-title{color:#c02a2a}#cooked-recipe-tabs{background:#fff}#cooked-recipe-tabs li{background:#454b52;color:#fff;color:rgba(255,255,255,.75);border-right:1px solid rgba(0,0,0,.15)}#cooked-recipe-tabs li:hover{background:#535a62;color:#fff;border-right:1px solid rgba(0,0,0,.15)}#cooked-recipe-tabs li.active{background:#fff;color:#333;border-right:1px solid #fff}#cooked-settings-tabs{background:#454b52}#cooked-settings-tabs a{color:#fff;text-decoration:none}#cooked-settings-tabs li{background:#454b52;color:#fff;color:rgba(255,255,255,.75)}#cooked-settings-tabs li:hover{background:#535a62;color:#fff}#cooked-settings-tabs li.active{background:#fff}#cooked-settings-tabs li.active a{color:#000}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image .cooked-direction-img-placeholder,#cooked-migration-progress.cooked-progress .cooked-progress-bar,#cooked-related-progress.cooked-progress .cooked-progress-bar,#cooked_recipe_settings .cooked-select-wrapper:before,#cooked_recipe_settings .cooked-tooltip-icon,#cooked_recipe_settings select{-webkit-transition:all .15s ease-out;-moz-transition:all .15s ease-out;transition:all .15s ease-out}#cooked-recipe-image-gallery .cooked-recipe-gallery-item{-webkit-transition:transform .15s ease-out;-moz-transition:all .15s ease-out;transition:transform .15s ease-out}#cooked-recipe-tabs li.cooked-loading{-webkit-transition:opacity .15s ease-out;-moz-transition:all .15s ease-out;transition:opacity .15s ease-out}@-webkit-keyframes cooked-wiggle{0%{-webkit-transform:scale(1)}50%{-webkit-transform:scale(1.03)}100%{-webkit-transform:scale(1)}}@-moz-keyframes cooked-wiggle{0%{-moz-transform:scale(1)}50%{-moz-transform:scale(1.03)}100%{-moz-transform:scale(1)}}@-o-keyframes cooked-wiggle{0%{-o-transform:scale(1)}50%{-o-transform:scale(1.03)}100%{-o-transform:scale(1)}}@keyframes cooked-wiggle{0%{transform:scale(1)}50%{transform:scale(1.03)}100%{transform:scale(1)}}@media screen and (max-width:1150px){#cooked-recipe-tabs li{font-size:.8rem;padding:0 1.2rem 0 .7rem}#cooked-recipe-tabs li .cooked-icon{display:none}}@media screen and (max-width:960px){#cooked_recipe_settings.stuck #cooked-recipe-tabs{margin-left:36px}}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-substitution-fields{width:100%;float:left;clear:both;margin-top:10px;padding-top:10px;padding-right:0;padding-left:0;margin-left:0;box-sizing:border-box;padding-bottom:5px;position:relative}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-substitution-fields .cooked-ingredient-amount{width:15%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-substitution-fields .cooked-ingredient-measurement{width:20%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-substitution-fields .cooked-ingredient-name{width:65%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-substitution-fields .cooked-sub-label{color:#7c7c7c;font-size:14px;font-weight:300}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-substitution-fields>div{display:inline-block;float:left;box-sizing:border-box;padding-right:10px}.cooked-bulk-add-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);z-index:100100;display:flex;align-items:center;justify-content:center}.cooked-bulk-add-modal{background:#fff;border-radius:6px;width:600px;max-width:90vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 5px 30px rgba(0,0,0,.3)}.cooked-bulk-add-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #ddd}.cooked-bulk-add-header h2{margin:0;font-size:18px;line-height:1.3}.cooked-bulk-add-close{font-size:24px;text-decoration:none;color:#666;line-height:1;padding:0 4px}.cooked-bulk-add-close:hover{color:#d63638}.cooked-bulk-add-body{padding:20px;overflow-y:auto;flex:1}.cooked-bulk-add-help{margin-top:0;color:#666;font-size:13px}#cooked-bulk-add-textarea{width:100%;min-height:160px;font-size:14px;padding:10px;box-sizing:border-box;resize:vertical}.cooked-bulk-add-preview{margin-top:16px}.cooked-bulk-add-preview-label{margin:0 0 8px;font-size:13px}.cooked-bulk-add-preview-notice-ingredients{display:none;margin:10px 0 0;font-size:12px;line-height:1.45;color:#b45309;font-weight:700;gap:6px;align-items:flex-start}#cooked-bulk-add-preview[data-bulk-type=ingredients] .cooked-bulk-add-preview-notice-ingredients{display:flex}.cooked-bulk-add-preview-notice-mark{flex-shrink:0;font-weight:700;line-height:1.45;color:#b45309}.cooked-bulk-add-preview-notice-text{flex:1;min-width:0;font-weight:700;color:#b45309}.cooked-bulk-add-preview-list{max-height:200px;overflow-y:auto;border:1px solid #ddd;border-radius:4px;padding:4px}.cooked-bulk-add-preview-row{display:flex;align-items:center;gap:8px;padding:4px 6px;border-bottom:1px solid #f0f0f0}.cooked-bulk-add-preview-row:last-child{border-bottom:0}.cooked-bulk-add-heading-toggle{display:flex;align-items:center;gap:4px;white-space:nowrap;font-size:12px;color:#666;cursor:pointer;flex-shrink:0}.cooked-bulk-add-heading-toggle input[type=checkbox]{margin:0}.cooked-bulk-add-preview-text{flex:1;border:1px solid #ddd;border-radius:3px;padding:4px 8px;font-size:13px}.cooked-bulk-add-preview-row:not(.cooked-bulk-add-preview-row-ingredient).cooked-bulk-add-is-heading .cooked-bulk-add-preview-text{font-weight:700}.cooked-bulk-add-preview-row-ingredient .cooked-bulk-add-heading-line-wrap{display:none;flex:1;align-items:center;gap:8px;min-width:0}.cooked-bulk-add-preview-row-ingredient.cooked-bulk-add-is-heading .cooked-bulk-add-heading-line-wrap{display:flex}.cooked-bulk-add-preview-row-ingredient.cooked-bulk-add-is-heading .cooked-bulk-add-parsed-amount,.cooked-bulk-add-preview-row-ingredient.cooked-bulk-add-is-heading .cooked-bulk-add-parsed-name,.cooked-bulk-add-preview-row-ingredient.cooked-bulk-add-is-heading .cooked-bulk-add-parsed-unit{display:none}.cooked-bulk-add-heading-line-label{flex-shrink:0;font-size:12px;font-weight:600;color:#666}.cooked-bulk-add-preview-row-ingredient .cooked-bulk-add-heading-line-wrap .cooked-bulk-add-preview-text{flex:1;min-width:0;border:1px solid #ddd;border-radius:3px;padding:4px 8px;font-size:13px;font-weight:600}.cooked-bulk-add-preview-header{display:flex;align-items:center;gap:8px;padding:4px 6px 6px;border-bottom:1px solid #ddd;font-size:11px;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.5px}.cooked-bulk-add-col-heading{flex-shrink:0;width:108px}.cooked-bulk-add-col-amount{width:72px;flex-shrink:0}.cooked-bulk-add-col-unit{width:108px;flex-shrink:0}.cooked-bulk-add-col-name{flex:1}.cooked-bulk-add-parsed-amount{width:72px;flex-shrink:0;border:1px solid #ddd;border-radius:3px;padding:4px 6px;font-size:13px;text-align:center}.cooked-bulk-add-parsed-unit{width:108px;flex-shrink:0;border:1px solid #ddd;border-radius:3px;padding:4px 6px;font-size:13px}.cooked-bulk-add-parsed-name{flex:1;border:1px solid #ddd;border-radius:3px;padding:4px 6px;font-size:13px}.cooked-bulk-add-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid #ddd}.cooked-bulk-add-footer .button,.cooked-bulk-add-footer .button.button-primary{float:none;margin:0;vertical-align:middle}.cooked-bulk-add-spinner{float:none!important;margin:0!important}#cooked_allergens .cooked-allergens-checkboxes{display:flex;flex-direction:column;gap:8px}#cooked_allergens .cooked-allergen-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer}#cooked_allergens .cooked-allergen-checkbox input[type=checkbox]{margin:0}#cooked_allergens .cooked-allergen{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}#cooked_allergens .cooked-allergen .cooked-icon{font-size:1.5rem;line-height:1}#cooked_allergens .cooked-allergen,#cooked_allergens .cooked-allergen .cooked-icon{color:rgba(0,0,0,.4)}#cooked_allergens .cooked-allergen-label{font-size:13px;color:#333} \ No newline at end of file +.cooked-clearfix:after{content:"";display:table;clear:both}#post-body-content #postdivrich{display:none}body.post-type-cp_recipe .wp-list-table tfoot th.check-column,body.post-type-cp_recipe .wp-list-table thead th.check-column{padding:15px 0 0 7px}body.post-type-cp_recipe .wp-list-table tfoot td,body.post-type-cp_recipe .wp-list-table tfoot th,body.post-type-cp_recipe .wp-list-table thead td,body.post-type-cp_recipe .wp-list-table thead th{padding:10px 10px}body.post-type-cp_recipe .wp-list-table tfoot th.sortable a,body.post-type-cp_recipe .wp-list-table tfoot th.sorted a,body.post-type-cp_recipe .wp-list-table thead th.sortable a,body.post-type-cp_recipe .wp-list-table thead th.sorted a{padding-left:0;padding-right:0}body.post-type-cp_recipe .wp-list-table tbody th.check-column{padding:15px 0 0 10px}body.post-type-cp_recipe .wp-list-table tbody td,body.post-type-cp_recipe .wp-list-table tbody th{padding:12px 10px}body.post-type-cp_recipe .wp-list-table tbody td.column-title strong{margin-top:6px}body.post-type-cp_recipe .wp-list-table tbody td.column-title strong .row-title{padding-top:10px;font-size:1rem!important}th.column-featured_image{width:50px;text-align:center}td.column-featured_image{width:50px;text-align:center}.cooked-admin-recipes-list-image img{width:49px;height:auto;border-radius:3px;position:relative;top:3px}body.post-type-cp_recipe #titlediv #title{box-shadow:none;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;padding:0 12px;font-weight:400;font-size:19px;letter-spacing:0;height:44px}body.post-type-cp_recipe #titlediv #title-prompt-text{font-size:15px;color:#888;font-weight:400;letter-spacing:0;padding:12px 15px}body.post-type-cp_recipe .mce-fullscreen{z-index:100100!important}#cooked-settings-prewrap{display:flex;justify-content:center}#cooked-settings-wrap{position:relative;border-radius:10px;margin:40px 40px 40px 20px;max-width:1200px;min-width:1000px;background:#fff;box-shadow:0 4px 4px rgba(0,0,0,.05),0 8px 8px rgba(0,0,0,.05),0 32px 32px rgba(0,0,0,.05),0 64px 64px rgba(0,0,0,.05)}#cooked-settings-wrap.is-stuck{position:static!important}#cooked-settings-wrap .cooked-settings-update-button{position:absolute;top:30px;right:30px}#cooked-settings-wrap .cooked-settings-update-button>.button-primary{box-shadow:none;border:none}#cooked-settings-wrap.is-stuck .cooked-settings-update-button{position:fixed;top:35px;right:11px;z-index:100001}#cooked-recipe-tabs{list-style:none;padding:0;margin:0;position:absolute;top:0;left:0;width:100%}#cooked-recipe-tabs li{font-size:.9rem;line-height:3rem;height:3rem;font-weight:500;display:inline-block;padding:0 1.25rem;margin:0;color:#fff}#cooked-recipe-tabs li:hover{cursor:pointer}#cooked-recipe-tabs li.active,#cooked-recipe-tabs li.active:hover{cursor:default}#cooked-recipe-tabs li:last-child{border-right:none!important}#cooked-recipe-tabs li.cooked-loading{opacity:0;background:0 0;color:#fff;position:absolute;top:0;right:0;cursor:default;font-size:14px;width:40px;height:40px;text-align:center;display:block;line-height:40px;padding:0}#cooked-recipe-tabs li.cooked-loading:hover{background:0 0;color:#fff}#cooked_recipe_settings.cooked-loading #cooked-recipe-tabs li.cooked-loading{opacity:1}#cooked_recipe_settings .inside{padding-top:60px;margin:0}#cooked_recipe_settings.stuck #cooked-recipe-tabs{position:fixed;width:auto;top:32px;left:23px;z-index:100000;margin-left:160px;box-shadow:0 3px 50px rgba(0,0,0,.25)}#cooked_recipe_settings.stuck #cooked-recipe-tabs li.cooked-loading{right:160px}.cooked-recipe-tab-content-wrapper .cooked-recipe-tab-content{display:none}.cooked-recipe-tab-content-wrapper .cooked-recipe-tab-content:first-child{display:block}.cooked-left{float:left;display:inline-block;width:auto}.cooked-right{float:right;display:inline-block;width:auto}#cooked_field--cooked_pro_license_key{font-family:monospace}#cooked_recipe_settings .cooked-bm-5{margin-bottom:5px!important}#cooked_recipe_settings .cooked-bm-10{margin-bottom:10px!important}#cooked_recipe_settings .cooked-tm-10{margin-top:10px!important}#cooked_recipe_settings .cooked-bm-15{margin-bottom:15px!important}#cooked_recipe_settings .cooked-bm-20{margin-bottom:20px!important}#cooked_recipe_settings .cooked-bm-30{margin-bottom:30px!important}#cooked_recipe_settings .cooked-bm-5-up{margin-bottom:-5px!important}#cooked_recipe_settings .cooked-bm-10-up{margin-bottom:-10px!important}#cooked_recipe_settings .cooked-bm-15-up{margin-bottom:-15px!important}#cooked_recipe_settings .cooked-bm-20-up{margin-bottom:-20px!important}#cooked_recipe_settings .cooked-bm-30-up{margin-bottom:-30px!important}#cooked_recipe_settings .cooked-hr{border:none;border-top:2px solid #ddd;margin:10px 0 0 0;padding:15px 0 0 0}#cooked_recipe_settings .cooked-conditional-hidden{display:none}#cooked_recipe_settings .cooked-recipe-tab-content{padding:23px 30px 15px 30px}#cooked_recipe_settings .recipe-setting-block{margin:0 0 20px;width:100%}#cooked_recipe_settings .recipe-setting-block p{font-size:.9rem;line-height:1.5rem;margin:0 0 1rem;padding:0}#cooked_recipe_settings .recipe-setting-block p.cooked-padded{line-height:1.75rem;font-size:.85rem}#cooked_recipe_settings .recipe-setting-block .cooked-conditional-hidden{padding:0}#cooked_recipe_settings textarea{width:100%;height:75px;padding:15px;box-sizing:border-box;position:relative;top:5px}#cooked_recipe_settings .recipe-setting-block>label.cooked-select-label{top:5px}#cooked_recipe_settings select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-shadow:none;border-radius:3px;padding:0 45px 0 9px;line-height:31px;height:33px;box-sizing:border-box;background:#fff}#cooked_recipe_settings .cooked-select-wrapper{background:#fff;position:relative;width:auto;display:inline-block;border-radius:3px;margin:0 5px 0 0}#cooked_recipe_settings .cooked-select-wrapper select{margin:0;background:0 0;position:relative}#cooked_recipe_settings .cooked-select-wrapper:before{font-family:CookedIcons;display:block;width:15px;height:15px;line-height:14px;color:#000;font-size:14px;content:"\f00b";position:absolute;right:12px;top:11px;color:rgba(0,0,0,.3)}#cooked_recipe_settings .cooked-select-wrapper:hover:before{color:#000}#cooked_recipe_settings .cooked-select-wrapper:hover select{border-color:#ccc}#cooked_recipe_settings .cooked-checkbox-radio-label{position:relative;left:1px}#cooked_recipe_settings .recipe-setting-block input[type=checkbox],#cooked_recipe_settings .recipe-setting-block input[type=radio]{margin-top:0}#cooked_recipe_settings .recipe-setting-block input[type=number]{width:65px}#cooked_recipe_settings .recipe-setting-block input[type=password],#cooked_recipe_settings .recipe-setting-block input[type=text]{width:75%}#cooked_recipe_settings .recipe-setting-block input[type=number],#cooked_recipe_settings .recipe-setting-block input[type=password],#cooked_recipe_settings .recipe-setting-block input[type=text]{margin:0 6px 5px 0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;height:33px;box-shadow:none;position:relative;top:2px;padding:0 10px}#cooked_recipe_settings .recipe-setting-block p.cooked-measurement-inputs .cooked-measurement-column{width:43%;margin-right:3%;display:inline-block}#cooked_recipe_settings .recipe-setting-block p.cooked-measurement-inputs .cooked-select-wrapper,#cooked_recipe_settings .recipe-setting-block p.cooked-measurement-inputs input,#cooked_recipe_settings .recipe-setting-block p.cooked-measurement-inputs label{width:100%;display:block}#cooked_recipe_settings .recipe-setting-block p.cooked-measurement-inputs .cooked-select-wrapper select{width:100%}#cooked_recipe_settings .recipe-setting-block input[type=number],#cooked_recipe_settings .recipe-setting-block input[type=password].cooked-small-textfield,#cooked_recipe_settings .recipe-setting-block input[type=text].cooked-small-textfield{width:150px}#cooked_recipe_settings small{display:block;line-height:1.5;font-size:12px;color:#888;padding:10px 0 0}#cooked_recipe_settings .recipe-setting-block em{color:#aaa}#cooked_recipe_settings .recipe-setting-block,#cooked_recipe_settings .recipe-setting-block .cooked-repositioned{display:block;position:relative;box-sizing:border-box;line-height:1}#cooked_recipe_settings .recipe-setting-block .cooked-repositioned{padding-left:157px}#cooked_recipe_settings .recipe-setting-block h3.cooked-settings-title{width:70%;position:relative;z-index:2;padding:.5rem 0 .5rem;margin:0;font-size:1rem;line-height:1.5rem;font-weight:600}#cooked_recipe_settings .recipe-setting-block strong.cooked-heading{font-size:14px}#cooked_recipe_settings .recipe-setting-block .cooked-repositioned>label{position:absolute;top:1px;left:0;width:147px;cursor:default;font-weight:600}#cooked_recipe_settings .recipe-setting-block .cooked-tooltip-icon{color:#aaa;cursor:help;display:inline-block;margin-left:10px}#cooked_recipe_settings .recipe-setting-block .cooked-tooltip-icon:hover{color:#eee}#cooked_recipe_settings .recipe-setting-block .cooked-repositioned>.cooked-checkbox-radio-label{top:7px}#cooked_recipe_settings .recipe-setting-block .cooked-repositioned>label{top:auto;height:33px;line-height:30px;padding:0;width:130px}#cooked_recipe_settings .recipe-setting-block .cooked-repositioned:first-child label:first-child{padding-top:12px;margin-top:-12px}#cooked_recipe_settings .recipe-setting-block .cooked-repositioned span.cooked-padded{padding:0 0 15px;display:block;line-height:1.9}#cooked_recipe_settings .recipe-setting-block .wp-picker-container .cooked-color-field.wp-color-picker{padding:5px;height:25px;top:0;margin:0;width:74px;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;border:1px solid #ccc}#cooked_recipe_settings .recipe-setting-block input[type=text].cooked-shortcode-field{font-family:monospace;background:#f5f5f5;font-size:12px}#cooked_recipe_settings .cooked-banner-block{margin:30px -30px -17px;display:block;box-sizing:content-box;padding:10px 30px 15px;background:#f9f9f9;width:100%;border-top:1px solid #e5e5e5}#cooked_recipe_settings .cooked-advanced-options-hr{border:none;border-bottom:1px solid #ddd;height:1px;padding:10px 0 0 0;margin:0 0 20px}#cooked_recipe_settings .recipe-setting-block input.cooked-time-picker{top:0;width:100%;padding-right:70%;margin:0 0 3px}#cooked_recipe_settings .recipe-setting-block .cooked-time-picker-text{position:absolute;bottom:13px;right:40px;color:#888}#cooked_recipe_settings .cooked-alert-block{background:#fffbdc;-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;margin:10px 0 15px;padding:10px 22px 2px;border:2px solid #ece8c4}#cooked_recipe_settings .recipe-setting-block.cooked-template{display:none}#cooked_recipe_settings ul.cooked-admin-ul{font-size:.9rem;margin:0 0 1rem 2rem;list-style:disc}#cooked_recipe_settings ul.cooked-admin-ul li{font-size:.9rem;padding:0;margin:0 0 .5rem}#cooked_recipe_settings .cooked-html-block{background:#fff;width:auto;min-width:300px;display:inline-block;padding:.5rem 1.3rem .25rem;border-radius:3px;box-shadow:0 1px 3px rgba(0,0,0,.15)}#cooked_recipe_settings .recipe-setting-block .cooked-html-block h3.cooked-settings-title{width:100%;color:#333}#cooked_recipe_settings .recipe-setting-block .cooked-html-block.valid{background:#fff;border:2px solid #0aa780;box-shadow:none;border-radius:5px}#cooked_recipe_settings .recipe-setting-block .cooked-html-block.valid>.cooked-settings-title{color:#0aa780}#cooked_recipe_settings .recipe-setting-block .cooked-html-block.expired{border:2px solid #ca4a20}#cooked-directions-builder .cooked-direction-block.cooked-expanded>.cooked-heading-name,#cooked-directions-builder .cooked-direction-block.cooked-has-heading-element>.cooked-heading-name,#cooked-directions-builder .cooked-direction-block:hover>.cooked-heading-name,#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded>.cooked-heading-name,#cooked-ingredients-builder .cooked-ingredient-block.cooked-has-heading-element>.cooked-heading-name,#cooked-ingredients-builder .cooked-ingredient-block:hover>.cooked-heading-name{padding-right:32px}#cooked-directions-builder .cooked-direction-block .cooked-show-heading-element,#cooked-ingredients-builder .cooked-ingredient-block .cooked-show-heading-element{opacity:0;cursor:pointer;font-size:14px;position:absolute;top:14px;right:35px}#cooked-directions-builder .cooked-direction-block .cooked-show-heading-element .cooked-icon,#cooked-ingredients-builder .cooked-ingredient-block .cooked-show-heading-element .cooked-icon{color:#888}#cooked-directions-builder .cooked-direction-block.cooked-expanded .cooked-show-heading-element,#cooked-directions-builder .cooked-direction-block.cooked-has-heading-element .cooked-show-heading-element,#cooked-directions-builder .cooked-direction-block:hover .cooked-show-heading-element,#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded .cooked-show-heading-element,#cooked-ingredients-builder .cooked-ingredient-block.cooked-has-heading-element .cooked-show-heading-element,#cooked-ingredients-builder .cooked-ingredient-block:hover .cooked-show-heading-element{opacity:1}#cooked-directions-builder .cooked-direction-block .cooked-show-heading-element .cooked-icon:hover,#cooked-directions-builder .cooked-direction-block.cooked-expanded .cooked-show-heading-element .cooked-icon,#cooked-directions-builder .cooked-direction-block.cooked-has-heading-element .cooked-show-heading-element .cooked-icon,#cooked-ingredients-builder .cooked-ingredient-block .cooked-show-heading-element .cooked-icon:hover,#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded .cooked-show-heading-element .cooked-icon,#cooked-ingredients-builder .cooked-ingredient-block.cooked-has-heading-element .cooked-show-heading-element .cooked-icon{color:#0685ba}#cooked-directions-builder .cooked-direction-block>.cooked-heading-element,#cooked-ingredients-builder .cooked-ingredient-block>.cooked-heading-element{display:none;width:65%;float:right;margin-top:4px;padding-right:32px}#cooked-directions-builder .cooked-direction-block>.cooked-heading-element select,#cooked-ingredients-builder .cooked-ingredient-block>.cooked-heading-element select{color:#0685ba;width:100%}#cooked-directions-builder .cooked-direction-block>.cooked-heading-element label,#cooked-ingredients-builder .cooked-ingredient-block>.cooked-heading-element label{font-weight:600}#cooked-directions-builder .cooked-direction-block.cooked-expanded>.cooked-heading-element,#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded>.cooked-heading-element{display:block}#cooked-ingredients-builder .cooked-ingredient-block .cooked-show-substitution{opacity:0;cursor:pointer;font-size:14px;position:absolute;top:15px;right:58px}#cooked-ingredients-builder .cooked-ingredient-block .cooked-show-substitution .cooked-icon{color:#888}#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded .cooked-show-substitution,#cooked-ingredients-builder .cooked-ingredient-block.cooked-has-substitution .cooked-show-substitution,#cooked-ingredients-builder .cooked-ingredient-block:hover .cooked-show-substitution{opacity:1;right:50px}#cooked-ingredients-builder .cooked-ingredient-block .cooked-show-substitution .cooked-icon:hover,#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded .cooked-show-substitution .cooked-icon,#cooked-ingredients-builder .cooked-ingredient-block.cooked-has-substitution .cooked-show-substitution .cooked-icon{color:#0685ba}#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded>.cooked-ingredient-name,#cooked-ingredients-builder .cooked-ingredient-block.cooked-has-substitution>.cooked-ingredient-name,#cooked-ingredients-builder .cooked-ingredient-block:hover>.cooked-ingredient-name{padding-right:32px}#cooked_recipe_settings .switchery-small,body.post-type-cp_recipe .switchery-small{height:1rem;width:1.75rem;border-radius:1rem;margin-right:.4rem}#cooked_recipe_settings .switchery-small>small,body.post-type-cp_recipe .switchery-small>small{width:1rem;height:1rem;padding:0}.cooked-tooltip-buttons .cooked-icon-spin{margin-top:10px;font-size:15px}.cooked-tooltip-buttons .cooked-saved-default{height:28px;line-height:28px;font-weight:700;font-size:15px;color:#888}.cooked-progress{display:none;position:relative;background:#eee;width:100%;height:6px;padding:0;border-radius:3px;margin:10px 0 0 0}.cooked-progress-text{display:none;font-size:10px;color:#aaa;padding:2px 0 5px}.cooked-progress-text.cooked-active,.cooked-progress.cooked-active{display:block}.cooked-progress .cooked-progress-bar{display:block;position:absolute;background:#0085ba;width:0%;height:6px;top:0;left:0;border-radius:3px}#cooked-import-progress.cooked-progress,#cooked-migration-progress.cooked-progress{background:#ccc;margin:25px 0 0 0;border-radius:6px;height:12px;max-width:600px}#cooked-import-progress.cooked-progress .cooked-progress-bar,#cooked-migration-progress.cooked-progress .cooked-progress-bar{border-radius:6px;height:12px}#cooked-import-progress-text.cooked-progress-text,#cooked-migration-progress-text.cooked-progress-text{font-size:11px;color:#888;max-width:600px}#cooked-import-completed,#cooked-migration-completed{display:none}#cooked-import-completed.cooked-active,#cooked-migration-completed.cooked-active{display:block}#cooked-csv-import-progress.cooked-progress{background:#ccc;margin:25px 0 0 0;border-radius:6px;height:12px;max-width:600px}#cooked-csv-import-progress.cooked-progress .cooked-progress-bar{border-radius:6px;height:12px}#cooked-csv-import-progress-text.cooked-progress-text{font-size:11px;color:#888;max-width:600px}#cooked-csv-import-completed{display:none}#cooked-csv-import-completed.cooked-active{display:block}#cooked-csv-import-form{max-width:100%;box-sizing:border-box}#cooked-csv-import-form input[type=file]{max-width:100%;box-sizing:border-box;width:100%}#cooked-csv-import-errors{max-width:100%;box-sizing:border-box;word-wrap:break-word}#cooked-import-progress.cooked-progress,#cooked-migration-progress.cooked-progress,#cooked-related-progress.cooked-progress{background:#ccc;margin:25px 0 0 0;border-radius:6px;height:12px;max-width:600px}#cooked-import-progress.cooked-progress .cooked-progress-bar,#cooked-migration-progress.cooked-progress .cooked-progress-bar,#cooked-related-progress.cooked-progress .cooked-progress-bar{border-radius:6px;height:12px}#cooked-import-progress-text.cooked-progress-text,#cooked-migration-progress-text.cooked-progress-text,#cooked-related-progress-text.cooked-progress-text{font-size:11px;color:#888;max-width:600px}#cooked-import-completed,#cooked-migration-completed,#cooked-related-completed{display:none}#cooked-import-completed.cooked-active,#cooked-migration-completed.cooked-active,#cooked-related-completed.cooked-active{display:block}.cooked-related-status{margin:0 0 12px 0;padding:8px 12px;font-size:13px;line-height:1.4;border-radius:4px;border-left:3px solid #00a878;background:#f0f9f6;color:#2d4a42;max-width:480px}#cooked-related-last-done.cooked-related-status{border-left-color:#8c9b99;background:#f6f8f7;color:#5c6b69}#cooked_recipe_settings .cooked-layout-save-default{position:relative;top:-2px;z-index:10;margin:0 0 0 15px;padding:0 8px 1px}#cooked_recipe_settings .cooked-layout-load-default{position:relative;top:-2px;z-index:10;margin:0 0 0 10px;padding:0 8px 1px}body .button.button-cooked-reset{color:#999}body .button.button-cooked-reset:hover{color:#555}#cooked_recipe_settings .cooked-ingredient-headers{display:block;padding:5px 25px 0 35px}#cooked_recipe_settings .cooked-ingredient-headers span{font-size:.7rem;font-weight:700;letter-spacing:.03rem;text-transform:uppercase;color:#0085ba;box-sizing:border-box;display:inline-block;float:left}#cooked_recipe_settings .cooked-ingredient-headers span.cooked-ingredient-header-amount{width:15%}#cooked_recipe_settings .cooked-ingredient-headers span.cooked-ingredient-header-measurement{width:20%}#cooked_recipe_settings .cooked-ingredient-headers span.cooked-ingredient-header-item{width:65%}#cooked-ingredients-builder{margin:0 0 20px}#cooked-ingredients-builder .cooked-ingredient-block{display:block;padding:5px 45px 5px 35px}#cooked-ingredients-builder .cooked-ingredient-block:hover{background:#eee}#cooked-ingredients-builder .cooked-ingredient-block input[type=number],#cooked-ingredients-builder .cooked-ingredient-block input[type=text],#cooked-ingredients-builder .cooked-ingredient-block select{margin:0;display:block;top:0}#cooked-ingredients-builder .cooked-ingredient-block>div{display:inline-block;float:left;box-sizing:border-box;padding-right:10px}#cooked-ingredients-builder .cooked-ingredient-block>div input[type=text]{width:100%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-ingredient-amount{width:15%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-ingredient-measurement{width:20%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-ingredient-measurement .cooked-select-wrapper{width:100%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-ingredient-measurement .cooked-select-wrapper select{width:100%}#cooked-ingredients-builder .cooked-ingredient-block .cooked-substitution-fields>.cooked-ingredient-measurement .cooked-select-wrapper{width:100%}#cooked-ingredients-builder .cooked-ingredient-block .cooked-substitution-fields>.cooked-ingredient-measurement .cooked-select-wrapper select{width:100%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-ingredient-name{width:65%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-heading-name{width:100%}#cooked-ingredients-builder .cooked-ingredient-block>div small.cooked-input-ex{display:block;padding:5px 0 0 2px}#cooked-ingredients-builder .cooked-ingredient-block{margin:0}#cooked-ingredients-builder .cooked-ingredient-block i.cooked-icon-drag{cursor:move;color:#ccc;font-size:32px;position:absolute;top:5px;left:1px;touch-action:none}#cooked-ingredients-builder .cooked-ingredient-block:hover i.cooked-icon-drag{color:#888}#cooked-ingredients-builder .cooked-ingredient-block.ui-sortable-helper{background:#f5f5f5;box-shadow:0 10px 20px rgba(0,0,0,.15);-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}#cooked-ingredients-builder .cooked-ingredient-block.ui-sortable-placeholder{visibility:visible!important;background:#eee;display:block;width:100%;height:43px;border-top:6px solid #fff;border-bottom:6px solid #fff}#cooked-ingredients-builder .cooked-ingredient-block .cooked-delete-ingredient{cursor:pointer;font-size:14px;position:absolute;top:14px;right:11px}#cooked-ingredients-builder .cooked-ingredient-block .cooked-delete-ingredient .cooked-icon{color:#fff}#cooked-ingredients-builder .cooked-ingredient-block:hover .cooked-delete-ingredient .cooked-icon{color:#888}#cooked-ingredients-builder .cooked-ingredient-block .cooked-delete-ingredient .cooked-icon:hover{color:#de2020}#cooked-ingredients-builder .cooked-ingredient-block.cooked-ingredient-heading{margin:10px 0}#cooked-ingredients-builder .cooked-ingredient-block.cooked-ingredient-heading>div input[type=text]{padding:0 7px;font-size:16px;background:#f9f9f9;font-weight:600}#cooked-directions-builder{margin:0 0 20px}#cooked-directions-builder .cooked-direction-block{display:block;padding:15px 25px 15px 35px}#cooked-directions-builder .cooked-direction-block.cooked-direction-heading{padding:5px 25px 5px 35px}#cooked-directions-builder .cooked-direction-block:hover{background:#f5f5f5}#cooked-directions-builder .cooked-direction-block.cooked-direction-heading:hover{background:#eee}#cooked-directions-builder .cooked-direction-block textarea{margin:0;display:block;height:250px;top:0}#cooked-directions-builder .cooked-direction-block>div{display:inline-block;float:left;box-sizing:border-box;padding-right:15px}#cooked-directions-builder .cooked-direction-block>div:last-child{padding:0}#cooked-directions-builder .cooked-direction-block>div input[type=text]{width:100%}#cooked-directions-builder .cooked-direction-block .mce-statusbar{display:none}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image{width:135px;position:absolute;top:15px;left:35px}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image img{cursor:pointer;display:none;border-radius:3px}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image .cooked-direction-img-placeholder{box-sizing:border-box;cursor:pointer;border-radius:3px;width:100%;padding-bottom:100%;background:0 0;border:2px dashed #ddd;border-radius:3px;margin-top:15px}#cooked-directions-builder .cooked-direction-block:hover>.cooked-direction-image .cooked-direction-img-placeholder{background:0 0}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image .cooked-direction-img-placeholder:hover{background:#ddd;border:2px solid #ddd}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image .direction-image-button{width:100%;text-align:center}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image .remove-image-button{display:none;position:absolute;top:43px;right:15px}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image.cooked-has-image .remove-image-button{display:inline-block;padding:10px;background:rgba(0,0,0,.25);color:#fff}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image.cooked-has-image .remove-image-button:hover{background:#ff0100}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image.cooked-has-image img{width:100%;height:auto;display:block;margin:15px 0 0}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image.cooked-has-image .cooked-direction-img-placeholder{display:none}#cooked-directions-builder .cooked-direction-block>.cooked-direction-content{width:100%;padding-left:175px;padding-right:175px}#cooked-directions-builder .cooked-direction-block .cooked-direction-number{opacity:.4;position:absolute;display:inline-block;font-weight:800;top:17px;left:35px;font-size:1.25rem;line-height:1}#cooked-directions-builder .cooked-direction-block.cooked-direction-has-number>.cooked-direction-image{left:65px}#cooked-directions-builder .cooked-direction-block.cooked-direction-has-number>.cooked-direction-content{padding-left:175px;padding-right:175px}#cooked-directions-builder .cooked-direction-block.cooked-direction-has-number-wide>.cooked-direction-content{padding-left:185px;padding-right:175px}#cooked-directions-builder .cooked-direction-block>.cooked-heading-name{width:100%}#cooked-directions-builder .cooked-direction-block{margin:0}#cooked-directions-builder .cooked-direction-block i.cooked-icon-drag{cursor:move;color:#ccc;font-size:32px;position:absolute;top:13px;left:1px;touch-action:none}#cooked-directions-builder .cooked-direction-block.cooked-direction-heading i.cooked-icon-drag{top:5px}#cooked-directions-builder .cooked-direction-block:hover i.cooked-icon-drag{color:#888}#cooked-directions-builder .cooked-direction-block.ui-sortable-helper{background:#f5f5f5;box-shadow:0 10px 20px rgba(0,0,0,.15);-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}#cooked-directions-builder .cooked-direction-block.ui-sortable-placeholder{visibility:visible!important;background:#eee;display:block;width:100%;height:280px;border-top:6px solid #fff;border-bottom:6px solid #fff}#cooked-directions-builder .cooked-direction-block.cooked-direction-heading.ui-sortable-placeholder{height:43px}#cooked-directions-builder .cooked-direction-block .cooked-delete-direction{cursor:pointer;font-size:14px;position:absolute;right:14px}#cooked-directions-builder .cooked-direction-block .cooked-delete-direction .cooked-icon{color:#fff}#cooked-directions-builder .cooked-direction-block:hover .cooked-delete-direction .cooked-icon{color:#888}#cooked-directions-builder .cooked-direction-block .cooked-delete-direction .cooked-icon:hover{color:#de2020}#cooked-directions-builder .cooked-direction-block>.cooked-direction-video{width:135px;position:absolute;top:15px;right:25px}#cooked-directions-builder .cooked-direction-block.cooked-direction-heading{margin:10px 0}#cooked-directions-builder .cooked-direction-block.cooked-direction-heading>div input[type=text]{padding:0 7px;font-size:16px;background:#f9f9f9;font-weight:600;top:0;margin:0}#cooked-directions-builder .cooked-direction-block .cooked-delete-direction{top:16px}#cooked-directions-builder .cooked-direction-block.cooked-direction-heading .cooked-delete-direction{top:14px}.cooked-settings-image-field{position:relative;display:inline-block;max-width:150px}.cooked-settings-image-field .cooked-settings-image-preview-img{display:none;width:100%;height:auto;margin:10px 0 0;border-radius:3px}.cooked-settings-image-field .cooked-settings-image-remove{display:none;position:absolute;top:50px;right:0;padding:10px;background:rgba(0,0,0,.25);color:#fff;border-radius:3px}.cooked-settings-image-field.cooked-has-image .cooked-settings-image-remove{display:inline-block}.cooked-settings-image-field.cooked-has-image .cooked-settings-image-remove:hover{background:#ff0100}.cooked-settings-image-field.cooked-has-image .cooked-settings-image-preview-img{display:block}#cooked-directions-builder .cooked-direction-block>.cooked-direction-video .cooked-direction-video-preview{display:none;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:3px;cursor:pointer}#cooked-directions-builder .cooked-direction-block>.cooked-direction-video .cooked-direction-video-placeholder{box-sizing:border-box;cursor:pointer;border-radius:3px;width:100%;padding-bottom:100%;background:0 0;border:2px dashed #ddd;margin-top:15px}#cooked-directions-builder .cooked-direction-block>.cooked-direction-video .cooked-direction-video-placeholder:hover{background:#ddd;border:2px solid #ddd}#cooked-directions-builder .cooked-direction-block>.cooked-direction-video .direction-video-button{width:100%;text-align:center}#cooked-directions-builder .cooked-direction-block>.cooked-direction-video.cooked-has-video .cooked-direction-video-placeholder{display:none}#cooked-directions-builder .cooked-direction-block>.cooked-direction-video.cooked-has-video .cooked-direction-video-preview{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;margin-top:15px}#cooked-directions-builder .cooked-direction-block>.cooked-direction-video .remove-video-button{display:none;position:absolute;top:43px;right:15px}#cooked-directions-builder .cooked-direction-block>.cooked-direction-video.cooked-has-video .remove-video-button{display:inline-block;padding:10px;background:rgba(0,0,0,.25);color:#fff}#cooked-directions-builder .cooked-direction-block>.cooked-direction-video.cooked-has-video .remove-video-button:hover{background:#ff0100}@media screen and (max-width:1440px){#cooked-directions-builder .cooked-direction-block:not(.cooked-direction-heading){display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"content content" "image video";gap:10px;padding:15px 0 15px 0}#cooked-directions-builder .cooked-direction-block:not(.cooked-direction-heading)>.cooked-direction-content{grid-area:content;padding:14px 14px 0 14px!important;min-height:80px}#cooked-directions-builder .cooked-direction-block:not(.cooked-direction-heading)>.cooked-direction-image{grid-area:image;position:relative;width:auto;left:auto;top:auto;padding-left:15px;padding-right:0}#cooked-directions-builder .cooked-direction-block:not(.cooked-direction-heading)>.cooked-direction-video{grid-area:video;position:relative;width:auto;right:auto;top:auto}#cooked_recipe_settings .cooked-recipe-tab-content{padding:0 0 15px 0}#cooked-recipe-tabs{white-space:nowrap;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;top:0;width:100%}#cooked-recipe-tabs::-webkit-scrollbar{display:none}#cooked-recipe-tabs li{float:none}#cooked_recipe_settings.stuck #cooked-recipe-tabs{position:fixed;top:32px;left:0;width:100%;margin-left:0}}#cooked-recipe-image-gallery{margin:0 -1% 0}#cooked-recipe-image-gallery .cooked-recipe-gallery-item{position:relative;overflow:hidden;cursor:move;box-sizing:border-box;display:inline-block;width:18%;height:auto;padding:0;margin:0 1% 2% 1%}#cooked-recipe-image-gallery .cooked-recipe-gallery-item:hover{opacity:.9}#cooked-recipe-image-gallery .cooked-recipe-gallery-item img{width:100%;height:auto;border-radius:3px;display:block;margin:0;padding:0;border:none}#cooked-recipe-image-gallery .cooked-recipe-gallery-item.ui-sortable-helper,#cooked-recipe-image-gallery .cooked-recipe-gallery-item.ui-sortable-helper:hover{opacity:.75;box-shadow:0 10px 20px rgba(0,0,0,.15)}#cooked-recipe-image-gallery .cooked-recipe-gallery-item.ui-sortable-placeholder{width:18%;height:auto;visibility:visible!important;border-radius:3px;background:#ddd;display:inline-block}#cooked-recipe-image-gallery .cooked-recipe-gallery-item .remove-image-button{border-radius:0 3px 0 0;display:inline-block;position:absolute;top:0;right:0;padding:10px;background:rgba(0,0,0,.25);color:#fff}#cooked-recipe-image-gallery .cooked-recipe-gallery-item .remove-image-button:hover{background:#ff0100}#cooked-recipe-image-gallery .cooked-recipe-gallery-item .cooked-gallery-edit-button{border-radius:3px 0 0 0;display:inline-block;position:absolute;top:0;left:0;padding:10px;background:rgba(0,0,0,.25);color:#fff}#cooked-recipe-image-gallery .cooked-recipe-gallery-item .cooked-gallery-edit-button:hover{background:#0084bc}#cooked-recipe-image-gallery .cooked-recipe-gallery-item .cooked-gallery-item-title{position:absolute;left:0;bottom:0;box-sizing:border-box;width:100%;border-radius:0 0 3px 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;padding:10px 10px 11px;text-align:center;background:#000;background:rgba(0,0,0,.3);color:#fff;font-size:12px}#cooked-recipe-image-gallery .cooked-recipe-gallery-item:hover .cooked-gallery-item-title{background:#000;background:rgba(0,0,0,.75)}#cooked-recipe-image-gallery .cooked-recipe-gallery-item.ui-sortable-helper{-webkit-animation:cooked-wiggle .4s infinite;-moz-animation:cooked-wiggle .4s infinite;-o-animation:cooked-wiggle .4s infinite;animation:cooked-wiggle .4s infinite}#cooked_recipe_settings label.cooked-nutrition-label{display:block;font-size:.7rem;letter-spacing:.03rem;font-weight:700;text-transform:uppercase;line-height:1;margin:0 0 7px}#cooked_recipe_settings #cooked-nutrition-label{line-height:1.6;font-size:1.1rem;border:1px solid #aaa;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;padding:5%;margin:0 0 2rem;font-family:Helvetica,Arial,sans-serif;container-name:nutrition-label;container-type:inline-size}#cooked_recipe_settings #cooked-nutrition-label h2{font-size:2.5rem;line-height:1;letter-spacing:0;font-weight:800;padding:0 0 .5rem 0;margin:0 0 .4rem;color:#333;border-bottom:1px solid #aaa}#cooked_recipe_settings #cooked-nutrition-label p.cooked-daily-value-text{padding:.5rem 0 0 0;margin:0;font-size:.9rem}#cooked_recipe_settings #cooked-nutrition-label ul.cooked-nut-servings p{font-size:1.5rem}#cooked_recipe_settings #cooked-nutrition-label ul{list-style:none;margin:0;padding:0}#cooked_recipe_settings #cooked-nutrition-label li{position:relative;margin:0;padding:0 0 3px 0;border-top:1px solid #aaa}#cooked_recipe_settings #cooked-nutrition-label li li{padding:3px 0 0;margin:3px 0 0}#cooked_recipe_settings #cooked-nutrition-label li:after{content:"";display:table;clear:both}#cooked_recipe_settings #cooked-nutrition-label li.no-after:after{content:none}#cooked_recipe_settings #cooked-nutrition-label li.cooked-nut-spacer{border:none;height:.6rem;padding:0;background:#333}#cooked_recipe_settings #cooked-nutrition-label ul li.cooked-nut-no-border,#cooked_recipe_settings #cooked-nutrition-label>ul>li:first-child{border:none}#cooked_recipe_settings #cooked-nutrition-label li ul{padding:0;margin:0 0 0 20px}#cooked_recipe_settings #cooked-nutrition-label li ul.cooked-right{margin:0}#cooked_recipe_settings #cooked-nutrition-label li ul.cooked-right li{border:none;padding:0;margin:0}#cooked_recipe_settings #cooked-nutrition-label li.cooked-calories ul.cooked-right li strong.cooked-nut-label{font-size:2.5rem;line-height:1}#cooked_recipe_settings #cooked-nutrition-label .cooked-calories{border-top:none;display:flex;justify-content:space-between;align-items:baseline;padding:0}#cooked_recipe_settings #cooked-nutrition-label .cooked-calories strong,#cooked_recipe_settings #cooked-nutrition-label .cooked-calories strong.cooked-nut-label{font-size:2rem;font-weight:800}#cooked_recipe_settings #cooked-nutrition-label ul.cooked-nut-servings li{border:none}#cooked_recipe_settings #cooked-nutrition-label ul.cooked-nut-servings{margin:0}#cooked_recipe_settings #cooked-nutrition-label .cooked-nut-hr{border:none;border-top:1.3rem solid #333;margin:.1rem 0 0;padding:0}#cooked_recipe_settings #cooked-nutrition-label strong{font-weight:800}#cooked_recipe_settings #cooked-nutrition-label .cooked-serving-size strong,#cooked_recipe_settings #cooked-nutrition-label .cooked-serving-size strong.cooked-nut-label{font-size:1.5rem;font-weight:800}#cooked_recipe_settings #cooked-nutrition-label strong.cooked-nut-heading{font-size:1rem}#cooked_recipe_settings #cooked-nutrition-label strong.cooked-nut-label{font-weight:400}#cooked_recipe_settings #cooked-nutrition-label .cooked-nut-right{float:right}#cooked_recipe_settings #cooked-nutrition-label ul.cooked-nut-bottom{margin:0 0 .75rem}#cooked_recipe_settings #cooked-nutrition-label ul.cooked-nut-bottom li{border-top:none;border-bottom:1px solid #aaa;float:left;width:100%;box-sizing:border-box}#cooked_recipe_settings .cooked-measurement-inputs .cooked-select-wrapper:before{top:8px}.cooked-auto-nutrition{display:flex;justify-content:end;margin:0 0 1rem}#cooked-tooltip-auto-nutrition-notice{margin:0}.cooked-settings-header{border-radius:10px 10px 0 0;width:auto;height:90px;line-height:85px;padding:0 30px;font-weight:600;box-sizing:border-box;background:#33373c;color:#fff;font-size:29px;letter-spacing:-.03rem}.cooked-settings-header .cooked-icon{color:#00e0a9}.cooked-settings-submit-wrap{padding:0 0 35px 35px;margin:-20px 0 0}#cooked_recipe_settings .recipe-setting-block .cooked-permalink-field-wrapper span{font-size:14px;display:inline-block;line-height:32px;padding:5px 0 0 0}#cooked_recipe_settings .recipe-setting-block input[type=text].cooked-permalink-field{position:relative;top:0;display:inline-block;width:150px;margin:0 10px}#cooked-settings-panel{position:relative;margin:0;padding:0}#cooked-settings-tabs{display:flex;width:auto;padding:0 20px 0 0;margin:0;list-style:none}#cooked-settings-tabs li{font-size:13px;line-height:1;font-weight:400;display:block;padding:0;margin:0;color:#fff}#cooked-settings-tabs li .cooked-icon{font-size:14px}#cooked-settings-tabs li .cooked-icon.cooked-icon-recipe-icon{font-size:20px;top:2px;position:relative}#cooked-settings-tabs li:hover{cursor:pointer}#cooked-settings-tabs li.active,#cooked-settings-tabs li.active:hover{cursor:default}#cooked-settings-tabs a{line-height:41px;font-size:.9rem;letter-spacing:.03rem;padding:2px 15px 4px;display:block;outline:0;box-shadow:none;border:none;white-space:nowrap}#cooked-settings-panel.stuck{padding-top:41px}#cooked-settings-panel.stuck #cooked-settings-tabs{position:fixed;width:calc(100% - 180px);top:32px;left:0;z-index:100000;margin-left:160px}#cooked-settings-panel .cooked-settings-tab-content-wrapper .cooked-settings-tab-content{display:none}#cooked-settings-panel .cooked-settings-tab-content-wrapper .cooked-settings-tab-content:first-child{display:block}#cooked-settings-panel .cooked-settings-tab-content{padding:25px 35px;margin-right:0}#cooked-settings-panel #cooked_recipe_settings .recipe-setting-block h3.cooked-settings-title{padding-bottom:.2rem}#cooked_recipe_settings .cooked-setting-column-14{position:relative;width:25%;float:left;padding-right:20px;box-sizing:border-box}#cooked_recipe_settings .cooked-setting-column-13{position:relative;width:33%;float:left;padding-right:20px;box-sizing:border-box}#cooked_recipe_settings .cooked-setting-column-23{position:relative;width:66%;float:left;padding-right:20px;box-sizing:border-box}#cooked_recipe_settings .cooked-setting-column-12{position:relative;width:50%;float:left;padding-right:20px;box-sizing:border-box}#cooked_recipe_settings .cooked-setting-column-12 input[type=text],#cooked_recipe_settings .cooked-setting-column-13 input[type=text],#cooked_recipe_settings .cooked-setting-column-14 input[type=text],#cooked_recipe_settings .cooked-setting-column-23 input[type=text],#cooked_recipe_settings .recipe-setting-block input[type=text].cooked-shortcode-field{width:95%}#cooked_recipe_settings .cooked-setting-column-12 .cooked-select-wrapper,#cooked_recipe_settings .cooked-setting-column-12 select,#cooked_recipe_settings .cooked-setting-column-13 .cooked-select-wrapper,#cooked_recipe_settings .cooked-setting-column-13 select,#cooked_recipe_settings .cooked-setting-column-14 .cooked-select-wrapper,#cooked_recipe_settings .cooked-setting-column-14 select,#cooked_recipe_settings .cooked-setting-column-23 select{width:100%}#cooked_recipe_settings .cooked-setting-column-14.cooked-tb-col{padding:0}#cooked-welcome-screen{padding:15px 50px 0 30px;position:relative}#cooked-welcome-screen .cooked-badge{position:absolute;top:0;right:0}#cooked-welcome-screen .cooked-badge img{border:none;width:150px;height:150px;display:block;margin:0}#cooked-welcome-screen .about-text{margin-bottom:40px;line-height:1.8;font-size:17px;margin-right:260px}#cooked-welcome-screen .about-wrap{margin:25px auto 0;max-width:1000px}#cooked-welcome-screen .about-wrap h1{font-size:2.25rem}#cooked-welcome-screen .about-wrap p{font-size:1rem;margin:0 0 2rem;line-height:1.7rem}#cooked-welcome-screen #cooked-welcome-panel{background:#fff;padding:30px 30px 15px 30px;-moz-border-radius:15px;-webkit-border-radius:15px;border-radius:15px;border:none;box-shadow:0 4px 4px rgba(0,0,0,.05),0 8px 8px rgba(0,0,0,.05),0 32px 32px rgba(0,0,0,.05),0 64px 64px rgba(0,0,0,.05)}#cooked-welcome-screen #cooked-welcome-panel img.cooked-welcome-banner{border:none;display:block;padding:0;margin:0 0 30px;box-sizing:border-box;border-radius:5px 5px 0 0}#cooked-welcome-screen #cooked-welcome-panel .cooked-welcome-panel-intro{text-align:center;margin:0 50px 2rem;padding:15px 0;border-bottom:1px solid #e5e5e5}#cooked-welcome-screen #cooked-welcome-panel .cooked-welcome-panel-intro h1{font-size:1.75rem;margin:0 0 1rem;padding:0}#cooked-welcome-screen #cooked-welcome-panel .cooked-welcome-panel-intro p{max-width:600px;font-size:1.1rem;line-height:1.8rem;margin:0 auto 2rem;padding:0}#cooked-welcome-screen .cooked-welcome-panel a{text-decoration:none}#cooked-welcome-screen .cooked-welcome-panel-column{display:block!important}#cooked-welcome-screen .cooked-welcome-panel-column>strong{font-size:1rem}#cooked-welcome-screen .cooked-welcome-panel-column h3{font-size:1.75rem;margin:0 0 1rem;position:relative}#cooked-welcome-screen .cooked-welcome-panel-column h3 a{position:absolute;top:0;right:0;font-size:12px;font-weight:400}#cooked-welcome-screen .cooked-welcome-panel-column h3 a i.fa{position:relative;top:1px}#cooked-welcome-screen .cooked-welcome-panel-column h4{font-size:1.25rem;margin:0 0 1rem;position:relative}#cooked-welcome-screen .cooked-welcome-panel-column h4 a{position:absolute;top:0;right:0;font-size:12px;font-weight:400}#cooked-welcome-screen .cooked-welcome-panel-column h4 a i.fa{position:relative;top:1px}#cooked-welcome-screen .cooked-welcome-panel-column.cooked-welcome-panel-full{width:100%;padding-right:0;float:none}#cooked-welcome-screen .cooked-welcome-panel-column.cooked-welcome-panel-last{width:70%;padding-right:0;float:right}#cooked-welcome-screen .cooked-welcome-panel-column .fa-external-link{color:#888}#cooked-welcome-screen .cooked-welcome-panel-content{min-height:1px;padding:10px 50px 20px;margin:0}#cooked-welcome-screen .cooked-welcome-panel .cooked-welcome-panel-column-container{display:flex;justify-content:between!important;padding:0!important;flex-wrap:wrap}#cooked-welcome-screen .cooked-welcome-panel-column{box-sizing:border-box;padding-right:2rem;width:30%}#cooked-welcome-screen .cooked-pro-features{width:85%;margin:0 auto;padding:0 0 10px;display:flex;flex-wrap:wrap}#cooked-welcome-screen ul.cooked-whatsnew-list{margin-right:0}#cooked-welcome-screen ul.cooked-whatsnew-list li{line-height:1.7;position:relative;margin-right:0;border-top:1px solid #e5e5e5;padding:8px 0 4px 0}#cooked-welcome-screen ul.cooked-whatsnew-list li:first-child{border:none;padding-top:0}#cooked-welcome-screen ul.cooked-whatsnew-list em.fix,#cooked-welcome-screen ul.cooked-whatsnew-list strong.new,#cooked-welcome-screen ul.cooked-whatsnew-list strong.tweak{position:absolute;font-style:normal;display:inline-block;background:#aaa;text-transform:uppercase;top:11px;left:0;color:#fff;font-weight:600;-moz-border-radius:3px;-webkit-border-radius:3px;text-align:center;width:38px;border-radius:3px;font-size:10px;line-height:19px;height:19px;padding:0 6px;margin:0 6px 0 0}#cooked-welcome-screen ul.cooked-whatsnew-list li:first-child em.fix,#cooked-welcome-screen ul.cooked-whatsnew-list li:first-child strong.new,#cooked-welcome-screen ul.cooked-whatsnew-list li:first-child strong.tweak{top:3px}#cooked-welcome-screen ul.cooked-whatsnew-list strong.new{background:#56c477}#cooked-welcome-screen ul.cooked-whatsnew-list strong.tweak{background:#0073aa}#cooked-welcome-screen ul.cooked-whatsnew-list em.fix{background:#ffad10}#cooked-welcome-screen ul li.cooked-pro i.cooked-icon{color:#ffad10}#cooked-welcome-screen ul li.cooked-pro a{font-weight:600;color:#ffad10}#cooked-welcome-screen ul li.cooked-pro a:hover{color:#d3910f}#cooked-welcome-screen ul.cooked-whatsnew-pro{margin-bottom:0;flex:1 0 auto;width:33.333%}#cooked-welcome-screen ul.cooked-whatsnew-pro li{padding-left:0;font-size:1.15rem;font-weight:400}#cooked-welcome-screen ul.cooked-whatsnew-pro li i.cooked-icon-star{color:#ffad10;margin:0 7px 0 0;font-size:19px;position:relative;top:1px}#cooked-welcome-screen .cooked-welcome-bottom{text-align:center;background:#f9f9f9;margin:30px -80px -15px;border-top:1px solid #f1f1f1}#cooked-welcome-screen .cooked-pro-button{display:inline-block;clear:both;text-align:center;width:auto;margin:30px auto;padding:20px 25px 21px;font-size:1.25rem;line-height:1rem;font-weight:600;color:#fff;background:#ffad10;border-radius:50px}#cooked-welcome-screen .cooked-pro-button:hover{background:#e08704}#cooked-welcome-screen .cooked-coupon-code{color:#4c5e65;display:inline-block;font-size:17px;padding:0 0 0 1.5rem}@media screen and (max-width:1050px){#cooked-welcome-screen ul.cooked-whatsnew-pro{width:100%;margin-top:0}#cooked-welcome-screen ul.cooked-whatsnew-pro:first-child{margin-top:10px}#cooked-welcome-screen ul.cooked-whatsnew-pro li:first-child{border-top:1px solid #e5e5e5;padding-top:8px}#cooked-welcome-screen ul.cooked-whatsnew-pro:first-child li:first-child{border:none;padding-top:0}}@media screen and (max-width:870px){#cooked-welcome-screen .cooked-pro-features{width:90%}#cooked-welcome-screen .cooked-welcome-panel-column{padding-right:0}#cooked-welcome-screen .cooked-welcome-panel-column.cooked-welcome-panel-last{width:100%;padding-top:20px}#cooked-welcome-screen .about-wrap{margin-top:0}#cooked-welcome-screen .cooked-welcome-panel .cooked-welcome-panel-column li{display:block}}@media screen and (max-width:782px){#cooked-welcome-screen .cooked-pro-features{width:100%}#cooked-welcome-screen{padding:15px 40px 0 30px}#cooked-welcome-screen .cooked-badge{display:none}#cooked-welcome-screen .about-text,#cooked-welcome-screen .about-wrap h1{margin-right:0}#cooked-welcome-screen .cooked-welcome-panel-column h3 a{display:block;position:relative}}@media screen and (max-width:500px){#cooked-welcome-screen #cooked-welcome-panel img.cooked-welcome-banner{display:none}#cooked-welcome-screen .about-wrap h1{font-size:1.8rem}#cooked-welcome-screen .about-text{font-size:15px}}#cooked_recipe_settings #cooked-nutrition-label .cooked-nut-label,#cooked_recipe_settings .recipe-setting-block h3.cooked-settings-title{color:#0173aa}#cooked_recipe_settings .recipe-setting-block.cooked-danger h3.cooked-settings-title{color:#d44d1f}#cooked_recipe_settings .cooked-alert-block h3.cooked-settings-title{color:#c02a2a}#cooked-recipe-tabs{background:#fff}#cooked-recipe-tabs li{background:#454b52;color:#fff;color:rgba(255,255,255,.75);border-right:1px solid rgba(0,0,0,.15)}#cooked-recipe-tabs li:hover{background:#535a62;color:#fff;border-right:1px solid rgba(0,0,0,.15)}#cooked-recipe-tabs li.active{background:#fff;color:#333;border-right:1px solid #fff}#cooked-settings-tabs{background:#454b52}#cooked-settings-tabs a{color:#fff;text-decoration:none}#cooked-settings-tabs li{background:#454b52;color:#fff;color:rgba(255,255,255,.75)}#cooked-settings-tabs li:hover{background:#535a62;color:#fff}#cooked-settings-tabs li.active{background:#fff}#cooked-settings-tabs li.active a{color:#000}#cooked-directions-builder .cooked-direction-block>.cooked-direction-image .cooked-direction-img-placeholder,#cooked-migration-progress.cooked-progress .cooked-progress-bar,#cooked-related-progress.cooked-progress .cooked-progress-bar,#cooked_recipe_settings .cooked-select-wrapper:before,#cooked_recipe_settings .cooked-tooltip-icon,#cooked_recipe_settings select{-webkit-transition:all .15s ease-out;-moz-transition:all .15s ease-out;transition:all .15s ease-out}#cooked-recipe-image-gallery .cooked-recipe-gallery-item{-webkit-transition:transform .15s ease-out;-moz-transition:all .15s ease-out;transition:transform .15s ease-out}#cooked-recipe-tabs li.cooked-loading{-webkit-transition:opacity .15s ease-out;-moz-transition:all .15s ease-out;transition:opacity .15s ease-out}@-webkit-keyframes cooked-wiggle{0%{-webkit-transform:scale(1)}50%{-webkit-transform:scale(1.03)}100%{-webkit-transform:scale(1)}}@-moz-keyframes cooked-wiggle{0%{-moz-transform:scale(1)}50%{-moz-transform:scale(1.03)}100%{-moz-transform:scale(1)}}@-o-keyframes cooked-wiggle{0%{-o-transform:scale(1)}50%{-o-transform:scale(1.03)}100%{-o-transform:scale(1)}}@keyframes cooked-wiggle{0%{transform:scale(1)}50%{transform:scale(1.03)}100%{transform:scale(1)}}@media screen and (max-width:1150px){#cooked-recipe-tabs li{font-size:.8rem;padding:0 1.2rem 0 .7rem}#cooked-recipe-tabs li .cooked-icon{display:none}}@media screen and (max-width:960px){#cooked_recipe_settings.stuck #cooked-recipe-tabs{margin-left:36px}}@media screen and (max-width:768px){#cooked_recipe_settings.stuck #cooked-recipe-tabs{position:absolute;top:0;left:0;width:100%;margin-left:0;box-shadow:0 3px 50px rgba(0,0,0,.25)}#cooked_recipe_settings .cooked-clearfix:has(>.cooked-setting-column-14){display:grid;grid-template-columns:1fr 1fr;gap:10px}#cooked_recipe_settings .cooked-setting-column-14{width:100%;float:none;padding-right:0}#cooked_recipe_settings .recipe-setting-block h3.cooked-settings-title{width:60%}}@media screen and (max-width:600px){#cooked_recipe_settings .recipe-setting-block h3.cooked-settings-title{display:flex;flex-wrap:wrap;align-items:center;row-gap:10px}#cooked_recipe_settings .recipe-setting-block:has(#cooked-nutrition-label) .cooked-setting-column-12{width:100%;float:none;padding-right:0}#cooked_recipe_settings .recipe-setting-block:has(#cooked-nutrition-label) p.cooked-measurement-inputs{display:flex;gap:10px}#cooked_recipe_settings .recipe-setting-block:has(#cooked-nutrition-label) p.cooked-measurement-inputs .cooked-measurement-column{width:50%;margin-right:0;flex:1}#cooked-ingredients-builder .cooked-ingredient-block{display:grid;grid-template-columns:1fr 1fr;column-gap:8px;row-gap:4px;padding-left:30px;padding-right:35px}#cooked-ingredients-builder .cooked-ingredient-block>div{display:block;float:none;padding-right:0}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-ingredient-amount{width:auto;grid-column:1}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-ingredient-measurement{width:auto;grid-column:2}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-ingredient-name{width:auto;grid-column:1/-1;padding-right:40px}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-substitution-fields{width:auto;float:none;clear:none;grid-column:1/-1}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-heading-name{grid-column:1/-1}#cooked_recipe_settings .cooked-ingredient-headers{display:grid;grid-template-columns:1fr 1fr;padding-left:30px;padding-right:35px}#cooked_recipe_settings .cooked-ingredient-headers span{display:block;float:none}#cooked_recipe_settings .cooked-layout-save-default{margin:0}#cooked_recipe_settings .cooked-ingredient-headers span.cooked-ingredient-header-amount{width:auto}#cooked_recipe_settings .cooked-ingredient-headers span.cooked-ingredient-header-measurement{width:auto}#cooked_recipe_settings .cooked-ingredient-headers span.cooked-ingredient-header-item{width:auto;grid-column:1/-1;padding-top:2px}#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded>.cooked-substitution-fields{display:grid;grid-template-columns:1fr 1fr;column-gap:8px;row-gap:4px}#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded>.cooked-substitution-fields>div{display:block;float:none;padding-right:0}#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded>.cooked-substitution-fields .cooked-ingredient-amount,#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded>.cooked-substitution-fields .cooked-ingredient-measurement{width:100%;display:block}#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded>.cooked-substitution-fields .cooked-ingredient-name{width:auto;grid-column:1/-1;padding-top:0}#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded>.cooked-substitution-fields .cooked-sub-label{grid-column:1/-1}#cooked-ingredients-builder .cooked-ingredient-block{position:relative}#cooked-ingredients-builder .cooked-ingredient-block .cooked-show-substitution{top:60px;right:42px}#cooked-ingredients-builder .cooked-ingredient-block.cooked-expanded .cooked-show-substitution,#cooked-ingredients-builder .cooked-ingredient-block.cooked-has-substitution .cooked-show-substitution,#cooked-ingredients-builder .cooked-ingredient-block:hover .cooked-show-substitution{right:42px}#cooked-ingredients-builder .cooked-ingredient-block .cooked-delete-ingredient{right:11px}}@media screen and (max-width:500px){#cooked_recipe_settings .cooked-clearfix:has(>.cooked-setting-column-14){grid-template-columns:1fr}#cooked_recipe_settings.stuck #cooked-recipe-tabs{width:100%}}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-substitution-fields{width:100%;float:left;clear:both;margin-top:10px;padding-top:10px;padding-right:0;padding-left:0;margin-left:0;box-sizing:border-box;padding-bottom:5px;position:relative}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-substitution-fields .cooked-ingredient-amount{width:15%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-substitution-fields .cooked-ingredient-measurement{width:20%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-substitution-fields .cooked-ingredient-name{width:65%}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-substitution-fields .cooked-sub-label{color:#7c7c7c;font-size:14px;font-weight:300}#cooked-ingredients-builder .cooked-ingredient-block>.cooked-substitution-fields>div{display:inline-block;float:left;box-sizing:border-box;padding-right:10px}.cooked-bulk-add-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);z-index:100100;display:flex;align-items:center;justify-content:center}.cooked-bulk-add-modal{background:#fff;border-radius:6px;width:600px;max-width:90vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 5px 30px rgba(0,0,0,.3)}.cooked-bulk-add-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #ddd}.cooked-bulk-add-header h2{margin:0;font-size:18px;line-height:1.3}.cooked-bulk-add-close{font-size:24px;text-decoration:none;color:#666;line-height:1;padding:0 4px}.cooked-bulk-add-close:hover{color:#d63638}.cooked-bulk-add-body{padding:20px;overflow-y:auto;flex:1}.cooked-bulk-add-help{margin-top:0;color:#666;font-size:13px}#cooked-bulk-add-textarea{width:100%;min-height:160px;font-size:14px;padding:10px;box-sizing:border-box;resize:vertical}.cooked-bulk-add-preview{margin-top:16px}.cooked-bulk-add-preview-label{margin:0 0 8px;font-size:13px}.cooked-bulk-add-preview-notice-ingredients{display:none;margin:10px 0 0;font-size:12px;line-height:1.45;color:#b45309;font-weight:700;gap:6px;align-items:flex-start}#cooked-bulk-add-preview[data-bulk-type=ingredients] .cooked-bulk-add-preview-notice-ingredients{display:flex}.cooked-bulk-add-preview-notice-mark{flex-shrink:0;font-weight:700;line-height:1.45;color:#b45309}.cooked-bulk-add-preview-notice-text{flex:1;min-width:0;font-weight:700;color:#b45309}.cooked-bulk-add-preview-list{max-height:200px;overflow-y:auto;border:1px solid #ddd;border-radius:4px;padding:4px}.cooked-bulk-add-preview-row{display:flex;align-items:center;gap:8px;padding:4px 6px;border-bottom:1px solid #f0f0f0}.cooked-bulk-add-preview-row:last-child{border-bottom:0}.cooked-bulk-add-heading-toggle{display:flex;align-items:center;gap:4px;white-space:nowrap;font-size:12px;color:#666;cursor:pointer;flex-shrink:0}.cooked-bulk-add-heading-toggle input[type=checkbox]{margin:0}.cooked-bulk-add-preview-text{flex:1;border:1px solid #ddd;border-radius:3px;padding:4px 8px;font-size:13px}.cooked-bulk-add-preview-row:not(.cooked-bulk-add-preview-row-ingredient).cooked-bulk-add-is-heading .cooked-bulk-add-preview-text{font-weight:700}.cooked-bulk-add-preview-row-ingredient .cooked-bulk-add-heading-line-wrap{display:none;flex:1;align-items:center;gap:8px;min-width:0}.cooked-bulk-add-preview-row-ingredient.cooked-bulk-add-is-heading .cooked-bulk-add-heading-line-wrap{display:flex}.cooked-bulk-add-preview-row-ingredient.cooked-bulk-add-is-heading .cooked-bulk-add-parsed-amount,.cooked-bulk-add-preview-row-ingredient.cooked-bulk-add-is-heading .cooked-bulk-add-parsed-name,.cooked-bulk-add-preview-row-ingredient.cooked-bulk-add-is-heading .cooked-bulk-add-parsed-unit{display:none}.cooked-bulk-add-heading-line-label{flex-shrink:0;font-size:12px;font-weight:600;color:#666}.cooked-bulk-add-preview-row-ingredient .cooked-bulk-add-heading-line-wrap .cooked-bulk-add-preview-text{flex:1;min-width:0;border:1px solid #ddd;border-radius:3px;padding:4px 8px;font-size:13px;font-weight:600}.cooked-bulk-add-preview-header{display:flex;align-items:center;gap:8px;padding:4px 6px 6px;border-bottom:1px solid #ddd;font-size:11px;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.5px}.cooked-bulk-add-col-heading{flex-shrink:0;width:108px}.cooked-bulk-add-col-amount{width:72px;flex-shrink:0}.cooked-bulk-add-col-unit{width:108px;flex-shrink:0}.cooked-bulk-add-col-name{flex:1}.cooked-bulk-add-parsed-amount{width:72px;flex-shrink:0;border:1px solid #ddd;border-radius:3px;padding:4px 6px;font-size:13px;text-align:center}.cooked-bulk-add-parsed-unit{width:108px;flex-shrink:0;border:1px solid #ddd;border-radius:3px;padding:4px 6px;font-size:13px}.cooked-bulk-add-parsed-name{flex:1;border:1px solid #ddd;border-radius:3px;padding:4px 6px;font-size:13px}.cooked-bulk-add-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid #ddd}.cooked-bulk-add-footer .button,.cooked-bulk-add-footer .button.button-primary{float:none;margin:0;vertical-align:middle}.cooked-bulk-add-spinner{float:none!important;margin:0!important}#cooked_allergens .cooked-allergens-checkboxes{display:flex;flex-direction:column;gap:8px}#cooked_allergens .cooked-allergen-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer}#cooked_allergens .cooked-allergen-checkbox input[type=checkbox]{margin:0}#cooked_allergens .cooked-allergen{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}#cooked_allergens .cooked-allergen .cooked-icon{font-size:1.5rem;line-height:1}#cooked_allergens .cooked-allergen,#cooked_allergens .cooked-allergen .cooked-icon{color:rgba(0,0,0,.4)}#cooked_allergens .cooked-allergen-label{font-size:13px;color:#333} \ No newline at end of file diff --git a/assets/admin/js/cooked-functions.js b/assets/admin/js/cooked-functions.js index 021d0a5..c3351f9 100644 --- a/assets/admin/js/cooked-functions.js +++ b/assets/admin/js/cooked-functions.js @@ -464,6 +464,53 @@ var cookedSortableTouchHandler = function(event) { window.scrollTo(0,0); } }); + + var settings_image_frame; + + $_CookedSettingsPanel.on('click', '.cooked-settings-image-remove', function(e) { + e.preventDefault(); + + var $field = $(this).closest('.cooked-settings-image-field'); + + $field.removeClass('cooked-has-image'); + $field.find('.cooked-settings-image-preview-img').attr('src', '').removeAttr('srcset').removeAttr('sizes'); + $field.find('.cooked-settings-image-input').val('0'); + $field.find('.cooked-settings-image-button').val(cooked_admin_functions_js_vars.i18n_image_title); + }); + + $_CookedSettingsPanel.on('click', '.cooked-settings-image-button', function(e) { + e.preventDefault(); + + var $button = $(this); + var $field = $button.closest('.cooked-settings-image-field'); + + if (settings_image_frame) { + settings_image_frame.off('select'); + } + + settings_image_frame = wp.media({ + title: cooked_admin_functions_js_vars.i18n_image_title, + button: { text: cooked_admin_functions_js_vars.i18n_image_button }, + library: { type: 'image' } + }); + + settings_image_frame.on('select', function() { + var media_attachment = settings_image_frame.state().get('selection').first().toJSON(); + var thumbUrl = media_attachment.sizes && media_attachment.sizes.thumbnail + ? media_attachment.sizes.thumbnail.url + : media_attachment.url; + + $field.addClass('cooked-has-image'); + $field.find('.cooked-settings-image-preview-img') + .attr('src', thumbUrl) + .removeAttr('srcset') + .removeAttr('sizes'); + $field.find('.cooked-settings-image-input').val(media_attachment.id); + $button.val(cooked_admin_functions_js_vars.i18n_image_change); + }); + + settings_image_frame.open(); + }); } if ($_CookedIngredientBuilder.length) { @@ -613,8 +660,18 @@ var cookedSortableTouchHandler = function(event) { cooked_reset_direction_builder(); }); + $_CookedDirectionBuilder.parent().on('click', '.remove-video-button', function(e) { + e.preventDefault(); + var $parent = $(this).parent(); + $parent.removeClass('cooked-has-video'); + $parent.find('.cooked-direction-video-preview').attr('src', ''); + $parent.find('input[data-direction-part="video"]').val(''); + $parent.find('.direction-video-button').prop('value', cooked_admin_functions_js_vars.i18n_video_title); + cooked_reset_direction_builder(); + }); + // Instantiates the variable that holds the media library frame. - var direction_image_frame, directionID; + var direction_image_frame, direction_video_frame, directionID; $('body').on('click', '.cooked-direction-img-placeholder, .cooked-direction-img', function(e) { e.preventDefault(); @@ -661,6 +718,47 @@ var cookedSortableTouchHandler = function(event) { // Opens the media library frame. direction_image_frame.open(); }); + + $('body').on('click', '.cooked-direction-video-placeholder, .cooked-direction-video-preview', function(e) { + e.preventDefault(); + var thisButton = $(this).parent().find('.direction-video-button'); + thisButton.trigger('click'); + }); + + // Runs when the video button is clicked. + $('body').on('click', '.direction-video-button', function(e) { + var thisButton = $(this); + directionID = thisButton.data('id'); + + e.preventDefault(); + + // If the frame already exists, re-open it. + if ( direction_video_frame ) { + direction_video_frame.open(); + return; + } + + // Sets up the media library frame + direction_video_frame = wp.media.frames.direction_video_frame = wp.media({ + title: cooked_admin_functions_js_vars.i18n_video_title, + button: { text: cooked_admin_functions_js_vars.i18n_video_button }, + library: { type: 'video' } + }); + + // Runs when a video is selected. + direction_video_frame.on('select', function() { + var media_attachment = direction_video_frame.state().get('selection').first().toJSON(); + + var $videoBlock = $('.direction-video-button[data-id="' + directionID + '"]').closest('.cooked-direction-video'); + $videoBlock.find('.cooked-direction-video-preview').attr('src', media_attachment.url); + $videoBlock.find('input[data-direction-part="video"]').val( media_attachment.id ); + $videoBlock.addClass('cooked-has-video'); + $('.direction-video-button[data-id="' + directionID + '"]').prop( 'value', cooked_admin_functions_js_vars.i18n_video_change ); + }); + + // Opens the media library frame. + direction_video_frame.open(); + }); } // Bulk Add Modal diff --git a/assets/admin/js/cooked-functions.min.js b/assets/admin/js/cooked-functions.min.js index a93de4f..c0791ab 100644 --- a/assets/admin/js/cooked-functions.min.js +++ b/assets/admin/js/cooked-functions.min.js @@ -1 +1 @@ -var $_CookedConditionalTimeout=!1,cookedSortableTouchHandler=function(e){var t={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup"},o=e.target.closest(".cooked-icon-drag");o&&o.closest(".cooked-sortable")&&e.changedTouches&&e.changedTouches.length&&t[e.type]&&(o=e.changedTouches[0],e.preventDefault(),t=new MouseEvent(t[e.type],{bubbles:!0,cancelable:!0,view:window,detail:1,screenX:o.screenX,screenY:o.screenY,clientX:o.clientX,clientY:o.clientY,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:null}),o.target.dispatchEvent(t))},cooked_recipe_update_counter=((_=>{_(document).ready(function(){var c,o,t,e,i,n,d,a,r,l=_(".cooked-color-field"),s=_("#cooked_recipe_settings").find("select"),u=_("#cooked-recipe-tabs"),k=(_("#cooked-settings-wrap"),_("#cooked_recipe_settings")),p=k.find("input#submit");$_CookedTooltips=_(".cooked-tooltip"),$_CookedConditionals=_(".cooked-conditional-hidden"),$_CookedSortable=_(".cooked-sortable"),$_CookedRecipeSaveDefault=_(".cooked-layout-save-default"),$_CookedShortcodeField=_(".cooked-shortcode-field"),$_CookedIngredientBuilder=_("#cooked-ingredients-builder"),$_CookedAutoNutritionButton=_(".cooked-auto-nutrition-button"),$_CookedDirectionBuilder=_("#cooked-directions-builder"),$_CookedRecipeGallery=_("#cooked-recipe-image-gallery"),$_CookedNutritionFactsTab=_("#cooked-recipe-tab-content-nutrition"),$_CookedSettingsPanel=_("#cooked-settings-panel"),$_CookedSettingsTabs=_("#cooked-settings-tabs"),l.length&&l.wpColorPicker(),$_CookedSortable.length&&(document.addEventListener("touchstart",cookedSortableTouchHandler,{passive:!1}),document.addEventListener("touchmove",cookedSortableTouchHandler,{passive:!1}),document.addEventListener("touchend",cookedSortableTouchHandler,{passive:!1}),$_CookedSortable.find(".cooked-icon-drag").length?$_CookedSortable.sortable({handle:".cooked-icon-drag",stop:function(e,t){t.item.closest("#cooked-directions-builder").length&&cooked_reset_direction_builder();var t=t.item.find("textarea"),o=!(!cooked_admin_functions_js_vars.wp_editor_roles_allowed||"undefined"==typeof wp||!wp.editor||"function"!=typeof wp.editor.remove||"function"!=typeof wp.editor.initialize);t.length&&o&&(o=t.attr("name"),t=t.attr("id"),wp.editor.remove(t),wp.editor.initialize(t,{tinymce:{wpautop:!1,toolbar1:"bold,italic,underline,blockquote,strikethrough,bullist,numlist,alignleft,aligncenter,alignright,undo,redo,wp_link_advanced,unlink,fullscreen",toolbar2:"",toolbar3:"",toolbar4:"",height:100,textarea_name:o,plugins:"link lists fullscreen wordpress wplink",setup:function(e){}},quicktags:!0,mediaButtons:!1}))}}):$_CookedSortable.sortable({stop:function(e,t){t.item.closest("#cooked-directions-builder").length&&cooked_reset_direction_builder()}})),$_CookedRecipeSaveDefault.length&&($_CookedRecipeSaveDefault.tooltipster({theme:["tooltipster-light","tooltipster-sideTip-cooked"],trigger:"click",animation:"grow",delay:0,speed:200,maxWidth:275,contentAsHTML:!0,interactive:!0,functionReady:function(r,e){_(".cooked-save-default-all").on("click",function(e){e.preventDefault();var t,o=_(this),e=o.data("nonce"),i=o.data("bulk-nonce"),n=o.parent(),d=confirm(cooked_admin_functions_js_vars.i18n_confirm_save_default_all),a=_("#_recipe_settings_content"),c=tinymce.get("_recipe_settings_content");t=null===c?a.val():c.getContent(),d&&!o.hasClass("disabled")&&(n.find(".button, .button-primary").addClass("disabled"),_.post(cooked_admin_functions_js_vars.ajax_url,{action:"cooked_save_default",default_content:t,nonce:e},function(){_.post(cooked_admin_functions_js_vars.ajax_url,{action:"cooked_get_recipe_count",nonce:i},function(e){o.removeClass("button-primary").addClass("button"),e&&e.success&&0')}),$_CookedTooltips.length&&$_CookedTooltips.tooltipster({theme:["tooltipster-light","tooltipster-sideTip-cooked"],animation:"grow",delay:100,speed:200,maxWidth:275,contentAsHTML:!0,interactive:!0}),$_CookedShortcodeField.length&&$_CookedShortcodeField.on("click",function(e){_(this).select()}),$_CookedConditionals.length&&(c=[],$_CookedConditionals.each(function(){var e=_(this),t=_(this).data("condition"),o=_(this).data("value"),i=_("#"+t),o=!!o&&o.split(" "),n=e.is("li")||e.is("span")?"inline-block":"block";i.is(":checkbox")&&i.is(":checked")||i.is(":radio")&&i.is(":checked")||!(i.is(":checkbox")&&!i.is(":checked")||i.is(":radio")&&!i.is(":checked"))&&(!i.is(":checkbox")&&!o&&i.val()||!i.is(":checkbox")&&o&&-1<_.inArray(i.val(),o)||!i.is(":radio")&&!o&&i.val()||!i.is(":radio")&&o&&-1<_.inArray(i.val(),o))?e.css({display:n}):e.hide(),-1==_.inArray(t,c)&&c.push(t);for(var d=c.length,a=0;a a").attr("href")).split("#"))[1],_(".cooked-settings-tab-content").hide(),_("#cooked-settings-tab-content-"+n).show(),s.on("click",function(e){_(".tab-content").hide();var t=_(this).find("a"),t=($_CookedSettingsTabs.find("li").removeClass("active"),_(this).addClass("active"),t.attr("href"));"migration"==(t=(t=t.split("#"))[1])?p.hide():p.show(),_(".cooked-settings-tab-content").hide(),_("#cooked-settings-tab-content-"+t).show(),_("#cooked-settings-panel").hasClass("stuck")?window.scrollTo(0,130):window.scrollTo(0,0)})),$_CookedIngredientBuilder.length&&(cooked_reset_ingredient_builder(),$_CookedIngredientBuilder.on("keydown",'input[data-ingredient-part="name"]',function(e){9!==e.keyCode&&13!==e.keyCode||_(this).parents(".cooked-ingredient-block").is(":last-child")&&(e.preventDefault(),_("#cooked-recipe-tab-content-ingredients").find(".cooked-add-ingredient-button").trigger("click"),$_CookedIngredientBuilder.find('.cooked-ingredient-block:last-child input[data-ingredient-part="amount"]').focus())}),$_CookedIngredientBuilder.parent().on("click",".cooked-show-substitution",function(e){e.preventDefault();e=_(this).parent();e.hasClass("cooked-expanded")?e.removeClass("cooked-expanded"):(e.addClass("cooked-expanded"),e.find('input[data-ingredient-part="sub_amount"]').focus())}),$_CookedIngredientBuilder.on("keyup change",'input[data-ingredient-part="sub_amount"], input[data-ingredient-part="sub_name"], select[data-ingredient-part="sub_measurement"]',function(e){var t=_(this).parents(".recipe-setting-block"),o=t.find('input[data-ingredient-part="sub_name"]').val();o&&o.trim()?t.addClass("cooked-has-substitution"):t.removeClass("cooked-has-substitution")}),$_CookedAutoNutritionButton.length&&$_CookedIngredientBuilder.on("change",'input[data-ingredient-part="name"]',function(e){var t=!1;$_CookedIngredientBuilder.find('input[data-ingredient-part="name"]').each(function(){if(""!=_(this).val())return!(t=!0)}),t?$_CookedAutoNutritionButton.prop("disabled",!1):$_CookedAutoNutritionButton.prop("disabled",!0)}),$_CookedIngredientBuilder.on("keyup",'input[data-ingredient-part="url"]',function(e){var t=_(this).val(),o=_(this).parents(".recipe-setting-block");t?o.addClass("cooked-has-url"):o.removeClass("cooked-has-url")}),$_CookedIngredientBuilder.parent().on("click",".cooked-add-ingredient-button",function(e){e.preventDefault();e=$_CookedIngredientBuilder.parent().find(".cooked-ingredient-template").clone().removeClass("cooked-template cooked-ingredient-template").addClass("cooked-ingredient-block");$_CookedIngredientBuilder.append(e),cooked_reset_ingredient_builder()}),$_CookedIngredientBuilder.parent().on("click",".cooked-add-heading-button",function(e){e.preventDefault();e=$_CookedIngredientBuilder.parent().find(".cooked-heading-template").clone().removeClass("cooked-template cooked-heading-template").addClass("cooked-ingredient-block cooked-ingredient-heading");$_CookedIngredientBuilder.append(e),cooked_reset_ingredient_builder()}),$_CookedIngredientBuilder.parent().on("click",".cooked-delete-ingredient",function(e){e.preventDefault(),_(this).parent().remove(),cooked_reset_ingredient_builder()})),$_CookedDirectionBuilder.length&&(cooked_reset_direction_builder(),$_CookedDirectionBuilder.parent().on("click",".cooked-show-heading-element",function(e){e.preventDefault();e=_(this).parent();e.hasClass("cooked-expanded")?e.removeClass("cooked-expanded"):(e.addClass("cooked-expanded"),e.find('input[data-direction-part="section_heading_element"]').focus())}),$_CookedDirectionBuilder.parent().on("click",".cooked-add-direction-button",function(e){e.preventDefault();e=$_CookedDirectionBuilder.parent().find(".cooked-direction-template").clone().removeClass("cooked-template cooked-direction-template").addClass("cooked-direction-block");$_CookedDirectionBuilder.append(e),cooked_reset_direction_builder()}),$_CookedDirectionBuilder.parent().on("click",".cooked-add-heading-button",function(e){e.preventDefault();e=$_CookedDirectionBuilder.parent().find(".cooked-heading-template").clone().removeClass("cooked-template cooked-heading-template").addClass("cooked-direction-block cooked-direction-heading");$_CookedDirectionBuilder.append(e),cooked_reset_direction_builder()}),$_CookedDirectionBuilder.parent().on("click",".cooked-delete-direction",function(e){e.preventDefault();var t,e=_(this).parent();cooked_admin_functions_js_vars.wp_editor_roles_allowed&&"undefined"!=typeof wp&&wp.editor&&"function"==typeof wp.editor.remove&&(t=e.find('textarea[data-direction-part="content"]').attr("id"))&&wp.editor.remove(t),e.remove(),cooked_reset_direction_builder()}),$_CookedDirectionBuilder.parent().on("click",".remove-image-button",function(e){e.preventDefault();e=_(this).parent();e.removeClass("cooked-has-image"),e.find("img").attr("src","").removeAttr("srcset").removeAttr("sizes"),e.find('input[data-direction-part="image"]').val(""),cooked_reset_direction_builder()}),_("body").on("click",".cooked-direction-img-placeholder, .cooked-direction-img",function(e){e.preventDefault(),_(this).parent().find(".direction-image-button").trigger("click")}),_("body").on("click",".direction-image-button",function(e){var t=_(this);a=t.data("id"),e.preventDefault(),d||(d=wp.media.frames.direction_image_frame=wp.media({title:cooked_admin_functions_js_vars.i18n_image_title,button:{text:cooked_admin_functions_js_vars.i18n_image_button},library:{type:"image"}})).on("select",function(){var e=d.state().get("selection").first().toJSON();_("#direction-"+a+"-image-src").attr("src",e.sizes.thumbnail.url).removeAttr("srcset").removeAttr("sizes").parent().addClass("cooked-has-image"),_('input[name="_recipe_settings[directions]['+a+'][image]"]').val(e.id),_('.direction-image-button[data-id="'+a+'"]').prop("value",cooked_admin_functions_js_vars.i18n_image_change)}),d.open()})),cooked_init_bulk_add(_),$_CookedRecipeGallery.length&&(cooked_init_gallery_sorting(),_("body").on("click",".cooked-gallery-add-button",function(e){_(this);e.preventDefault(),r||(r=wp.media.frames.gallery_images_frame=wp.media({title:cooked_admin_functions_js_vars.i18n_gallery_image_title,button:{text:cooked_admin_functions_js_vars.i18n_gallery_image_title},library:{type:"image"},multiple:!0})).on("select",function(){var e,t,o,i=r.state().get("selection").toJSON();for(e in i)i.hasOwnProperty(e)&&(o=(t=i[e]).sizes.thumbnail.url,_("#cooked-recipe-image-gallery").append(''));cooked_init_gallery_sorting()}),r.open()}),_("body").on("click",".cooked-recipe-gallery-item img",function(e){e.preventDefault(),_(this).parent().find(".cooked-gallery-edit-button").trigger("click")}),_("body").on("click",".cooked-gallery-edit-button",function(e){var n=_(this),t=n.data("attachment-id"),d=(e.preventDefault(),wp.media.frames.gallery_images_frame=wp.media({title:cooked_admin_functions_js_vars.i18n_edit_image_title,button:{text:cooked_admin_functions_js_vars.i18n_edit_image_button},library:{type:"image"},multiple:!1}));d.on("open",function(){var e=d.state().get("selection");(attachment=wp.media.attachment(t)).fetch(),e.add(attachment?[attachment]:[])}),d.open(),d.on("select",function(){var e,t,o,i=d.state().get("selection").toJSON();for(e in i)i.hasOwnProperty(e)&&(o=(t=i[e]).sizes.thumbnail.url,n.parent().replaceWith(''));cooked_init_gallery_sorting()})}),$_CookedRecipeGallery.on("click",".remove-image-button",function(e){var t=_(this);a=t.data("id"),e.preventDefault(),a?(_("#direction-"+a+"-image-src").parent().removeClass("cooked-has-image").prop("src",!1),_('input[name="_recipe_settings[directions]['+a+'][image]"]').val(""),_('.direction-image-button[data-id="'+a+'"]').prop("value",cooked_admin_functions_js_vars.i18n_image_title)):t.parent().remove()})),$_CookedNutritionFactsTab.length&&(init_nutrition_facts($_CookedNutritionFactsTab),$_CookedNutritionFactsTab.on("keyup","input",function(e){init_nutrition_facts($_CookedNutritionFactsTab)})),_("#cooked-prep-time").length&&_("#cooked-prep-time,#cooked-cook-time").on("change",function(){cooked_updateTotalTimeValue(parseInt(_("#cooked-prep-time").val()),parseInt(_("#cooked-cook-time").val()))})})})(jQuery),0),cooked_bulk_per_page=20;function cooked_set_default_template(o,i,n,d,a){var c,r,l;i<=0||(c=jQuery("#cooked-template-progress"),r=c.find(".cooked-progress-bar"),l=jQuery("#cooked-template-progress-text"),c.hasClass("cooked-active")||(c.addClass("cooked-active"),l.addClass("cooked-active"),r.css({width:"0%"}),a.reposition()),jQuery.post(cooked_admin_functions_js_vars.ajax_url,{action:"cooked_save_default_bulk",page:o,default_content:n,nonce:d},function(e){var t;e&&e.success&&(cooked_recipe_update_counter=Math.min((o+1)*cooked_bulk_per_page,i),t=Math.round(cooked_recipe_update_counter/i*100),r.css({width:t+"%"}),l.text(cooked_recipe_update_counter+" / "+i),e.data.has_more?cooked_set_default_template(o+1,i,n,d,a):(jQuery(".cooked-save-default-all").text(cooked_admin_functions_js_vars.i18n_applied),r.css({width:"100%"}),l.text(i+" / "+i),c.removeClass("cooked-active"),l.removeClass("cooked-active").text(""),a.reposition()))},"json"))}function cooked_updateTotalTimeValue(e,t){jQuery("#cooked-total-time").val(e+t)}function cooked_init_gallery_sorting(){jQuery("#cooked-recipe-image-gallery").sortable()}function init_nutrition_facts(e){e.find("input").each(function(){var e,t=jQuery(this),o=t.attr("id"),t=t.val(),i=jQuery('.cooked-nut-percent[data-labeltype="'+o+'"]').length;jQuery('.cooked-nut-label[data-labeltype="'+o+'"]').length&&(t?(jQuery('.cooked-nut-label[data-labeltype="'+o+'"]').text(t),jQuery('.cooked-nut-label[data-labeltype="'+o+'"]').parents("li").eq(0).show(),jQuery('.cooked-nut-label[data-labeltype="'+o+'"]').parents("p").eq(0).show(),i&&(e=(i=jQuery('.cooked-nut-percent[data-labeltype="'+o+'"]')).data("pdv"))&&(thisPercent=Math.ceil(t/e*100),i.text(thisPercent))):(jQuery('.cooked-nut-label[data-labeltype="'+o+'"]').text("___"),jQuery('.cooked-nut-label[data-labeltype="'+o+'"]').parents("li").eq(0).hide(),jQuery('.cooked-nut-label[data-labeltype="'+o+'"]').parents("p").eq(0).hide()))})}function cooked_reset_ingredient_builder(){var e=jQuery(".cooked-ingredient-block"),t=0,i=0,o=!1;0").text(e).html()}function b(e,t){if(u.empty(),e.length){s.attr("data-bulk-type","ingredients"),s.show(),k.removeAttr("disabled"),u.find(".cooked-bulk-add-preview-header").length||u.prepend('
'+h(_.i18n_bulk_add_amount)+''+h(_.i18n_bulk_add_unit)+''+h(_.i18n_bulk_add_name)+"
");for(var o=0;o'),d=l('"),a=l('
'),c=l('').text(_.i18n_bulk_add_heading_line_label),r=l('').val(e[o]),c=(a.append(c).append(r),l('')),r=l(''),i=l('');n.append(d).append(a).append(c).append(r).append(i),u.append(n)}}else s.attr("data-bulk-type",""),s.hide(),k.attr("disabled","disabled")}i.length&&(t=l("#cooked-bulk-add-textarea"),s=l("#cooked-bulk-add-preview"),u=l("#cooked-bulk-add-preview-list"),o=l("#cooked-bulk-add-title"),r=l("#cooked-bulk-add-type"),k=i.find(".cooked-bulk-add-submit"),p=i.find(".cooked-bulk-add-spinner"),_=cooked_admin_functions_js_vars,g=null,m="",t.on("input",function(){var e=r.val(),o=(e=>{for(var t=e.split(/[\r\n]+/),o=[],i=0;i'),a=l('"),c=l('');d.append(a).append(c),u.append(d)}}else s.attr("data-bulk-type",""),s.hide(),k.attr("disabled","disabled")}else t!==m&&(m=t,b(o,null),g&&clearTimeout(g),g=setTimeout(function(){var t;(t=o).length?(p.show().css("visibility","visible"),l.post(_.ajax_url,{action:"cooked_parse_bulk_ingredients",nonce:_.cooked_bulk_add_nonce,lines:t},function(e){p.hide();e=e.success&&e.data&&e.data.parsed?e.data.parsed:null;b(t,e)}).fail(function(){p.hide(),b(t,null)})):b([],null)},400))}),l(document).on("click",".cooked-bulk-add-button",function(e){e.preventDefault();var e=l(this).data("type");e=e,r.val(e),t.val(""),u.empty(),s.attr("data-bulk-type",""),s.hide(),k.attr("disabled","disabled"),p.hide(),m="","ingredients"===e?(o.text(_.i18n_bulk_add_ingredients),t.attr("placeholder",_.i18n_bulk_add_placeholder_ingredients),k.text(_.i18n_bulk_add_submit_ingredients)):(o.text(_.i18n_bulk_add_directions),t.attr("placeholder",_.i18n_bulk_add_placeholder_directions),k.text(_.i18n_bulk_add_submit_directions)),i.show(),t.focus()}),i.on("click",".cooked-bulk-add-close, .cooked-bulk-add-cancel",function(e){e.preventDefault(),n()}),i.on("click",function(e){l(e.target).is(i)&&n()}),l(document).on("keydown",function(e){"Escape"===e.key&&i.is(":visible")&&n()}),u.on("change",'input[type="checkbox"]',function(){var e=l(this).closest(".cooked-bulk-add-preview-row"),t=l(this).is(":checked");e.toggleClass("cooked-bulk-add-is-heading",t)}),k.on("click",function(e){var i;e.preventDefault(),l(this).attr("disabled")||(e=r.val(),i=[],"ingredients"===e?u.find(".cooked-bulk-add-preview-row").each(function(){var e=l(this),t=e.find('input[type="checkbox"]').is(":checked"),o=e.find(".cooked-bulk-add-preview-text").val().trim();o&&i.push(t?{text:o,heading:!0}:{heading:!1,amount:e.find(".cooked-bulk-add-parsed-amount").val().trim(),measurement:e.find(".cooked-bulk-add-parsed-unit").val().trim(),name:e.find(".cooked-bulk-add-parsed-name").val().trim()||o})}):u.find(".cooked-bulk-add-preview-row").each(function(){var e=l(this),t=e.find(".cooked-bulk-add-preview-text").val().trim(),e=e.find('input[type="checkbox"]').is(":checked");t&&i.push({text:t,heading:e})}),i.length&&(("directions"===e?cooked_bulk_add_directions:cooked_bulk_add_ingredients_parsed)(i),n()))}))}function cooked_bulk_add_directions(e){for(var t=jQuery("#cooked-directions-builder"),o=t.parent(),i=0;i{g(document).ready(function(){var c,o,t,e,i,n,d,a,r,s,l,u=g(".cooked-color-field"),k=g("#cooked_recipe_settings").find("select"),p=g("#cooked-recipe-tabs"),_=(g("#cooked-settings-wrap"),g("#cooked_recipe_settings")),m=_.find("input#submit");$_CookedTooltips=g(".cooked-tooltip"),$_CookedConditionals=g(".cooked-conditional-hidden"),$_CookedSortable=g(".cooked-sortable"),$_CookedRecipeSaveDefault=g(".cooked-layout-save-default"),$_CookedShortcodeField=g(".cooked-shortcode-field"),$_CookedIngredientBuilder=g("#cooked-ingredients-builder"),$_CookedAutoNutritionButton=g(".cooked-auto-nutrition-button"),$_CookedDirectionBuilder=g("#cooked-directions-builder"),$_CookedRecipeGallery=g("#cooked-recipe-image-gallery"),$_CookedNutritionFactsTab=g("#cooked-recipe-tab-content-nutrition"),$_CookedSettingsPanel=g("#cooked-settings-panel"),$_CookedSettingsTabs=g("#cooked-settings-tabs"),u.length&&u.wpColorPicker(),$_CookedSortable.length&&(document.addEventListener("touchstart",cookedSortableTouchHandler,{passive:!1}),document.addEventListener("touchmove",cookedSortableTouchHandler,{passive:!1}),document.addEventListener("touchend",cookedSortableTouchHandler,{passive:!1}),$_CookedSortable.find(".cooked-icon-drag").length?$_CookedSortable.sortable({handle:".cooked-icon-drag",stop:function(e,t){t.item.closest("#cooked-directions-builder").length&&cooked_reset_direction_builder();var t=t.item.find("textarea"),o=!(!cooked_admin_functions_js_vars.wp_editor_roles_allowed||"undefined"==typeof wp||!wp.editor||"function"!=typeof wp.editor.remove||"function"!=typeof wp.editor.initialize);t.length&&o&&(o=t.attr("name"),t=t.attr("id"),wp.editor.remove(t),wp.editor.initialize(t,{tinymce:{wpautop:!1,toolbar1:"bold,italic,underline,blockquote,strikethrough,bullist,numlist,alignleft,aligncenter,alignright,undo,redo,wp_link_advanced,unlink,fullscreen",toolbar2:"",toolbar3:"",toolbar4:"",height:100,textarea_name:o,plugins:"link lists fullscreen wordpress wplink",setup:function(e){}},quicktags:!0,mediaButtons:!1}))}}):$_CookedSortable.sortable({stop:function(e,t){t.item.closest("#cooked-directions-builder").length&&cooked_reset_direction_builder()}})),$_CookedRecipeSaveDefault.length&&($_CookedRecipeSaveDefault.tooltipster({theme:["tooltipster-light","tooltipster-sideTip-cooked"],trigger:"click",animation:"grow",delay:0,speed:200,maxWidth:275,contentAsHTML:!0,interactive:!0,functionReady:function(r,e){g(".cooked-save-default-all").on("click",function(e){e.preventDefault();var t,o=g(this),e=o.data("nonce"),i=o.data("bulk-nonce"),n=o.parent(),d=confirm(cooked_admin_functions_js_vars.i18n_confirm_save_default_all),a=g("#_recipe_settings_content"),c=tinymce.get("_recipe_settings_content");t=null===c?a.val():c.getContent(),d&&!o.hasClass("disabled")&&(n.find(".button, .button-primary").addClass("disabled"),g.post(cooked_admin_functions_js_vars.ajax_url,{action:"cooked_save_default",default_content:t,nonce:e},function(){g.post(cooked_admin_functions_js_vars.ajax_url,{action:"cooked_get_recipe_count",nonce:i},function(e){o.removeClass("button-primary").addClass("button"),e&&e.success&&0')}),$_CookedTooltips.length&&$_CookedTooltips.tooltipster({theme:["tooltipster-light","tooltipster-sideTip-cooked"],animation:"grow",delay:100,speed:200,maxWidth:275,contentAsHTML:!0,interactive:!0}),$_CookedShortcodeField.length&&$_CookedShortcodeField.on("click",function(e){g(this).select()}),$_CookedConditionals.length&&(c=[],$_CookedConditionals.each(function(){var e=g(this),t=g(this).data("condition"),o=g(this).data("value"),i=g("#"+t),o=!!o&&o.split(" "),n=e.is("li")||e.is("span")?"inline-block":"block";i.is(":checkbox")&&i.is(":checked")||i.is(":radio")&&i.is(":checked")||!(i.is(":checkbox")&&!i.is(":checked")||i.is(":radio")&&!i.is(":checked"))&&(!i.is(":checkbox")&&!o&&i.val()||!i.is(":checkbox")&&o&&-1 a").attr("href")).split("#"))[1],g(".cooked-settings-tab-content").hide(),g("#cooked-settings-tab-content-"+n).show(),k.on("click",function(e){g(".tab-content").hide();var t=g(this).find("a"),t=($_CookedSettingsTabs.find("li").removeClass("active"),g(this).addClass("active"),t.attr("href"));"migration"==(t=(t=t.split("#"))[1])?m.hide():m.show(),g(".cooked-settings-tab-content").hide(),g("#cooked-settings-tab-content-"+t).show(),g("#cooked-settings-panel").hasClass("stuck")?window.scrollTo(0,130):window.scrollTo(0,0)}),$_CookedSettingsPanel.on("click",".cooked-settings-image-remove",function(e){e.preventDefault();e=g(this).closest(".cooked-settings-image-field");e.removeClass("cooked-has-image"),e.find(".cooked-settings-image-preview-img").attr("src","").removeAttr("srcset").removeAttr("sizes"),e.find(".cooked-settings-image-input").val("0"),e.find(".cooked-settings-image-button").val(cooked_admin_functions_js_vars.i18n_image_title)}),$_CookedSettingsPanel.on("click",".cooked-settings-image-button",function(e){e.preventDefault();var o=g(this),i=o.closest(".cooked-settings-image-field");d&&d.off("select"),(d=wp.media({title:cooked_admin_functions_js_vars.i18n_image_title,button:{text:cooked_admin_functions_js_vars.i18n_image_button},library:{type:"image"}})).on("select",function(){var e=d.state().get("selection").first().toJSON(),t=(e.sizes&&e.sizes.thumbnail?e.sizes.thumbnail:e).url;i.addClass("cooked-has-image"),i.find(".cooked-settings-image-preview-img").attr("src",t).removeAttr("srcset").removeAttr("sizes"),i.find(".cooked-settings-image-input").val(e.id),o.val(cooked_admin_functions_js_vars.i18n_image_change)}),d.open()})),$_CookedIngredientBuilder.length&&(cooked_reset_ingredient_builder(),$_CookedIngredientBuilder.on("keydown",'input[data-ingredient-part="name"]',function(e){9!==e.keyCode&&13!==e.keyCode||g(this).parents(".cooked-ingredient-block").is(":last-child")&&(e.preventDefault(),g("#cooked-recipe-tab-content-ingredients").find(".cooked-add-ingredient-button").trigger("click"),$_CookedIngredientBuilder.find('.cooked-ingredient-block:last-child input[data-ingredient-part="amount"]').focus())}),$_CookedIngredientBuilder.parent().on("click",".cooked-show-substitution",function(e){e.preventDefault();e=g(this).parent();e.hasClass("cooked-expanded")?e.removeClass("cooked-expanded"):(e.addClass("cooked-expanded"),e.find('input[data-ingredient-part="sub_amount"]').focus())}),$_CookedIngredientBuilder.on("keyup change",'input[data-ingredient-part="sub_amount"], input[data-ingredient-part="sub_name"], select[data-ingredient-part="sub_measurement"]',function(e){var t=g(this).parents(".recipe-setting-block"),o=t.find('input[data-ingredient-part="sub_name"]').val();o&&o.trim()?t.addClass("cooked-has-substitution"):t.removeClass("cooked-has-substitution")}),$_CookedAutoNutritionButton.length&&$_CookedIngredientBuilder.on("change",'input[data-ingredient-part="name"]',function(e){var t=!1;$_CookedIngredientBuilder.find('input[data-ingredient-part="name"]').each(function(){if(""!=g(this).val())return!(t=!0)}),t?$_CookedAutoNutritionButton.prop("disabled",!1):$_CookedAutoNutritionButton.prop("disabled",!0)}),$_CookedIngredientBuilder.on("keyup",'input[data-ingredient-part="url"]',function(e){var t=g(this).val(),o=g(this).parents(".recipe-setting-block");t?o.addClass("cooked-has-url"):o.removeClass("cooked-has-url")}),$_CookedIngredientBuilder.parent().on("click",".cooked-add-ingredient-button",function(e){e.preventDefault();e=$_CookedIngredientBuilder.parent().find(".cooked-ingredient-template").clone().removeClass("cooked-template cooked-ingredient-template").addClass("cooked-ingredient-block");$_CookedIngredientBuilder.append(e),cooked_reset_ingredient_builder()}),$_CookedIngredientBuilder.parent().on("click",".cooked-add-heading-button",function(e){e.preventDefault();e=$_CookedIngredientBuilder.parent().find(".cooked-heading-template").clone().removeClass("cooked-template cooked-heading-template").addClass("cooked-ingredient-block cooked-ingredient-heading");$_CookedIngredientBuilder.append(e),cooked_reset_ingredient_builder()}),$_CookedIngredientBuilder.parent().on("click",".cooked-delete-ingredient",function(e){e.preventDefault(),g(this).parent().remove(),cooked_reset_ingredient_builder()})),$_CookedDirectionBuilder.length&&(cooked_reset_direction_builder(),$_CookedDirectionBuilder.parent().on("click",".cooked-show-heading-element",function(e){e.preventDefault();e=g(this).parent();e.hasClass("cooked-expanded")?e.removeClass("cooked-expanded"):(e.addClass("cooked-expanded"),e.find('input[data-direction-part="section_heading_element"]').focus())}),$_CookedDirectionBuilder.parent().on("click",".cooked-add-direction-button",function(e){e.preventDefault();e=$_CookedDirectionBuilder.parent().find(".cooked-direction-template").clone().removeClass("cooked-template cooked-direction-template").addClass("cooked-direction-block");$_CookedDirectionBuilder.append(e),cooked_reset_direction_builder()}),$_CookedDirectionBuilder.parent().on("click",".cooked-add-heading-button",function(e){e.preventDefault();e=$_CookedDirectionBuilder.parent().find(".cooked-heading-template").clone().removeClass("cooked-template cooked-heading-template").addClass("cooked-direction-block cooked-direction-heading");$_CookedDirectionBuilder.append(e),cooked_reset_direction_builder()}),$_CookedDirectionBuilder.parent().on("click",".cooked-delete-direction",function(e){e.preventDefault();var t,e=g(this).parent();cooked_admin_functions_js_vars.wp_editor_roles_allowed&&"undefined"!=typeof wp&&wp.editor&&"function"==typeof wp.editor.remove&&(t=e.find('textarea[data-direction-part="content"]').attr("id"))&&wp.editor.remove(t),e.remove(),cooked_reset_direction_builder()}),$_CookedDirectionBuilder.parent().on("click",".remove-image-button",function(e){e.preventDefault();e=g(this).parent();e.removeClass("cooked-has-image"),e.find("img").attr("src","").removeAttr("srcset").removeAttr("sizes"),e.find('input[data-direction-part="image"]').val(""),cooked_reset_direction_builder()}),$_CookedDirectionBuilder.parent().on("click",".remove-video-button",function(e){e.preventDefault();e=g(this).parent();e.removeClass("cooked-has-video"),e.find(".cooked-direction-video-preview").attr("src",""),e.find('input[data-direction-part="video"]').val(""),e.find(".direction-video-button").prop("value",cooked_admin_functions_js_vars.i18n_video_title),cooked_reset_direction_builder()}),g("body").on("click",".cooked-direction-img-placeholder, .cooked-direction-img",function(e){e.preventDefault(),g(this).parent().find(".direction-image-button").trigger("click")}),g("body").on("click",".direction-image-button",function(e){var t=g(this);s=t.data("id"),e.preventDefault(),a||(a=wp.media.frames.direction_image_frame=wp.media({title:cooked_admin_functions_js_vars.i18n_image_title,button:{text:cooked_admin_functions_js_vars.i18n_image_button},library:{type:"image"}})).on("select",function(){var e=a.state().get("selection").first().toJSON();g("#direction-"+s+"-image-src").attr("src",e.sizes.thumbnail.url).removeAttr("srcset").removeAttr("sizes").parent().addClass("cooked-has-image"),g('input[name="_recipe_settings[directions]['+s+'][image]"]').val(e.id),g('.direction-image-button[data-id="'+s+'"]').prop("value",cooked_admin_functions_js_vars.i18n_image_change)}),a.open()}),g("body").on("click",".cooked-direction-video-placeholder, .cooked-direction-video-preview",function(e){e.preventDefault(),g(this).parent().find(".direction-video-button").trigger("click")}),g("body").on("click",".direction-video-button",function(e){var t=g(this);s=t.data("id"),e.preventDefault(),r||(r=wp.media.frames.direction_video_frame=wp.media({title:cooked_admin_functions_js_vars.i18n_video_title,button:{text:cooked_admin_functions_js_vars.i18n_video_button},library:{type:"video"}})).on("select",function(){var e=r.state().get("selection").first().toJSON(),t=g('.direction-video-button[data-id="'+s+'"]').closest(".cooked-direction-video");t.find(".cooked-direction-video-preview").attr("src",e.url),t.find('input[data-direction-part="video"]').val(e.id),t.addClass("cooked-has-video"),g('.direction-video-button[data-id="'+s+'"]').prop("value",cooked_admin_functions_js_vars.i18n_video_change)}),r.open()})),cooked_init_bulk_add(g),$_CookedRecipeGallery.length&&(cooked_init_gallery_sorting(),g("body").on("click",".cooked-gallery-add-button",function(e){g(this);e.preventDefault(),l||(l=wp.media.frames.gallery_images_frame=wp.media({title:cooked_admin_functions_js_vars.i18n_gallery_image_title,button:{text:cooked_admin_functions_js_vars.i18n_gallery_image_title},library:{type:"image"},multiple:!0})).on("select",function(){var e,t,o,i=l.state().get("selection").toJSON();for(e in i)i.hasOwnProperty(e)&&(o=(t=i[e]).sizes.thumbnail.url,g("#cooked-recipe-image-gallery").append(''));cooked_init_gallery_sorting()}),l.open()}),g("body").on("click",".cooked-recipe-gallery-item img",function(e){e.preventDefault(),g(this).parent().find(".cooked-gallery-edit-button").trigger("click")}),g("body").on("click",".cooked-gallery-edit-button",function(e){var n=g(this),t=n.data("attachment-id"),d=(e.preventDefault(),wp.media.frames.gallery_images_frame=wp.media({title:cooked_admin_functions_js_vars.i18n_edit_image_title,button:{text:cooked_admin_functions_js_vars.i18n_edit_image_button},library:{type:"image"},multiple:!1}));d.on("open",function(){var e=d.state().get("selection");(attachment=wp.media.attachment(t)).fetch(),e.add(attachment?[attachment]:[])}),d.open(),d.on("select",function(){var e,t,o,i=d.state().get("selection").toJSON();for(e in i)i.hasOwnProperty(e)&&(o=(t=i[e]).sizes.thumbnail.url,n.parent().replaceWith(''));cooked_init_gallery_sorting()})}),$_CookedRecipeGallery.on("click",".remove-image-button",function(e){var t=g(this);s=t.data("id"),e.preventDefault(),s?(g("#direction-"+s+"-image-src").parent().removeClass("cooked-has-image").prop("src",!1),g('input[name="_recipe_settings[directions]['+s+'][image]"]').val(""),g('.direction-image-button[data-id="'+s+'"]').prop("value",cooked_admin_functions_js_vars.i18n_image_title)):t.parent().remove()})),$_CookedNutritionFactsTab.length&&(init_nutrition_facts($_CookedNutritionFactsTab),$_CookedNutritionFactsTab.on("keyup","input",function(e){init_nutrition_facts($_CookedNutritionFactsTab)})),g("#cooked-prep-time").length&&g("#cooked-prep-time,#cooked-cook-time").on("change",function(){cooked_updateTotalTimeValue(parseInt(g("#cooked-prep-time").val()),parseInt(g("#cooked-cook-time").val()))})})})(jQuery),0),cooked_bulk_per_page=20;function cooked_set_default_template(o,i,n,d,a){var c,r,s;i<=0||(c=jQuery("#cooked-template-progress"),r=c.find(".cooked-progress-bar"),s=jQuery("#cooked-template-progress-text"),c.hasClass("cooked-active")||(c.addClass("cooked-active"),s.addClass("cooked-active"),r.css({width:"0%"}),a.reposition()),jQuery.post(cooked_admin_functions_js_vars.ajax_url,{action:"cooked_save_default_bulk",page:o,default_content:n,nonce:d},function(e){var t;e&&e.success&&(cooked_recipe_update_counter=Math.min((o+1)*cooked_bulk_per_page,i),t=Math.round(cooked_recipe_update_counter/i*100),r.css({width:t+"%"}),s.text(cooked_recipe_update_counter+" / "+i),e.data.has_more?cooked_set_default_template(o+1,i,n,d,a):(jQuery(".cooked-save-default-all").text(cooked_admin_functions_js_vars.i18n_applied),r.css({width:"100%"}),s.text(i+" / "+i),c.removeClass("cooked-active"),s.removeClass("cooked-active").text(""),a.reposition()))},"json"))}function cooked_updateTotalTimeValue(e,t){jQuery("#cooked-total-time").val(e+t)}function cooked_init_gallery_sorting(){jQuery("#cooked-recipe-image-gallery").sortable()}function init_nutrition_facts(e){e.find("input").each(function(){var e,t=jQuery(this),o=t.attr("id"),t=t.val(),i=jQuery('.cooked-nut-percent[data-labeltype="'+o+'"]').length;jQuery('.cooked-nut-label[data-labeltype="'+o+'"]').length&&(t?(jQuery('.cooked-nut-label[data-labeltype="'+o+'"]').text(t),jQuery('.cooked-nut-label[data-labeltype="'+o+'"]').parents("li").eq(0).show(),jQuery('.cooked-nut-label[data-labeltype="'+o+'"]').parents("p").eq(0).show(),i&&(e=(i=jQuery('.cooked-nut-percent[data-labeltype="'+o+'"]')).data("pdv"))&&(thisPercent=Math.ceil(t/e*100),i.text(thisPercent))):(jQuery('.cooked-nut-label[data-labeltype="'+o+'"]').text("___"),jQuery('.cooked-nut-label[data-labeltype="'+o+'"]').parents("li").eq(0).hide(),jQuery('.cooked-nut-label[data-labeltype="'+o+'"]').parents("p").eq(0).hide()))})}function cooked_reset_ingredient_builder(){var e=jQuery(".cooked-ingredient-block"),t=0,i=0,o=!1;0").text(e).html()}function h(e,t){if(u.empty(),e.length){l.attr("data-bulk-type","ingredients"),l.show(),k.removeAttr("disabled"),u.find(".cooked-bulk-add-preview-header").length||u.prepend('
'+f(_.i18n_bulk_add_amount)+''+f(_.i18n_bulk_add_unit)+''+f(_.i18n_bulk_add_name)+"
");for(var o=0;o'),d=s('"),a=s('
'),c=s('').text(_.i18n_bulk_add_heading_line_label),r=s('').val(e[o]),c=(a.append(c).append(r),s('')),r=s(''),i=s('');n.append(d).append(a).append(c).append(r).append(i),u.append(n)}}else l.attr("data-bulk-type",""),l.hide(),k.attr("disabled","disabled")}i.length&&(t=s("#cooked-bulk-add-textarea"),l=s("#cooked-bulk-add-preview"),u=s("#cooked-bulk-add-preview-list"),o=s("#cooked-bulk-add-title"),r=s("#cooked-bulk-add-type"),k=i.find(".cooked-bulk-add-submit"),p=i.find(".cooked-bulk-add-spinner"),_=cooked_admin_functions_js_vars,m=null,g="",t.on("input",function(){var e=r.val(),o=(e=>{for(var t=e.split(/[\r\n]+/),o=[],i=0;i'),a=s('"),c=s('');d.append(a).append(c),u.append(d)}}else l.attr("data-bulk-type",""),l.hide(),k.attr("disabled","disabled")}else t!==g&&(g=t,h(o,null),m&&clearTimeout(m),m=setTimeout(function(){var t;(t=o).length?(p.show().css("visibility","visible"),s.post(_.ajax_url,{action:"cooked_parse_bulk_ingredients",nonce:_.cooked_bulk_add_nonce,lines:t},function(e){p.hide();e=e.success&&e.data&&e.data.parsed?e.data.parsed:null;h(t,e)}).fail(function(){p.hide(),h(t,null)})):h([],null)},400))}),s(document).on("click",".cooked-bulk-add-button",function(e){e.preventDefault();var e=s(this).data("type");e=e,r.val(e),t.val(""),u.empty(),l.attr("data-bulk-type",""),l.hide(),k.attr("disabled","disabled"),p.hide(),g="","ingredients"===e?(o.text(_.i18n_bulk_add_ingredients),t.attr("placeholder",_.i18n_bulk_add_placeholder_ingredients),k.text(_.i18n_bulk_add_submit_ingredients)):(o.text(_.i18n_bulk_add_directions),t.attr("placeholder",_.i18n_bulk_add_placeholder_directions),k.text(_.i18n_bulk_add_submit_directions)),i.show(),t.focus()}),i.on("click",".cooked-bulk-add-close, .cooked-bulk-add-cancel",function(e){e.preventDefault(),n()}),i.on("click",function(e){s(e.target).is(i)&&n()}),s(document).on("keydown",function(e){"Escape"===e.key&&i.is(":visible")&&n()}),u.on("change",'input[type="checkbox"]',function(){var e=s(this).closest(".cooked-bulk-add-preview-row"),t=s(this).is(":checked");e.toggleClass("cooked-bulk-add-is-heading",t)}),k.on("click",function(e){var i;e.preventDefault(),s(this).attr("disabled")||(e=r.val(),i=[],"ingredients"===e?u.find(".cooked-bulk-add-preview-row").each(function(){var e=s(this),t=e.find('input[type="checkbox"]').is(":checked"),o=e.find(".cooked-bulk-add-preview-text").val().trim();o&&i.push(t?{text:o,heading:!0}:{heading:!1,amount:e.find(".cooked-bulk-add-parsed-amount").val().trim(),measurement:e.find(".cooked-bulk-add-parsed-unit").val().trim(),name:e.find(".cooked-bulk-add-parsed-name").val().trim()||o})}):u.find(".cooked-bulk-add-preview-row").each(function(){var e=s(this),t=e.find(".cooked-bulk-add-preview-text").val().trim(),e=e.find('input[type="checkbox"]').is(":checked");t&&i.push({text:t,heading:e})}),i.length&&(("directions"===e?cooked_bulk_add_directions:cooked_bulk_add_ingredients_parsed)(i),n()))}))}function cooked_bulk_add_directions(e){for(var t=jQuery("#cooked-directions-builder"),o=t.parent(),i=0;i/* Main Color */ .cooked-button, @@ -21,42 +22,57 @@ .cooked-recipe-search .cooked-taxonomy-selected:hover, .cooked-browse-search-button:hover { background:; }/* Dark Mode */ -.cooked-recipe-search .cooked-browse-select { background:rgba(255,255,255,0.075); box-shadow:inset 0 0 0 1px rgba(255,255,255,0.05); } -.cooked-recipe-search .cooked-browse-select:hover { background:rgba(255,255,255,0.10); box-shadow:inset 0 0 0 1px rgba(255,255,255,0.05); } -.cooked-recipe-search .cooked-browse-select-block { background:rgba(0,0,0,0.95); box-shadow:none; border-radius:5px; } -.cooked-recipe-search input[type="text"] { background:rgba(0,0,0,0.25); border-color:rgba(255,255,255,0.15); } -.cooked-recipe-search .cooked-sortby-wrap { background:rgba(255,255,255,0.10); } -.cooked-recipe-search .cooked-sortby-wrap:hover { background:rgba(255,255,255,0.15); } -.cooked-recipe-search .cooked-sortby-wrap > select { border-color:rgba(0,0,0,0.15); } -.cooked-recipe-search .cooked-sortby-wrap > select > option { color:#333; } -.cooked-recipe-grid .cooked-recipe-inside { background:rgba(0,0,0,0.25); box-shadow:none !important } -.cooked-pagination-numbered > span { color:rgba(255,255,255,0.5); } -.cooked-recipe-info span.cooked-print > a, -.cooked-recipe-info span.cooked-fsm-button { color:rgba(255,255,255,0.5); } -.cooked-recipe-info span.cooked-print > a:hover, -.cooked-recipe-info span.cooked-fsm-button:hover { color:#fff; } -.cooked-recipe-ingredients .cooked-ingredient-checkbox { border-color:rgba(255,255,255,0.25); } -.cooked-recipe-ingredients .cooked-ingredient-checkbox:hover { border-color:rgba(255,255,255,0.5); } -.cooked-nutrition-label { background:rgba(0,0,0,0.25); border:none; border-radius:5px; } -.cooked-nutrition-label .cooked-nutrition-title { color:#fff; } -body .cooked-nutrition-label .cooked-nut-hr { border-color:rgba(255,255,255,0.15); } -body .cooked-nutrition-label dt.cooked-nut-spacer, body .cooked-nutrition-label dl.cooked-nut-spacer { background:rgba(255,255,255,0.15); } -body .cooked-nutrition-label dt, -body .cooked-nutrition-label dl.cooked-nut-bottom dt, -body .cooked-nutrition-label dl.cooked-nut-bottom dt:nth-last-child(2):nth-child(2n) { border-color:rgba(255,255,255,0.15); } -.cooked-recipe-card { background:rgba(0,0,0,0.25); box-shadow:none !important; } -.cooked-recipe-card-modern .cooked-recipe-card-sep, .cooked-recipe-card-modern-centered .cooked-recipe-card-sep { background:rgba(255,255,255,0.25); } -.cooked-recipe-grid .cooked-recipe-image-empty { background:rgba(255,255,255,0.15); } -.cooked-fsm { background:#000; color:#fff; } -.cooked-fsm .cooked-fsm-ingredients { background:rgba(255,255,255,0.1); } -.cooked-recipe .cooked-rating-stars > .cooked-rating-star.cooked-rating-star-empty, -.cooked-recipe .cooked-ratable .cooked-rating-stars.cooked-user-rated > .cooked-rating-star.cooked-rating-star-empty { color:rgba(255,255,255,0.25); } -.cooked-allergen, -.cooked-allergen .cooked-icon { color:rgba(255,255,255,0.5); } -.cooked-allergen:hover .cooked-icon { color:#fff; } + { background:rgba(255,255,255,0.075); box-shadow:inset 0 0 0 1px rgba(255,255,255,0.05); } + { background:rgba(255,255,255,0.10); box-shadow:inset 0 0 0 1px rgba(255,255,255,0.05); } + { background:rgba(0,0,0,0.95); box-shadow:none; border-radius:5px; } + { background:rgba(0,0,0,0.25); border-color:rgba(255,255,255,0.15); } + { background:rgba(255,255,255,0.10); } + { background:rgba(255,255,255,0.15); } + select' ); ?> { border-color:rgba(0,0,0,0.15); } + select > option' ); ?> { color:#333; } + span.cooked-tax-column-title' ); ?> { border-bottom-color:rgba(255,255,255,0.15); } + { color:rgba(255,255,255,0.5); } + { color:#fff; } + { background:rgba(0,0,0,0.25); box-shadow:none !important } + span' ); ?> { color:rgba(255,255,255,0.5); } + a, .cooked-recipe-info span.cooked-fsm-button' ); ?> { color:rgba(255,255,255,0.5); } + a:hover, .cooked-recipe-info span.cooked-fsm-button:hover' ); ?> { color:#fff; } + { color:#fff; opacity:0.5; } + { border-color:rgba(255,255,255,0.25); } + { border-color:rgba(255,255,255,0.25); } + { border-color:rgba(255,255,255,0.25); color:#fff; } + { border-color:rgba(255,255,255,0.5); } + { background:rgba(0,0,0,0.25); border:none; border-radius:5px; } + { color:#fff; } + { border-color:rgba(255,255,255,0.15); } + { background:rgba(255,255,255,0.15); } + { border-color:rgba(255,255,255,0.15); } + { background:rgba(0,0,0,0.25); box-shadow:none !important; } + { box-shadow:none !important; } + { background:rgba(255,255,255,0.25); } + { background:rgba(255,255,255,0.15); } + { background:#000; color:#fff; } + { background:rgba(255,255,255,0.1); } + .cooked-rating-star.cooked-rating-star-empty, .cooked-recipe .cooked-ratable .cooked-rating-stars.cooked-user-rated > .cooked-rating-star.cooked-rating-star-empty' ); ?> { color:rgba(255,255,255,0.25); } + { color:rgba(255,255,255,0.5); } + { color:#fff; } + { background:#191919; color:#fff; box-shadow:0 -5px 30px rgba(0,0,0,0.4); } + { color:rgba(255,255,255,0.35); } + { color:rgba(255,255,255,0.65); } + { background:rgba(255,255,255,0.05); } + { color:rgba(255,255,255,0.5); } + { background:rgba(255,255,255,0.15); } + { background:rgba(255, 255,255,0.25); color:#fff; } + { background:rgba(79, 79, 79, 1); color:#fff; } section.cooked-left>span,.cooked-recipe-info>span{line-height:1.3rem;position:relative;box-sizing:border-box;vertical-align:top;margin:0 2rem 1rem 0;font-size:.85rem;display:inline-block;width:auto}.cooked-recipe-info>section.cooked-right>span{line-height:1.4rem;position:relative;box-sizing:border-box;vertical-align:top;margin:0 0 1rem 2rem;font-size:.85rem;display:inline-block;width:auto}.cooked-recipe-info>section.cooked-left>span:last-child,.cooked-recipe-info>span:last-child{margin-right:0}.cooked-recipe-info>section.cooked-right>span:first-child{margin-left:0}.cooked-recipe-info strong{font-size:.75rem;font-weight:800;text-transform:uppercase;display:block}.cooked-recipe-info span.cooked-time{padding-left:3rem}.cooked-recipe-info span.cooked-time-icon{opacity:.5;width:1rem;height:1rem;font-size:2.2rem;display:block;position:absolute;top:50%;left:0;margin:-1.1rem 0 0 0}.cooked-recipe-info span.cooked-time-icon i.cooked-icon{display:block}.cooked-recipe-info span.cooked-servings{padding-left:3rem}.cooked-recipe-info span.cooked-servings select.cooked-servings-changer{opacity:0;position:absolute;bottom:3px;left:0;-webkit-appearance:none;cursor:pointer;border:none;background:0 0;width:100%;padding:0;margin:0}.cooked-recipe-info span.cooked-servings-icon{opacity:.5;width:1rem;height:1rem;font-size:2.2rem;display:block;position:absolute;top:50%;left:0;margin:-1.1rem 0 0 0}.cooked-recipe-info span.cooked-servings-icon i.cooked-icon{display:block}.cooked-left{float:left;display:inline-block;width:auto}.cooked-right{float:right;display:inline-block;width:auto}.cooked-nutrition-label{width:100%;max-width:400px;margin:0 auto 2rem;background:#fff;font-size:.9rem;border:1px solid #aaa;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;padding:15px}.cooked-nutrition-label .cooked-nutrition-title{font-size:2rem;line-height:1;letter-spacing:0;font-weight:800;padding:0;margin:0 0 .4rem;color:#333}.cooked-nutrition-label.cooked-float-right{max-width:45%;margin:0 0 3rem 3rem;float:right}.cooked-nutrition-label.cooked-float-left{max-width:45%;margin:0 3rem 3rem 0;float:left}body .cooked-nutrition-label p{margin:0!important;padding:0!important}body .cooked-nutrition-label p.cooked-daily-value-text{padding:.5rem 0 0 0!important;margin:0!important;font-size:.9rem}body .cooked-nutrition-label dl{margin:0!important;padding:0!important}body .cooked-nutrition-label dt{position:relative;margin:0;padding:2px 0;border-top:1px solid #aaa}body .cooked-nutrition-label dt dt{padding:2px 0 0;margin:2px 0 0}body .cooked-nutrition-label dt:after{content:"";display:table;clear:both}body .cooked-nutrition-label div.cooked-nut-spacer,body .cooked-nutrition-label dt.cooked-nut-spacer{border:none;height:.5rem;padding:0;background:#333}body .cooked-nutrition-label dl dt.cooked-nut-no-border,body .cooked-nutrition-label>dl>dt:first-child{border:none}body .cooked-nutrition-label dt dl{padding:0;margin:0 0 0 1.5rem}body .cooked-nutrition-label .cooked-nut-hr{border:none;border-top:1rem solid #333;margin:1rem 0 0;padding:0}body .cooked-nutrition-label strong{font-weight:800}body .cooked-nutrition-label strong.cooked-nut-heading{font-size:.75rem}body .cooked-nutrition-label span.cooked-calories-fat,body .cooked-nutrition-label strong.cooked-nut-label{font-weight:400}body .cooked-nutrition-label .cooked-nut-right{float:right}body .cooked-nutrition-label dl.cooked-nut-bottom dt{border-top:none;border-bottom:1px solid #aaa;float:left;width:50%;box-sizing:border-box}body .cooked-nutrition-label dl.cooked-nut-bottom dt strong{font-weight:400}body .cooked-nutrition-label dl.cooked-nut-bottom dt:last-child,body .cooked-nutrition-label dl.cooked-nut-bottom dt:nth-last-child(2){border:none}body .cooked-nutrition-label dl.cooked-nut-bottom dt:nth-last-child(2):nth-child(even){border-bottom:1px solid #aaa}#cooked-print-options{margin:0 0 2rem;background:0 0;padding:2.2rem 0 2.5rem;border-bottom:1px dashed rgba(0,0,0,.25)}#cooked-print-options h3{margin:0 0 .25rem;font-size:.75rem;text-transform:uppercase;font-weight:800}#cooked-print-options label{font-size:.9rem;cursor:pointer;position:relative;display:inline-block;top:1px;margin-right:1rem}#cooked-print-options .cooked-button{float:right;margin-top:1.45rem}.cooked-button{-webkit-transition:all .2s cubic-bezier(.42,0,.15,1);-moz-transition:all .2s cubic-bezier(.42,0,.15,1);-o-transition:all .2s cubic-bezier(.42,0,.15,1);transition:all .2s cubic-bezier(.42,0,.15,1);-webkit-transition-timing-function:cubic-bezier(.42,0,.15,1);-moz-transition-timing-function:cubic-bezier(.42,0,.15,1);-o-transition-timing-function:cubic-bezier(.42,0,.15,1);transition-timing-function:cubic-bezier(.42,0,.15,1)}@media print{body{padding:20px 30px;font-size:.9rem}#cooked-print-options{display:none}} \ No newline at end of file +body,html{color:#000;box-sizing:border-box;padding:0;margin:0;width:100%;height:100%;font-family:sans-serif;font-size:1rem;line-height:1.6rem}body *{box-sizing:border-box}body img{max-width:100%;height:auto}body{padding:0 30px;max-width:800px;margin:0 auto}body a{color:inherit;text-decoration:none}body h1{font-size:1.75rem;line-height:1.5;margin:0 0 1rem;padding:0}body p{font-size:1rem;line-height:1.6;margin:0 0 1rem;padding:0}#cooked-print-logo{margin:1.5rem 0 1rem}#cooked-print-logo img.cooked-print-logo-image{display:block;max-height:80px;width:auto;height:auto}#cooked-print-logo .cooked-print-logo-text{display:block;font-size:1.5rem;font-weight:800;line-height:1.3}.cooked-clearfix:after{content:"";display:table;clear:both}.cooked-button,button.cooked-button{cursor:pointer;border:none;display:inline-block;padding:8px 10px;line-height:1;font-size:13px;font-weight:600;color:#fff;background:#666;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cooked-button:hover,button.cooked-button:hover{background:#333}.cooked-servings-switcher{display:block}.cooked-servings-switcher .cooked-button:first-child{margin-right:1rem}.cooked-servings-switcher .cooked-button:last-child{margin-left:1rem}.cooked-post-featured-image{width:100%;max-width:100%;height:auto;border:none;display:block;margin:0 0 2rem;padding:0}.cooked-post-featured-image img{width:100%;max-width:100%}.cooked-recipe-ingredients{display:block;padding:0;margin:0 0 2rem}.cooked-recipe-ingredients .cooked-heading{margin:1rem 0 .3rem;display:block;font-weight:600;font-size:1.25rem;line-height:1.5}.cooked-recipe-ingredients .cooked-heading:first-child{margin:0}.cooked-recipe-ingredients .cooked-ingredient{position:relative;padding:.5rem 0 0 2rem;margin:0;font-size:inherit}.cooked-recipe-ingredients .cooked-ingredient .cooked-ing-name{line-height:1.4rem;padding:1px 0}.cooked-recipe-ingredients .cooked-ingredient-checkbox{transform:scale(1);position:absolute;top:.5rem;left:0;display:inline-block;width:1rem;height:1rem;line-height:1rem;border:1px solid #ddd;border-color:rgba(0,0,0,.2);margin:.2rem .8rem 0 0}.cooked-recipe-ingredients .cooked-ingredient-checkbox.cooked-checked:after{font-family:CookedIcons;content:'\f01d';position:absolute;top:0;left:0;font-size:.6rem;line-height:1.8rem;width:100%;height:100%;text-align:center}.cooked-recipe-ingredients .cooked-ingredient.cooked-checked{text-decoration:line-through;opacity:.5}.cooked-recipe-directions{display:block;padding:0;margin:0 0 2rem}.cooked-recipe-directions .cooked-heading{margin:0 0 1rem;display:block;font-weight:600;font-size:1.25rem;line-height:1.5}.cooked-recipe-directions .cooked-direction{position:relative;padding:0;margin:0;font-size:inherit}.cooked-recipe-directions .cooked-direction img{max-width:100%;height:auto;display:block;margin:0 0 2rem;padding:0;border:none}.cooked-recipe-directions .cooked-direction.cooked-direction-has-number .cooked-dir-content{padding-left:2.75rem}.cooked-recipe-directions .cooked-direction.cooked-direction-has-number-wide .cooked-dir-content{padding-left:2.75rem}.cooked-recipe-directions .cooked-direction.cooked-direction-has-number-wide .cooked-direction-number{width:2ch;text-align:right;font-variant-numeric:tabular-nums}.cooked-recipe-directions .cooked-direction-number{opacity:.35;position:absolute;display:inline-block;width:auto;height:1rem;line-height:1rem;font-weight:800;top:0;left:0;font-size:1.5rem}.cooked-recipe-notes{display:block;padding:0;margin:0 0 2rem}.cooked-recipe-notes ol,.cooked-recipe-notes ul{padding-left:1.5rem}.cooked-recipe-notes .cooked-heading{margin:0 0 1rem;display:block;font-weight:600;font-size:1.25rem;line-height:1.5}.cooked-recipe-excerpt{display:block;padding:0;margin:0 0 1rem}.cooked-recipe-info{display:block;padding:0;margin:0 0 1rem;line-height:2.25rem}.cooked-recipe-info>section.cooked-left>span,.cooked-recipe-info>span{line-height:1.3rem;position:relative;box-sizing:border-box;vertical-align:top;margin:0 2rem 1rem 0;font-size:.85rem;display:inline-block;width:auto}.cooked-recipe-info>section.cooked-right>span{line-height:1.4rem;position:relative;box-sizing:border-box;vertical-align:top;margin:0 0 1rem 2rem;font-size:.85rem;display:inline-block;width:auto}.cooked-recipe-info>section.cooked-left>span:last-child,.cooked-recipe-info>span:last-child{margin-right:0}.cooked-recipe-info>section.cooked-right>span:first-child{margin-left:0}.cooked-recipe-info strong{font-size:.75rem;font-weight:800;text-transform:uppercase;display:block}.cooked-recipe-info span.cooked-time{padding-left:3rem}.cooked-recipe-info span.cooked-time-icon{opacity:.5;width:1rem;height:1rem;font-size:2.2rem;display:block;position:absolute;top:50%;left:0;margin:-1.1rem 0 0 0}.cooked-recipe-info span.cooked-time-icon i.cooked-icon{display:block}.cooked-recipe-info span.cooked-servings{padding-left:3rem}.cooked-recipe-info span.cooked-servings select.cooked-servings-changer{opacity:0;position:absolute;bottom:3px;left:0;-webkit-appearance:none;cursor:pointer;border:none;background:0 0;width:100%;padding:0;margin:0}.cooked-recipe-info span.cooked-servings-icon{opacity:.5;width:1rem;height:1rem;font-size:2.2rem;display:block;position:absolute;top:50%;left:0;margin:-1.1rem 0 0 0}.cooked-recipe-info span.cooked-servings-icon i.cooked-icon{display:block}.cooked-left{float:left;display:inline-block;width:auto}.cooked-right{float:right;display:inline-block;width:auto}.cooked-nutrition-label{width:100%;max-width:400px;margin:0 auto 2rem;background:#fff;font-size:.9rem;border:1px solid #aaa;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;padding:15px}.cooked-nutrition-label .cooked-nutrition-title{font-size:2rem;line-height:1;letter-spacing:0;font-weight:800;padding:0;margin:0 0 .4rem;color:#333}.cooked-nutrition-label.cooked-float-right{max-width:45%;margin:0 0 3rem 3rem;float:right}.cooked-nutrition-label.cooked-float-left{max-width:45%;margin:0 3rem 3rem 0;float:left}body .cooked-nutrition-label p{margin:0!important;padding:0!important}body .cooked-nutrition-label p.cooked-daily-value-text{padding:.5rem 0 0 0!important;margin:0!important;font-size:.9rem}body .cooked-nutrition-label dl{margin:0!important;padding:0!important}body .cooked-nutrition-label dt{position:relative;margin:0;padding:2px 0;border-top:1px solid #aaa}body .cooked-nutrition-label dt dt{padding:2px 0 0;margin:2px 0 0}body .cooked-nutrition-label dt:after{content:"";display:table;clear:both}body .cooked-nutrition-label div.cooked-nut-spacer,body .cooked-nutrition-label dt.cooked-nut-spacer{border:none;height:.5rem;padding:0;background:#333}body .cooked-nutrition-label dl dt.cooked-nut-no-border,body .cooked-nutrition-label>dl>dt:first-child{border:none}body .cooked-nutrition-label dt dl{padding:0;margin:0 0 0 1.5rem}body .cooked-nutrition-label .cooked-nut-hr{border:none;border-top:1rem solid #333;margin:1rem 0 0;padding:0}body .cooked-nutrition-label strong{font-weight:800}body .cooked-nutrition-label strong.cooked-nut-heading{font-size:.75rem}body .cooked-nutrition-label span.cooked-calories-fat,body .cooked-nutrition-label strong.cooked-nut-label{font-weight:400}body .cooked-nutrition-label .cooked-nut-right{float:right}body .cooked-nutrition-label dl.cooked-nut-bottom dt{border-top:none;border-bottom:1px solid #aaa;float:left;width:50%;box-sizing:border-box}body .cooked-nutrition-label dl.cooked-nut-bottom dt strong{font-weight:400}body .cooked-nutrition-label dl.cooked-nut-bottom dt:last-child,body .cooked-nutrition-label dl.cooked-nut-bottom dt:nth-last-child(2){border:none}body .cooked-nutrition-label dl.cooked-nut-bottom dt:nth-last-child(2):nth-child(even){border-bottom:1px solid #aaa}#cooked-print-options{margin:0 0 2rem;background:0 0;padding:2.2rem 0 2.5rem;border-bottom:1px dashed rgba(0,0,0,.25)}#cooked-print-options h3{margin:0 0 .25rem;font-size:.75rem;text-transform:uppercase;font-weight:800}#cooked-print-options label{font-size:.9rem;cursor:pointer;position:relative;display:inline-block;top:1px;margin-right:1rem}#cooked-print-options .cooked-button{float:right;margin-top:1.45rem}.cooked-button{-webkit-transition:all .2s cubic-bezier(.42,0,.15,1);-moz-transition:all .2s cubic-bezier(.42,0,.15,1);-o-transition:all .2s cubic-bezier(.42,0,.15,1);transition:all .2s cubic-bezier(.42,0,.15,1);-webkit-transition-timing-function:cubic-bezier(.42,0,.15,1);-moz-transition-timing-function:cubic-bezier(.42,0,.15,1);-o-transition-timing-function:cubic-bezier(.42,0,.15,1);transition-timing-function:cubic-bezier(.42,0,.15,1)}@media print{body{padding:20px 30px;font-size:.9rem}#cooked-print-options{display:none}} \ No newline at end of file diff --git a/assets/css/responsive.php b/assets/css/responsive.php index 7557192..a5b4487 100644 --- a/assets/css/responsive.php +++ b/assets/css/responsive.php @@ -1,6 +1,7 @@ @media screen and ( max-width: px ) { @@ -75,10 +76,11 @@ .cooked-fsm .cooked-fsm-ingredients.cooked-active, .cooked-fsm .cooked-fsm-directions-wrap.cooked-active { display:block; } - .cooked-fsm .cooked-fsm-ingredients, - .cooked-fsm .cooked-fsm-directions-wrap { background:#000; color:#fff; } { background:#000; color:#fff; } diff --git a/assets/css/style.css b/assets/css/style.css index e4a332b..576c9ef 100644 --- a/assets/css/style.css +++ b/assets/css/style.css @@ -993,7 +993,7 @@ body .cooked-nutrition-label .cooked-nutrition-facts-powered-by-edamam img { font-size: 0.75rem; position: absolute; top: 50%; - right: 1.5rem; + right: .75rem; line-height: 1.25rem; height: 1.25rem; margin-top: -0.5rem; @@ -1770,7 +1770,8 @@ body .cooked-pagination-numbered > a:hover { .cooked-fsm .cooked-close-fsm { color: #fff; position: absolute; - top: 0; + top: 50%; + transform: translateY(-50%); right: 1.25rem; } .cooked-fsm h2 { @@ -2053,3 +2054,10 @@ body.cooked-fsm-active #wpadminbar { margin: 0; vertical-align: middle; } + +.cooked-recipe-directions .cooked-direction video.cooked-direction-video { + width: 100%; + aspect-ratio: 16 / 9; + max-height: 400px; + border-radius: 4px; +} diff --git a/assets/css/style.min.css b/assets/css/style.min.css index 2db6c21..3624302 100644 --- a/assets/css/style.min.css +++ b/assets/css/style.min.css @@ -1 +1 @@ -#wp-admin-bar-cooked-ab .ab-icon:before{font-family:CookedIcons;content:"\f035";font-size:17px;top:-2px}.cooked-clearfix:after{content:"";display:table;clear:both}.cooked-noscroll{overflow:hidden;width:100%;height:100%}.cooked-hidden-schema{display:none}.cooked-fsm .cooked-fsm-mobile-nav{display:none}.cooked-browse-search-button,.cooked-button,.cooked-fsm .cooked-fsm-top,.cooked-icon-loading,.cooked-profile-tabs,.cooked-progress span{color:#fff!important;text-decoration:none!important}.cooked-recipe-search .cooked-taxonomy-selected .cooked-field-title,.cooked-recipe-search .cooked-taxonomy-selected:before{color:#fff}.cooked-button,button.cooked-button,input[type=button].cooked-button,input[type=submit].cooked-button{box-sizing:border-box;cursor:pointer;display:inline-block;padding:.4rem .65rem;height:2.1rem;line-height:1.25rem;font-size:.9rem;font-weight:500;letter-spacing:.03rem;color:#fff;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cooked-button i.cooked-icon{color:#fff;font-size:1rem;font-weight:400}.cooked-button.cooked-square-button{padding:0;width:2.25rem;height:2.25rem;line-height:2.25rem;text-align:center}.cooked-button.cooked-square-button i.cooked-icon{font-size:1rem}.cooked-servings-switcher{display:block}.cooked-servings-switcher .cooked-button:first-child{margin-right:1rem}.cooked-servings-switcher .cooked-button:last-child{margin-left:1rem}.cooked-recipe-info span.cooked-measurement-system{padding-left:3rem}.cooked-recipe-info span.cooked-measurement-system select.cooked-measurement-system-changer{opacity:0;position:absolute;bottom:0;left:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;border:none;background:0 0;width:100%;padding:0;margin:0}.cooked-recipe-info span.cooked-measurement-system-icon{opacity:.5;width:1rem;height:1rem;font-size:2.2rem;line-height:1;display:block;position:absolute;top:50%;left:0;margin:-1.1rem 0 0 0}.cooked-recipe-info span.cooked-measurement-system-icon i.cooked-icon{display:block}.cooked-post-featured-image{max-width:100%;height:auto;border:none;display:block;margin:0 0 2rem;padding:0}body .cooked-post-featured-image img{display:block;width:100%;height:auto}.cooked-recipe-ingredients{display:block;padding:0;margin:0 0 2rem}.cooked-recipe-ingredients .cooked-heading{margin:1rem 0 .3rem;display:block;font-weight:600;font-size:1.25rem;line-height:1.5}.cooked-recipe-ingredients .cooked-heading:first-child{margin-top:0}.cooked-recipe-ingredients .cooked-ingredient{position:relative;padding:.5rem 0 0 2rem;margin:0;font-size:inherit}.cooked-recipe-ingredients .cooked-ingredient.cooked-ing-no-checkbox{padding-left:0}.cooked-recipe-ingredients .cooked-ingredient .cooked-ing-name{line-height:1.4rem;padding:1px 0}.cooked-recipe-ingredients .cooked-ingredient-checkbox{transform:scale(1);position:absolute;top:.9rem;left:0;cursor:pointer;display:inline-block;width:1rem;height:1rem;line-height:1rem;border:1px solid #ddd;border-color:rgba(0,0,0,.2);margin:0 .8rem 0 0}.cooked-recipe-ingredients .cooked-ingredient-checkbox:active{transform:scale(.9)}.cooked-recipe-ingredients .cooked-ingredient-checkbox:hover{border-color:#bbb;border-color:rgba(0,0,0,.5)}.cooked-recipe-ingredients .cooked-ingredient-checkbox.cooked-checked:after{font-family:CookedIcons;content:"\f01d";position:absolute;top:0;left:0;font-size:.6rem;line-height:1rem;width:100%;height:100%;text-align:center}.cooked-recipe-ingredients .cooked-ingredient.cooked-checked{text-decoration:line-through;opacity:.5}.cooked-ingredient-substitution{font-style:italic;color:#777;margin-left:5px;display:inline-block}.cooked-ing-sub-label{font-style:normal;font-weight:600;font-size:.85em;color:#999;margin-right:2px}.cooked-recipe-directions{display:block;padding:0;margin:0 0 2rem}.cooked-recipe-directions .cooked-heading{margin:0 0 1rem;display:block;font-weight:600;font-size:1.25rem;line-height:1.5}.cooked-recipe-directions .cooked-direction{position:relative;padding:0;margin:0;font-size:inherit}.cooked-recipe-directions .cooked-direction img{max-width:100%;height:auto;display:block;margin:0 0 2rem;padding:0;border:none}.cooked-recipe-directions .cooked-direction.cooked-direction-has-number .cooked-dir-content{padding-left:2.75rem}.cooked-recipe-directions .cooked-direction.cooked-direction-has-number-wide .cooked-dir-content{padding-left:2.75rem}.cooked-recipe-directions .cooked-direction.cooked-direction-has-number-wide .cooked-direction-number{width:2ch;text-align:right;font-variant-numeric:tabular-nums}.cooked-recipe-directions .cooked-direction-number{opacity:.35;position:absolute;display:inline-block;width:auto;height:1.5rem;line-height:1.5rem;font-weight:800;top:0;left:0;font-size:1.5rem}.cooked-recipe-excerpt{display:block;padding:0;margin:0 0 1rem}.cooked-recipe-info{display:block;padding:0;margin:0 0 1rem}.cooked-recipe-info>section.cooked-left>span,.cooked-recipe-info>span{line-height:1.25rem;position:relative;box-sizing:border-box;vertical-align:top;margin:0 2rem 1rem 0;display:inline-block;width:auto}.cooked-recipe-info>section.cooked-right>span{line-height:1.3rem;position:relative;box-sizing:border-box;vertical-align:top;margin:0 0 1rem 2rem;display:inline-block;width:auto}.cooked-recipe-info>section.cooked-left>span:last-child,.cooked-recipe-info>span:last-child{margin-right:0}.cooked-recipe-info>section.cooked-right>span:first-child{margin-left:0}.cooked-recipe-info strong{font-size:.75rem;letter-spacing:.03rem;font-weight:800;text-transform:uppercase;display:block}.cooked-recipe-notes{display:block;padding:0;margin:0 0 2rem}.cooked-recipe-notes .cooked-heading{margin:0 0 1rem;display:block;font-weight:600;font-size:1.25rem;line-height:1.5}.cooked-recipe-info span.cooked-print,.cooked-recipe-info span.cooked-print>a{height:2rem;display:inline-block}.cooked-recipe-info span.cooked-print>a{color:rgba(0,0,0,.4)}.cooked-recipe-info span.cooked-print>a:hover{color:rgba(0,0,0,.6)}.cooked-recipe-info span.cooked-print .cooked-icon{font-size:2.25rem;line-height:2.5rem}.cooked-recipe-info span.cooked-fsm-button{cursor:pointer;color:rgba(0,0,0,.4);height:2rem;display:inline-block}.cooked-recipe-info span.cooked-fsm-button:hover{color:rgba(0,0,0,.6)}.cooked-recipe-info span.cooked-fsm-button .cooked-icon{font-size:2.25rem;line-height:2.5rem}.cooked-recipe span.cooked-author,.cooked-recipe-info span.cooked-author{padding-left:3.25rem}.cooked-recipe span.cooked-author.cooked-no-avatar,.cooked-recipe-info span.cooked-author.cooked-no-avatar{padding-left:0}.cooked-recipe span.cooked-author-avatar,.cooked-recipe-info span.cooked-author-avatar{width:2.5rem;height:2.5rem;display:block;position:absolute;top:50%;left:0;margin:-1.25rem 0 0 0}.cooked-recipe span.cooked-author-avatar img,.cooked-recipe-info span.cooked-author-avatar img{margin:0;padding:0;display:block;height:auto;width:100%;max-width:100%;max-height:100%;border-radius:100px}.cooked-author-avatar,.cooked-author-avatar img{border-radius:5rem}.cooked-recipe-info span.cooked-time{padding-left:3rem}.cooked-recipe-info span.cooked-time-icon{opacity:.5;width:1rem;height:1rem;font-size:2.2rem;display:block;position:absolute;top:50%;left:0;margin:-1.1rem 0 0 0}.cooked-recipe-info span.cooked-time-icon i.cooked-icon{display:block}.cooked-timer{padding-left:2px}.cooked-timer i.cooked-icon{opacity:.6}body .cooked-timer a{font-weight:600;cursor:pointer;text-decoration:none}body .cooked-timer a:hover{text-decoration:none}#cooked-timers-wrap{z-index:99999;white-space:nowrap;overflow:hidden;border-radius:10px 10px 0 0;background:#fff;box-shadow:0 -5px 30px rgba(0,0,0,.15);line-height:1.6rem;font-size:1rem;width:50%;max-width:100%;height:7.5rem;position:fixed;transform:translate3d(0,7.2em,0);opacity:0;bottom:0;right:50%;margin:0 -25% 0 0;box-sizing:border-box}#cooked-timers-wrap.cooked-visible{transform:translate3d(0,0,0);opacity:1}#cooked-timers-wrap .cooked-timer-block{overflow:hidden;position:relative;display:block;height:0;padding:0;width:100%;opacity:0;padding:0 1.5rem 0 6rem;box-sizing:border-box}#cooked-timers-wrap .cooked-timer-block.cooked-visible{opacity:1;height:7.5rem;padding:1.9rem 1.5rem 1.55rem 6rem}#cooked-timers-wrap .cooked-timer-block>span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:auto}#cooked-timers-wrap .cooked-timer-block i.cooked-icon-times{line-height:2rem;color:rgba(0,0,0,.25);position:absolute;font-size:2rem;top:2.5rem;left:2rem;cursor:pointer}#cooked-timers-wrap .cooked-timer-block i.cooked-icon-times:hover{color:inherit}#cooked-timers-wrap .cooked-timer-block .cooked-timer-step{font-size:1.1rem;font-weight:800;text-transform:uppercase}#cooked-timers-wrap .cooked-timer-block .cooked-timer-desc{font-size:1.2rem;width:100%;padding-right:14rem;box-sizing:border-box;font-weight:400;color:rgba(0,0,0,.65)}#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj{font-weight:600;position:absolute;top:2.5rem;right:2rem;width:13.5rem;font-size:2rem;line-height:2rem}#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj>div,#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj>i.cooked-icon{display:inline-block}#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj>i.cooked-icon-pause,#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj>i.cooked-icon-play,#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj>i.cooked-icon-reverse{cursor:pointer;opacity:.5;width:2rem;text-align:center;margin-right:.5rem;position:relative;font-size:2rem;transform:scale(.75)}#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj>i.cooked-icon-play{display:none}#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj>i.cooked-icon:hover{opacity:1}#cooked-timers-wrap.cooked-multiples{margin:0;right:0;border-radius:10px 0 0 0;width:20rem}#cooked-timers-wrap.cooked-multiples .cooked-timer-block{padding-left:3.25rem}#cooked-timers-wrap.cooked-multiples .cooked-timer-block.cooked-visible{padding-top:1rem;line-height:1.5rem;padding-left:3.25rem}#cooked-timers-wrap.cooked-multiples .cooked-timer-block .cooked-timer-step{font-size:.9rem}#cooked-timers-wrap.cooked-multiples .cooked-timer-block .cooked-timer-desc{font-size:1rem;padding:0}#cooked-timers-wrap.cooked-multiples .cooked-timer-block .cooked-timer-obj{top:auto;right:auto;width:auto;font-size:1.5rem;line-height:2rem}#cooked-timers-wrap.cooked-multiples .cooked-timer-block .cooked-timer-obj>i.cooked-icon{font-size:1.5rem;width:1.3rem;margin-right:.5rem}#cooked-timers-wrap.cooked-multiples .cooked-timer-block i.cooked-icon-times{line-height:1rem;font-size:1rem;top:1.4rem;left:1.2rem}#cooked-timers-wrap .cooked-timer-block .cooked-progress{display:block;position:absolute;left:0;bottom:0;height:.5rem;width:100%;background:rgba(0,0,0,.15)}#cooked-timers-wrap .cooked-timer-block .cooked-progress span{width:0;display:block;position:absolute;left:0;top:0;height:.5rem}#cooked-timers-wrap .cooked-timer-block.cooked-paused{background:#f9f9f9}#cooked-timers-wrap .cooked-timer-block.cooked-paused .cooked-timer-obj{color:rgba(0,0,0,.5)}#cooked-timers-wrap .cooked-timer-block.cooked-complete{background:rgba(255,0,0,.05)}#cooked-timers-wrap .cooked-timer-block.cooked-complete .cooked-progress span{background:red}#cooked-timers-wrap .cooked-timer-block.cooked-complete .cooked-timer-obj{color:red}.cooked-recipe-info span.cooked-servings{padding-left:3rem}.cooked-recipe-info span.cooked-servings select.cooked-servings-changer{opacity:0;position:absolute;bottom:0;left:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;border:none;background:0 0;width:100%;padding:0;margin:0}.cooked-recipe-info span.cooked-servings-icon{opacity:.5;width:1rem;height:1rem;font-size:2.2rem;display:block;position:absolute;top:50%;left:0;margin:-1.1rem 0 0 0}.cooked-recipe-info span.cooked-servings-icon i.cooked-icon{display:block}.cooked-left{float:left;display:inline-block;width:auto}.cooked-right{float:right;display:inline-block;width:auto}.cooked-recipe-gallery{height:1px;overflow:hidden;opacity:0;transform:translate3d(0,10px,0);padding:0;margin:0}.cooked-recipe-gallery .fotorama__thumb-border{border-color:#333}.cooked-recipe-gallery .fotorama__caption__wrap{background:#333;color:#fff}.cooked-recipe-gallery .fotorama__stage__frame.fotorama__active{background:#333}.cooked-recipe-gallery.cooked-gallery-loaded{height:auto;overflow:inherit;opacity:1;transform:translate3d(0,0,0);margin:0 0 2rem}.cooked-nutrition-label{background:#fff;font-size:.9rem;border:1px solid #aaa;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;padding:10px;margin:0 0 2rem;font-family:Helvetica,Arial,sans-serif;container-name:nutrition-label;container-type:inline-size}.cooked-nutrition-label .cooked-nutrition-title{font-size:2.3rem;line-height:1;letter-spacing:0;font-weight:800;padding:0 0 .5rem 0;margin:0;color:#333;border-bottom:1px solid #aaa}.cooked-nutrition-label.cooked-float-left{max-width:45%;margin:0 3rem 3rem 0;float:left}body .cooked-nutrition-label p{margin:0!important;padding:0!important}body .cooked-nutrition-label p.cooked-daily-value-text{padding:.75rem 0 .15rem 0!important;margin:0!important;font-size:.9rem;line-height:1.3rem!important}body .cooked-nutrition-label p.cooked-daily-value-text strong{font-weight:400}body .cooked-nutrition-label dl{margin:0!important;padding:0!important}body .cooked-nutrition-label dt{position:relative;margin:0;padding:2px 0;border-top:1px solid #aaa}body .cooked-nutrition-label dt.cooked-calories{border-top:none;display:flex;justify-content:space-between;align-items:baseline;padding-bottom:10px}body .cooked-nutrition-label dt.cooked-calories strong{font-size:2rem;font-weight:800}body .cooked-nutrition-label dt.cooked-calories strong.cooked-nut-label{font-size:2.5rem}body .cooked-nutrition-label dt.cooked-nut-servings{border-top:none;padding-bottom:0}body .cooked-nutrition-label dt.cooked-serving-size{border-top:none;padding-top:0}body .cooked-nutrition-label div.cooked-serving-size strong,body .cooked-nutrition-label dt.cooked-serving-size strong,body .cooked-nutrition-label dt.cooked-serving-size strong.cooked-nut-label{font-size:1.3rem;font-weight:800}body .cooked-nutrition-label div.cooked-nut-servings p,body .cooked-nutrition-label dt.cooked-nut-servings p{font-size:1.2rem}body .cooked-nutrition-label dt dt{padding:2px 0 0;margin:2px 0 0}body .cooked-nutrition-label dt:after{content:"";display:table;clear:both}body .cooked-nutrition-label dt.no-after:after{content:none}body .cooked-nutrition-label div.cooked-nut-spacer,body .cooked-nutrition-label dt.cooked-nut-spacer{border:none;height:.5rem;padding:0;background:#333;margin-top:.3rem}body .cooked-nutrition-label dl dt.cooked-nut-no-border,body .cooked-nutrition-label>dl>dt:first-child{border:none}body .cooked-nutrition-label dt dl{margin:0 0 0 1.5rem!important}body .cooked-nutrition-label .cooked-nut-hr{border:none;border-top:1rem solid #333;margin:.1rem 0 0;padding:0}body .cooked-nutrition-label strong{font-weight:800}body .cooked-nutrition-label strong.cooked-nut-heading{font-size:1rem}body .cooked-nutrition-label strong.cooked-nut-label{font-weight:400}body .cooked-nutrition-label dl dl strong.cooked-nut-right{font-weight:800}body .cooked-nutrition-label .cooked-nut-right{float:right}body .cooked-nutrition-label dl.cooked-nut-bottom dt{border-top:none;border-bottom:1px solid #aaa;float:left;width:100%;box-sizing:border-box}body .cooked-nutrition-label dl.cooked-nut-bottom dt strong{font-weight:400}body .cooked-nutrition-label dl.cooked-nut-bottom dt:last-child{border:none}body .cooked-nutrition-label dl.cooked-nut-bottom dt:nth-last-child(2):nth-child(even){border-bottom:1px solid #aaa}.widget .cooked-nutrition-label{margin:0}body .cooked-nutrition-label .cooked-nutrition-facts-powered-by-edamam img{float:right;height:2rem}.cooked-recipe-search{box-sizing:border-box;padding:0;margin:0;width:100%;display:block;border:1px solid transparent;position:relative}.cooked-recipe-search .cooked-field-wrap,.cooked-recipe-search .cooked-fields-wrap{display:inline-block;box-sizing:border-box;width:100%;margin:0 1% 0 0}.cooked-recipe-search .cooked-fields-wrap{margin:0}.cooked-recipe-search .cooked-browse-select{display:block;cursor:pointer;position:relative;border-radius:3px;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;background:rgba(0,0,0,.075);box-shadow:inset 0 0 0 1px rgba(0,0,0,.05);width:100%;font-size:1rem;line-height:3rem;height:auto;padding:0 1rem}.cooked-recipe-search .cooked-browse-select:hover{background:rgba(0,0,0,.1)}.cooked-recipe-search .cooked-browse-select .cooked-field-title{font-size:.9rem;vertical-align:top}.cooked-recipe-search .cooked-taxonomy-selected{border-radius:3px}.cooked-recipe-search .cooked-sortby-wrap{background:#f5f5f5;position:absolute;top:0;height:3rem;width:12rem;display:inline-block;margin:0 1px 0 0;right:3.5rem}.cooked-recipe-search .cooked-sortby-wrap>select{margin:0;box-shadow:none;position:relative;width:100%;background:0 0;cursor:pointer;font-size:.9rem;border:none;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(0,0,0,.1);-webkit-appearance:none;-moz-appearance:none;appearance:none;height:100%;border-radius:0;display:inline-block;padding:0 1.25rem}.cooked-recipe-search .cooked-sortby-wrap:hover{background:#eee}.cooked-recipe-search input[type=text]{margin:0;vertical-align:initial;box-shadow:none;display:inline-block;box-sizing:border-box;background:#fff;width:100%;height:3rem;padding:0 1rem;font-size:1rem;border:1px solid rgba(0,0,0,.15);border-right:none}.cooked-recipe-search .cooked-3-search-fields>*,.cooked-recipe-search .cooked-4-search-fields>*{float:left}.cooked-recipe-search .cooked-field-wrap-select{position:relative}.cooked-recipe-search .cooked-field-wrap-select:before,.cooked-recipe-search .cooked-sortby-wrap:before{content:"\f00b";opacity:.25;font-family:CookedIcons;font-size:.75rem;position:absolute;top:50%;right:1.5rem;line-height:1.25rem;height:1.25rem;margin-top:-.5rem}.cooked-recipe-search .cooked-field-wrap-select:hover:before,.cooked-recipe-search .cooked-sortby-wrap:hover:before{opacity:.75;margin-top:-.5rem}.cooked-recipe-search .cooked-fields-wrap{padding-right:3.5rem;position:relative}.cooked-recipe-search .cooked-fields-wrap>.cooked-field-wrap-select{width:14%}.cooked-recipe-search .cooked-fields-wrap>.cooked-browse-search{width:85%;max-width:85%;margin:0}.cooked-recipe-search.cooked-search-no-sorting.cooked-search-no-browse .cooked-fields-wrap>.cooked-browse-search{width:100%}.cooked-recipe-search .cooked-browse-search-button{position:absolute;top:0;right:1px;width:3.5rem;text-decoration:none;font-size:1rem;text-align:center;color:#fff;line-height:3rem;height:3rem}.cooked-recipe-search .cooked-browse-search-button:hover{color:#fff;text-decoration:none}.cooked-recipe-search .cooked-browse-select-block{display:flex;color:inherit;cursor:default;visibility:hidden;opacity:0;transform:translate3d(0,-6px,0);box-sizing:border-box;z-index:99;position:absolute;width:auto;background:#fff;top:4rem;left:-10px;margin:0;line-height:1.5rem;border-radius:6px}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column{display:block;width:25%;min-width:25%;box-sizing:border-box;padding:0 .75rem}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column>div{max-height:16rem;overflow:auto}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column>div>span{display:block}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column>div>a,.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column>span{display:block;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column>span.cooked-tax-column-title{font-size:.9rem;font-weight:800;text-transform:uppercase;margin:0 0 .6rem;padding:0 10px .6rem 0;border-bottom:1px solid rgba(0,0,0,.15)}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column>div>a{line-height:1.6rem}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column>div>span.cooked-tax-sub-item{margin-left:.75rem}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column i.cooked-icon{font-size:.9rem;color:rgba(0,0,0,.5)}.cooked-recipe-search .cooked-fields-wrap.cooked-1-search-fields .cooked-browse-select-block{width:170%;padding:1.5rem}.cooked-recipe-search .cooked-fields-wrap.cooked-1-search-fields .cooked-browse-select-block .cooked-tax-column{width:100%;padding:0}.cooked-recipe-search .cooked-browse-select.cooked-active .cooked-browse-select-block{visibility:visible;opacity:1;transform:translate3d(0,-1px,0)}.cooked-recipe-search .cooked-browse-select-block{box-shadow:0 2px 2px rgba(0,0,0,.05),0 4px 4px rgba(0,0,0,.05),0 8px 8px rgba(0,0,0,.05),0 16px 16px rgba(0,0,0,.05),0 32px 32px rgba(0,0,0,.05),0 64px 64px rgba(0,0,0,.05)}.cooked-browse-select-inline-block{display:flex;color:inherit;cursor:default;visibility:visible;opacity:1;box-sizing:border-box;z-index:99;position:relative;width:auto;background:#fff;margin:10px 2px 3rem;line-height:1.5rem;border-radius:6px;padding:1.5rem}.cooked-browse-select-inline-block .cooked-tax-column{display:block;width:100%;box-sizing:border-box;padding:0 .75rem}.cooked-browse-select-inline-block .cooked-tax-column>div{max-height:16rem;overflow:auto}.cooked-browse-select-inline-block .cooked-tax-column>div>span{display:block}.cooked-browse-select-inline-block .cooked-tax-column>div>a,.cooked-browse-select-inline-block .cooked-tax-column>span{display:block;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.cooked-browse-select-inline-block .cooked-tax-column>span.cooked-tax-column-title{font-size:.9rem;font-weight:800;text-transform:uppercase;margin:0 0 .6rem;padding:0 10px .6rem 0;border-bottom:1px solid rgba(0,0,0,.15)}.cooked-browse-select-inline-block .cooked-tax-column>div>a{line-height:1.6rem}.cooked-browse-select-inline-block .cooked-tax-column>div>span.cooked-tax-sub-item{margin-left:.75rem}.cooked-browse-select-inline-block .cooked-tax-column i.cooked-icon{font-size:.9rem;color:rgba(0,0,0,.5)}.cooked-browse-select-inline-block{box-shadow:0 2px 2px -1px rgba(0,0,0,.15)}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap{padding:0;display:block}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap>.cooked-browse-search{width:100%;max-width:100%;border-right:1px solid rgba(0,0,0,.15);margin:3% 0}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-1-search-fields .cooked-browse-select-block{width:100%;left:0}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap>.cooked-field-wrap-select{display:block;width:100%}.cooked-recipe-search.cooked-search-compact .cooked-sortby-wrap{display:block;position:relative;width:67%;right:auto;top:auto;float:left;margin:0}.cooked-recipe-search.cooked-search-compact .cooked-sortby-wrap>select{position:absolute;width:100%;border:1px solid rgba(0,0,0,.15);margin:0}.cooked-recipe-search.cooked-search-compact .cooked-browse-search-button{width:30%;right:auto;position:relative;display:block;float:right}.cooked-recipe-search.cooked-search-compact .cooked-browse-select-block{top:3rem;left:0;max-height:16rem;overflow:auto;transform:translate3d(0,-1px,0)}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-1-search-fields .cooked-browse-select-block{width:100%;padding:1.5rem}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-2-search-fields .cooked-browse-select-block{width:100%;padding:1.5rem}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-3-search-fields .cooked-browse-select-block{width:100%;padding:1.5rem}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-4-search-fields .cooked-browse-select-block{width:100%;padding:1.5rem}.cooked-recipe-search.cooked-search-compact .cooked-browse-select-block .cooked-tax-column{float:none;padding:0 0 1.5rem 0}.cooked-recipe-search.cooked-search-compact .cooked-browse-select-block .cooked-tax-column:last-child{padding:0}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-1-search-fields .cooked-browse-select-block .cooked-tax-column{width:100%}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-2-search-fields .cooked-browse-select-block .cooked-tax-column{width:100%}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-3-search-fields .cooked-browse-select-block .cooked-tax-column{width:100%}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-4-search-fields .cooked-browse-select-block .cooked-tax-column{width:100%}.cooked-recipe-search.cooked-search-compact.cooked-search-no-sorting .cooked-fields-wrap>.cooked-browse-search{width:80%;margin:3% 0}.cooked-recipe-search.cooked-search-compact.cooked-search-no-sorting .cooked-browse-search-button{width:20%;margin:3% 0}.cooked-recipe-search.cooked-search-compact.cooked-search-no-browse .cooked-browse-search-button,.cooked-recipe-search.cooked-search-compact.cooked-search-no-browse .cooked-fields-wrap>.cooked-browse-search{margin:0 0 3%}.cooked-recipe-search.cooked-search-compact.cooked-search-no-sorting.cooked-search-no-browse .cooked-browse-search-button,.cooked-recipe-search.cooked-search-compact.cooked-search-no-sorting.cooked-search-no-browse .cooked-fields-wrap>.cooked-browse-search{margin:0}.cooked-author-list-heading{display:block;margin:0 0 2rem}.cooked-author-list-heading .cooked-author-avatar{float:left;width:3rem;height:auto;display:block;margin:0 1rem 0 0}.cooked-author-list-heading .cooked-author-avatar img{display:block;margin:0}.cooked-author-list-heading .cooked-meta-title{font-size:1.25rem;line-height:1.2rem;margin:0}.cooked-author-list-heading a{font-size:.9rem}body p.cooked-none-found{display:block;margin:0;padding:1rem 0 2rem;color:#888;text-align:center;font-style:italic}.cooked-recipe-grid{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);transform:translate3d(0,0,0);position:relative;box-sizing:border-box;padding:0;margin:3% -1.5%;width:103%;display:flex;flex-wrap:wrap}.cooked-recipe-grid .cooked-recipe{width:30.333%;min-width:30.333%;display:block;box-sizing:border-box;margin:0 1.5% 3%;padding:0}.cooked-recipe-grid .cooked-recipe .cooked-recipe-card-title{cursor:pointer;color:inherit;text-decoration:none}.cooked-recipe-grid .cooked-recipe .cooked-recipe-card-title:hover{text-decoration:none!important}.cooked-recipe-grid.cooked-columns-1 .cooked-recipe{width:97%;min-width:97%}.cooked-recipe-grid.cooked-columns-2 .cooked-recipe{width:47%;min-width:47%}.cooked-recipe-grid.cooked-columns-3 .cooked-recipe{width:30.333%;min-width:30.333%}.cooked-recipe-grid.cooked-columns-4 .cooked-recipe{width:22%;min-width:22%}.cooked-recipe-grid.cooked-columns-5 .cooked-recipe{width:17%;min-width:17%}.cooked-recipe-grid.cooked-columns-6 .cooked-recipe{width:13.666%;min-width:13.666%}.cooked-recipe a,.cooked-recipe a:hover,.cooked-recipe-info a,.cooked-recipe-info a:hover,.cooked-recipe-search a,.cooked-recipe-search:hover{box-shadow:none!important}.cooked-recipe-card{text-align:left;background:#fff;text-decoration:none!important;border:none!important;color:inherit!important;display:block;overflow:hidden;border-radius:3px;margin:0 auto 1rem;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}.cooked-recipe-card-content>span,.cooked-recipe-card>span{display:block!important}.cooked-recipe-card:hover{text-decoration:none!important;border:none!important;color:inherit!important}.cooked-recipe-card-image{background-size:cover;background-position:center;display:block;margin:0;padding:0;height:250px;width:100%;position:relative}.cooked-recipe-card .cooked-recipe-image-empty{display:block;margin:0;padding:0;height:250px;width:100%;position:relative}.cooked-recipe-card .cooked-recipe-card-sep{display:none}.cooked-recipe-card-content{padding:1rem 1.5rem;margin:0}.cooked-recipe-card-title{display:block;font-weight:600;margin:.5rem 0;font-size:1.25rem;line-height:1.65rem}.cooked-recipe-card-author{margin:.5rem 0;font-size:.9rem}.cooked-recipe-card-excerpt{display:block;margin:.5rem 0;font-size:1rem}.cooked-recipe-card-centered,.cooked-recipe-card-modern-centered{text-align:center}.cooked-recipe-card-modern,.cooked-recipe-card-modern-centered{transform:translate3d(0,0,0);border-radius:10px;box-shadow:0 2px 3px rgba(0,0,0,.04),inset 0 0 0 1px rgba(0,0,0,.1)}.cooked-recipe-card-modern .cooked-recipe-card-author,.cooked-recipe-card-modern .cooked-recipe-card-excerpt,.cooked-recipe-card-modern .cooked-recipe-card-title,.cooked-recipe-card-modern-centered .cooked-recipe-card-author,.cooked-recipe-card-modern-centered .cooked-recipe-card-excerpt,.cooked-recipe-card-modern-centered .cooked-recipe-card-title{margin:.25rem 0}.cooked-recipe-card-modern .cooked-recipe-card-content,.cooked-recipe-card-modern-centered .cooked-recipe-card-content{padding:1.25rem 1.5rem}.cooked-recipe-card-modern .cooked-recipe-card-author,.cooked-recipe-card-modern-centered .cooked-recipe-card-author{opacity:.75}.cooked-recipe-card-modern .cooked-recipe-card-sep,.cooked-recipe-card-modern-centered .cooked-recipe-card-sep{margin:1rem 0;display:block;width:15%;height:6px;border-radius:3px;background:#ddd}.cooked-recipe-card-modern-centered .cooked-recipe-card-sep{margin:1rem auto}.cooked-recipe-card-modern-centered:hover,.cooked-recipe-card-modern:hover{transform:translate3d(0,-2px,0)!important;box-shadow:0 5px 5px rgba(0,0,0,.05),inset 0 0 0 1px rgba(0,0,0,.1)}.cooked-recipe-card-modern-centered:hover .cooked-recipe-card-sep,.cooked-recipe-card-modern:hover .cooked-recipe-card-sep{width:25%}.widget .cooked-recipe-card{margin:0 auto}.cooked-recipe-term-list .cooked-term-item a{display:block;padding:5px 0;border-top:1px solid rgba(0,0,0,.1)}.cooked-shortcode-recipe-list{margin:0 auto 1rem}.cooked-shortcode-recipe-list .cooked-srl-single{box-sizing:border-box;border:none;border-top:1px solid #ddd;border-top:1px solid rgba(0,0,0,.15);position:relative;display:block;padding:.6rem 0 0 0;margin:0 0 1rem}.cooked-shortcode-recipe-list .cooked-srl-single:hover{border:none;border-top:1px solid #ddd;border-top:1px solid rgba(0,0,0,.15)}.cooked-shortcode-recipe-list .cooked-srl-single.cooked-srl-has-image{padding-left:4rem;min-height:3.75rem}.cooked-shortcode-recipe-list .cooked-srl-image{margin:0;padding:0}.cooked-shortcode-recipe-list .cooked-srl-image img{width:3rem;height:3rem;border-radius:3px;position:absolute;top:.9rem;left:0;display:block;margin:0;padding:0}.cooked-shortcode-recipe-list .cooked-srl-sep{display:none}.cooked-shortcode-recipe-list .cooked-srl-content{line-height:1.4rem;padding:0;margin:0}.cooked-shortcode-recipe-list .cooked-srl-title{line-height:1.4rem;display:block;font-weight:600;margin:.25rem 0;font-size:1rem}.cooked-shortcode-recipe-list .cooked-srl-author{line-height:1.4rem;margin:.25rem 0;font-size:.9rem;opacity:.75}.cooked-shortcode-recipe-list .cooked-srl-single:first-child{border:none;padding-top:0}.cooked-shortcode-recipe-list .cooked-srl-single:first-child .cooked-srl-image img{top:0}.cooked-shortcode-recipe-list .cooked-srl-single.cooked-srl-has-image:first-child{min-height:3rem}.cooked-pagination-numbered{text-align:center;display:block;margin:0 0 2rem}.cooked-pagination-numbered>a,.cooked-pagination-numbered>span{font-size:1.2rem;font-weight:600;display:inline-block;padding:0 5px;background:0 0}.cooked-pagination-numbered>span{color:rgba(0,0,0,.25)}body .cooked-pagination-numbered>a{text-decoration:none;border:none}body .cooked-pagination-numbered>a:hover{text-decoration:none;border:none}.cooked-fsm{box-sizing:border-box;display:none;opacity:0;transform:scale(.95);position:fixed;top:0;left:0;width:100%;height:100%;background:#fff;z-index:99998}.cooked-fsm.cooked-visible{display:block}.cooked-fsm.cooked-active{opacity:1;transform:scale(1)}.cooked-fsm .cooked-fsm-top{font-size:1.2rem;font-weight:300;text-align:center;box-sizing:border-box;position:absolute;top:0;left:0;width:100%;color:#fff;padding:0 4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:3.5rem;height:3.5rem}.cooked-fsm .cooked-fsm-ingredients{box-sizing:border-box;padding:5.5rem 2rem 1rem;font-size:1rem;line-height:1.6rem;width:30%;height:100%;background:#f9f9f9;overflow-y:scroll;-webkit-overflow-scrolling:touch;position:absolute;top:0;left:0}.cooked-fsm .cooked-recipe-ingredients{margin-top:-.75rem}.cooked-fsm .cooked-recipe-ingredients .cooked-ingredient{padding:.75rem 0 0 2rem}.cooked-fsm .cooked-recipe-ingredients .cooked-heading{font-size:1.25rem}.cooked-fsm .cooked-recipe-ingredients .cooked-heading:first-child{padding-top:.75rem}.cooked-fsm .cooked-recipe-ingredients .cooked-ingredient-checkbox{top:.75rem}.cooked-fsm .cooked-fsm-directions-wrap{box-sizing:border-box;padding:5.5rem 2rem 1rem;font-size:1rem;line-height:1.6rem;width:70%;height:100%;overflow-y:scroll;-webkit-overflow-scrolling:touch;position:absolute;top:0;left:30%}.cooked-fsm .cooked-fsm-directions p{margin:0 0 1.5rem;font-size:1.2rem;line-height:1.6rem}.cooked-fsm .cooked-recipe-directions .cooked-heading{font-size:1.5rem}.cooked-fsm .cooked-recipe-directions .cooked-direction-number{font-size:1.8rem}.cooked-fsm .cooked-recipe-directions .cooked-direction.cooked-direction-has-number .cooked-dir-content{padding-left:3.05rem}.cooked-fsm .cooked-recipe-directions .cooked-direction.cooked-direction-has-number-wide .cooked-dir-content{padding-left:3.05rem}.cooked-fsm .cooked-close-fsm{color:#fff;position:absolute;top:0;right:1.25rem}.cooked-fsm h2{margin:0 0 2rem;padding:0;font-size:1rem;text-transform:uppercase;letter-spacing:.05rem;font-weight:800}.cooked-fsm-directions .cooked-panel,.cooked-fsm-ingredients .cooked-panel,.cooked-fsm-notes .cooked-panel{padding-left:1%;padding-right:2%}.cooked-fsm-notes .cooked-panel .cooked-recipe-notes{font-size:1.2rem;line-height:1.6rem}.cooked-fsm-notes .cooked-panel .cooked-recipe-notes{margin:0 0 1rem}.cooked-fsm-notes .cooked-panel .cooked-recipe-notes ol,.cooked-fsm-notes .cooked-panel .cooked-recipe-notes ul{padding-left:1.5rem}.cooked-fsm-notes .cooked-panel .cooked-recipe-notes ul li{margin:0 0 1rem 1rem}.cooked-fsm .cooked-fsm-mobile-nav{box-sizing:border-box;position:absolute;top:3.5rem;left:0;margin:-1px 0 0 0;width:100%;padding:0;line-height:3.5rem;z-index:9999999}.cooked-fsm .cooked-fsm-mobile-nav a{text-transform:uppercase;font-size:.9rem;font-weight:700;letter-spacing:.03rem;display:block;float:left;width:50%;text-align:center;color:#fff;color:rgba(255,255,255,.6);background:rgba(25,25,25,.3);box-shadow:inset -1px 0 0 0 rgba(0,0,0,.15)}.cooked-fsm .cooked-fsm-mobile-nav a.cooked-active{color:#fff}.cooked-fsm .cooked-fsm-mobile-nav a.cooked-active{box-shadow:none}.cooked-fsm .cooked-fsm-mobile-nav a:last-child{box-shadow:inset 1px 0 0 0 rgba(0,0,0,.15)}body.cooked-fsm-active #wpadminbar{display:none}.cooked-recipe-term-grid{margin:3% -1%;position:relative}.cooked-term-block{box-sizing:border-box;display:block;background:0 0;position:relative;float:left}.cooked-term-block .cooked-recipe-card{margin:0}.cooked-term-block .cooked-recipe-card .cooked-recipe-card-sep{margin:.65rem auto;height:3px}.cooked-term-block.cooked-col-33{width:31.333%;margin:1%}.cooked-term-block.cooked-col-25{width:23%;margin:1%}.cooked-recipe-gallery{-webkit-transition:all .5s cubic-bezier(.42,0,.15,1);-moz-transition:all .5s cubic-bezier(.42,0,.15,1);-o-transition:all .5s cubic-bezier(.42,0,.15,1);transition:all .5s cubic-bezier(.42,0,.15,1)}#cooked-timers-wrap,#cooked-timers-wrap .cooked-timer-block,#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj,.cooked-fsm,.cooked-icon-loading-wrap,.cooked-progress>span,.cooked-recipe,.cooked-recipe-card-modern,.cooked-recipe-card-modern-centered,.cooked-recipe-card-sep,.cooked-recipe-info span.cooked-fsm-button,.cooked-recipe-info span.cooked-print>a,.cooked-recipe-search .cooked-browse-search-button,.cooked-recipe-search .cooked-browse-select,.cooked-recipe-search .cooked-field-wrap-select:before,.cooked-recipe-search .cooked-sortby-wrap,.cooked-recipe-search .cooked-sortby-wrap:before,.cooked-recipe-search .cooked-taxonomy-selected,.cooked-recipe-search>form>div:last-child .cooked-browse-search-button{-webkit-transition:all .2s cubic-bezier(.42,0,.15,1);-moz-transition:all .2s cubic-bezier(.42,0,.15,1);-o-transition:all .2s cubic-bezier(.42,0,.15,1);transition:all .2s cubic-bezier(.42,0,.15,1)}.cooked-term-block{-webkit-transition:all .1s cubic-bezier(.25,.25,.75,.75);-moz-transition:all .1s cubic-bezier(.25,.25,.75,.75);-o-transition:all .1s cubic-bezier(.25,.25,.75,.75);transition:all .1s cubic-bezier(.25,.25,.75,.75)}.cooked-term-block .cooked-term-name,.cooked-term-block .cooked-term-thumbnail img{-webkit-transition:all .3s cubic-bezier(.47,0,0,1);-moz-transition:all .3s cubic-bezier(.47,0,0,1);-o-transition:all .3s cubic-bezier(.47,0,0,1);transition:all .3s cubic-bezier(.47,0,0,1)}.cooked-button,.cooked-button i.cooked-icon{-webkit-transition:border .2s cubic-bezier(.42,0,.15,1),background .2s cubic-bezier(.42,0,.15,1),color .2s cubic-bezier(.42,0,.15,1);-moz-transition:border .2s cubic-bezier(.42,0,.15,1),background .2s cubic-bezier(.42,0,.15,1),color .2s cubic-bezier(.42,0,.15,1);-o-transition:border .2s cubic-bezier(.42,0,.15,1),background .2s cubic-bezier(.42,0,.15,1),color .2s cubic-bezier(.42,0,.15,1);transition:border .2s cubic-bezier(.42,0,.15,1),background .2s cubic-bezier(.42,0,.15,1),color .2s cubic-bezier(.42,0,.15,1)}.cooked-recipe-ingredients .cooked-ingredient-checkbox,.cooked-recipe-search .cooked-browse-select.cooked-active .cooked-browse-select-block{-webkit-transition:all .1s cubic-bezier(.42,0,.15,1);-moz-transition:all .1s cubic-bezier(.42,0,.15,1);-o-transition:all .1s cubic-bezier(.42,0,.15,1);transition:all .1s cubic-bezier(.42,0,.15,1)}.cooked-related-recipes-title{margin:0 0 20px 0;font-size:1.5em;font-weight:600;color:#333}.cooked-related-recipes-grid{margin:20px 0}.cooked-related-recipes-empty,.cooked-related-recipes-error{padding:15px;margin:20px 0;background:#f9f9f9;border-left:4px solid #d63638;color:#666;font-style:italic}.cooked-related-recipes-empty{border-left-color:#0073aa;text-align:center}.cooked-related-recipes-grid .cooked-recipe-card{margin-bottom:20px}@media (max-width:768px){.cooked-related-recipes-grid.cooked-columns-3,.cooked-related-recipes-grid.cooked-columns-4{margin-left:-1.5%;width:103%}.cooked-related-recipes-grid.cooked-columns-3 .cooked-recipe,.cooked-related-recipes-grid.cooked-columns-4 .cooked-recipe{width:47%;min-width:47%}}@media (max-width:480px){.cooked-related-recipes-grid.cooked-columns-2 .cooked-recipe,.cooked-related-recipes-grid.cooked-columns-3 .cooked-recipe,.cooked-related-recipes-grid.cooked-columns-4 .cooked-recipe{width:97%;min-width:97%}}.cooked-allergens{display:inline-flex;flex-wrap:wrap;gap:6px;margin:6px 0 0 0;vertical-align:middle}.cooked-allergen{display:inline-flex;align-items:center;justify-content:center;cursor:default}.cooked-allergen .cooked-icon{font-size:1.5rem;line-height:1}.cooked-allergen,.cooked-allergen .cooked-icon{color:rgba(0,0,0,.4)}.cooked-allergen:hover .cooked-icon{color:rgba(0,0,0,.6)}.cooked-recipe-card .cooked-allergens{display:flex;margin:8px 0 0 0}.cooked-recipe-card-modern-centered .cooked-allergens{justify-content:center}.cooked-recipe-full .cooked-allergens{display:flex;margin:0 0 1rem}.cooked-recipe-fitness .cooked-allergens,.cooked-recipe-modern .cooked-allergens{display:flex;justify-content:center;margin:0;padding:0 1rem .4rem}.cooked-recipe-info .cooked-allergens-info .cooked-allergens{display:inline-flex;margin:0;vertical-align:middle} \ No newline at end of file +#wp-admin-bar-cooked-ab .ab-icon:before{font-family:CookedIcons;content:"\f035";font-size:17px;top:-2px}.cooked-clearfix:after{content:"";display:table;clear:both}.cooked-noscroll{overflow:hidden;width:100%;height:100%}.cooked-hidden-schema{display:none}.cooked-fsm .cooked-fsm-mobile-nav{display:none}.cooked-browse-search-button,.cooked-button,.cooked-fsm .cooked-fsm-top,.cooked-icon-loading,.cooked-profile-tabs,.cooked-progress span{color:#fff!important;text-decoration:none!important}.cooked-recipe-search .cooked-taxonomy-selected .cooked-field-title,.cooked-recipe-search .cooked-taxonomy-selected:before{color:#fff}.cooked-button,button.cooked-button,input[type=button].cooked-button,input[type=submit].cooked-button{box-sizing:border-box;cursor:pointer;display:inline-block;padding:.4rem .65rem;height:2.1rem;line-height:1.25rem;font-size:.9rem;font-weight:500;letter-spacing:.03rem;color:#fff;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cooked-button i.cooked-icon{color:#fff;font-size:1rem;font-weight:400}.cooked-button.cooked-square-button{padding:0;width:2.25rem;height:2.25rem;line-height:2.25rem;text-align:center}.cooked-button.cooked-square-button i.cooked-icon{font-size:1rem}.cooked-servings-switcher{display:block}.cooked-servings-switcher .cooked-button:first-child{margin-right:1rem}.cooked-servings-switcher .cooked-button:last-child{margin-left:1rem}.cooked-recipe-info span.cooked-measurement-system{padding-left:3rem}.cooked-recipe-info span.cooked-measurement-system select.cooked-measurement-system-changer{opacity:0;position:absolute;bottom:0;left:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;border:none;background:0 0;width:100%;padding:0;margin:0}.cooked-recipe-info span.cooked-measurement-system-icon{opacity:.5;width:1rem;height:1rem;font-size:2.2rem;line-height:1;display:block;position:absolute;top:50%;left:0;margin:-1.1rem 0 0 0}.cooked-recipe-info span.cooked-measurement-system-icon i.cooked-icon{display:block}.cooked-post-featured-image{max-width:100%;height:auto;border:none;display:block;margin:0 0 2rem;padding:0}body .cooked-post-featured-image img{display:block;width:100%;height:auto}.cooked-recipe-ingredients{display:block;padding:0;margin:0 0 2rem}.cooked-recipe-ingredients .cooked-heading{margin:1rem 0 .3rem;display:block;font-weight:600;font-size:1.25rem;line-height:1.5}.cooked-recipe-ingredients .cooked-heading:first-child{margin-top:0}.cooked-recipe-ingredients .cooked-ingredient{position:relative;padding:.5rem 0 0 2rem;margin:0;font-size:inherit}.cooked-recipe-ingredients .cooked-ingredient.cooked-ing-no-checkbox{padding-left:0}.cooked-recipe-ingredients .cooked-ingredient .cooked-ing-name{line-height:1.4rem;padding:1px 0}.cooked-recipe-ingredients .cooked-ingredient-checkbox{transform:scale(1);position:absolute;top:.9rem;left:0;cursor:pointer;display:inline-block;width:1rem;height:1rem;line-height:1rem;border:1px solid #ddd;border-color:rgba(0,0,0,.2);margin:0 .8rem 0 0}.cooked-recipe-ingredients .cooked-ingredient-checkbox:active{transform:scale(.9)}.cooked-recipe-ingredients .cooked-ingredient-checkbox:hover{border-color:#bbb;border-color:rgba(0,0,0,.5)}.cooked-recipe-ingredients .cooked-ingredient-checkbox.cooked-checked:after{font-family:CookedIcons;content:"\f01d";position:absolute;top:0;left:0;font-size:.6rem;line-height:1rem;width:100%;height:100%;text-align:center}.cooked-recipe-ingredients .cooked-ingredient.cooked-checked{text-decoration:line-through;opacity:.5}.cooked-ingredient-substitution{font-style:italic;color:#777;margin-left:5px;display:inline-block}.cooked-ing-sub-label{font-style:normal;font-weight:600;font-size:.85em;color:#999;margin-right:2px}.cooked-recipe-directions{display:block;padding:0;margin:0 0 2rem}.cooked-recipe-directions .cooked-heading{margin:0 0 1rem;display:block;font-weight:600;font-size:1.25rem;line-height:1.5}.cooked-recipe-directions .cooked-direction{position:relative;padding:0;margin:0;font-size:inherit}.cooked-recipe-directions .cooked-direction img{max-width:100%;height:auto;display:block;margin:0 0 2rem;padding:0;border:none}.cooked-recipe-directions .cooked-direction.cooked-direction-has-number .cooked-dir-content{padding-left:2.75rem}.cooked-recipe-directions .cooked-direction.cooked-direction-has-number-wide .cooked-dir-content{padding-left:2.75rem}.cooked-recipe-directions .cooked-direction.cooked-direction-has-number-wide .cooked-direction-number{width:2ch;text-align:right;font-variant-numeric:tabular-nums}.cooked-recipe-directions .cooked-direction-number{opacity:.35;position:absolute;display:inline-block;width:auto;height:1.5rem;line-height:1.5rem;font-weight:800;top:0;left:0;font-size:1.5rem}.cooked-recipe-excerpt{display:block;padding:0;margin:0 0 1rem}.cooked-recipe-info{display:block;padding:0;margin:0 0 1rem}.cooked-recipe-info>section.cooked-left>span,.cooked-recipe-info>span{line-height:1.25rem;position:relative;box-sizing:border-box;vertical-align:top;margin:0 2rem 1rem 0;display:inline-block;width:auto}.cooked-recipe-info>section.cooked-right>span{line-height:1.3rem;position:relative;box-sizing:border-box;vertical-align:top;margin:0 0 1rem 2rem;display:inline-block;width:auto}.cooked-recipe-info>section.cooked-left>span:last-child,.cooked-recipe-info>span:last-child{margin-right:0}.cooked-recipe-info>section.cooked-right>span:first-child{margin-left:0}.cooked-recipe-info strong{font-size:.75rem;letter-spacing:.03rem;font-weight:800;text-transform:uppercase;display:block}.cooked-recipe-notes{display:block;padding:0;margin:0 0 2rem}.cooked-recipe-notes .cooked-heading{margin:0 0 1rem;display:block;font-weight:600;font-size:1.25rem;line-height:1.5}.cooked-recipe-info span.cooked-print,.cooked-recipe-info span.cooked-print>a{height:2rem;display:inline-block}.cooked-recipe-info span.cooked-print>a{color:rgba(0,0,0,.4)}.cooked-recipe-info span.cooked-print>a:hover{color:rgba(0,0,0,.6)}.cooked-recipe-info span.cooked-print .cooked-icon{font-size:2.25rem;line-height:2.5rem}.cooked-recipe-info span.cooked-fsm-button{cursor:pointer;color:rgba(0,0,0,.4);height:2rem;display:inline-block}.cooked-recipe-info span.cooked-fsm-button:hover{color:rgba(0,0,0,.6)}.cooked-recipe-info span.cooked-fsm-button .cooked-icon{font-size:2.25rem;line-height:2.5rem}.cooked-recipe span.cooked-author,.cooked-recipe-info span.cooked-author{padding-left:3.25rem}.cooked-recipe span.cooked-author.cooked-no-avatar,.cooked-recipe-info span.cooked-author.cooked-no-avatar{padding-left:0}.cooked-recipe span.cooked-author-avatar,.cooked-recipe-info span.cooked-author-avatar{width:2.5rem;height:2.5rem;display:block;position:absolute;top:50%;left:0;margin:-1.25rem 0 0 0}.cooked-recipe span.cooked-author-avatar img,.cooked-recipe-info span.cooked-author-avatar img{margin:0;padding:0;display:block;height:auto;width:100%;max-width:100%;max-height:100%;border-radius:100px}.cooked-author-avatar,.cooked-author-avatar img{border-radius:5rem}.cooked-recipe-info span.cooked-time{padding-left:3rem}.cooked-recipe-info span.cooked-time-icon{opacity:.5;width:1rem;height:1rem;font-size:2.2rem;display:block;position:absolute;top:50%;left:0;margin:-1.1rem 0 0 0}.cooked-recipe-info span.cooked-time-icon i.cooked-icon{display:block}.cooked-timer{padding-left:2px}.cooked-timer i.cooked-icon{opacity:.6}body .cooked-timer a{font-weight:600;cursor:pointer;text-decoration:none}body .cooked-timer a:hover{text-decoration:none}#cooked-timers-wrap{z-index:99999;white-space:nowrap;overflow:hidden;border-radius:10px 10px 0 0;background:#fff;box-shadow:0 -5px 30px rgba(0,0,0,.15);line-height:1.6rem;font-size:1rem;width:50%;max-width:100%;height:7.5rem;position:fixed;transform:translate3d(0,7.2em,0);opacity:0;bottom:0;right:50%;margin:0 -25% 0 0;box-sizing:border-box}#cooked-timers-wrap.cooked-visible{transform:translate3d(0,0,0);opacity:1}#cooked-timers-wrap .cooked-timer-block{overflow:hidden;position:relative;display:block;height:0;padding:0;width:100%;opacity:0;padding:0 1.5rem 0 6rem;box-sizing:border-box}#cooked-timers-wrap .cooked-timer-block.cooked-visible{opacity:1;height:7.5rem;padding:1.9rem 1.5rem 1.55rem 6rem}#cooked-timers-wrap .cooked-timer-block>span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:auto}#cooked-timers-wrap .cooked-timer-block i.cooked-icon-times{line-height:2rem;color:rgba(0,0,0,.25);position:absolute;font-size:2rem;top:2.5rem;left:2rem;cursor:pointer}#cooked-timers-wrap .cooked-timer-block i.cooked-icon-times:hover{color:inherit}#cooked-timers-wrap .cooked-timer-block .cooked-timer-step{font-size:1.1rem;font-weight:800;text-transform:uppercase}#cooked-timers-wrap .cooked-timer-block .cooked-timer-desc{font-size:1.2rem;width:100%;padding-right:14rem;box-sizing:border-box;font-weight:400;color:rgba(0,0,0,.65)}#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj{font-weight:600;position:absolute;top:2.5rem;right:2rem;width:13.5rem;font-size:2rem;line-height:2rem}#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj>div,#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj>i.cooked-icon{display:inline-block}#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj>i.cooked-icon-pause,#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj>i.cooked-icon-play,#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj>i.cooked-icon-reverse{cursor:pointer;opacity:.5;width:2rem;text-align:center;margin-right:.5rem;position:relative;font-size:2rem;transform:scale(.75)}#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj>i.cooked-icon-play{display:none}#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj>i.cooked-icon:hover{opacity:1}#cooked-timers-wrap.cooked-multiples{margin:0;right:0;border-radius:10px 0 0 0;width:20rem}#cooked-timers-wrap.cooked-multiples .cooked-timer-block{padding-left:3.25rem}#cooked-timers-wrap.cooked-multiples .cooked-timer-block.cooked-visible{padding-top:1rem;line-height:1.5rem;padding-left:3.25rem}#cooked-timers-wrap.cooked-multiples .cooked-timer-block .cooked-timer-step{font-size:.9rem}#cooked-timers-wrap.cooked-multiples .cooked-timer-block .cooked-timer-desc{font-size:1rem;padding:0}#cooked-timers-wrap.cooked-multiples .cooked-timer-block .cooked-timer-obj{top:auto;right:auto;width:auto;font-size:1.5rem;line-height:2rem}#cooked-timers-wrap.cooked-multiples .cooked-timer-block .cooked-timer-obj>i.cooked-icon{font-size:1.5rem;width:1.3rem;margin-right:.5rem}#cooked-timers-wrap.cooked-multiples .cooked-timer-block i.cooked-icon-times{line-height:1rem;font-size:1rem;top:1.4rem;left:1.2rem}#cooked-timers-wrap .cooked-timer-block .cooked-progress{display:block;position:absolute;left:0;bottom:0;height:.5rem;width:100%;background:rgba(0,0,0,.15)}#cooked-timers-wrap .cooked-timer-block .cooked-progress span{width:0;display:block;position:absolute;left:0;top:0;height:.5rem}#cooked-timers-wrap .cooked-timer-block.cooked-paused{background:#f9f9f9}#cooked-timers-wrap .cooked-timer-block.cooked-paused .cooked-timer-obj{color:rgba(0,0,0,.5)}#cooked-timers-wrap .cooked-timer-block.cooked-complete{background:rgba(255,0,0,.05)}#cooked-timers-wrap .cooked-timer-block.cooked-complete .cooked-progress span{background:red}#cooked-timers-wrap .cooked-timer-block.cooked-complete .cooked-timer-obj{color:red}.cooked-recipe-info span.cooked-servings{padding-left:3rem}.cooked-recipe-info span.cooked-servings select.cooked-servings-changer{opacity:0;position:absolute;bottom:0;left:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;border:none;background:0 0;width:100%;padding:0;margin:0}.cooked-recipe-info span.cooked-servings-icon{opacity:.5;width:1rem;height:1rem;font-size:2.2rem;display:block;position:absolute;top:50%;left:0;margin:-1.1rem 0 0 0}.cooked-recipe-info span.cooked-servings-icon i.cooked-icon{display:block}.cooked-left{float:left;display:inline-block;width:auto}.cooked-right{float:right;display:inline-block;width:auto}.cooked-recipe-gallery{height:1px;overflow:hidden;opacity:0;transform:translate3d(0,10px,0);padding:0;margin:0}.cooked-recipe-gallery .fotorama__thumb-border{border-color:#333}.cooked-recipe-gallery .fotorama__caption__wrap{background:#333;color:#fff}.cooked-recipe-gallery .fotorama__stage__frame.fotorama__active{background:#333}.cooked-recipe-gallery.cooked-gallery-loaded{height:auto;overflow:inherit;opacity:1;transform:translate3d(0,0,0);margin:0 0 2rem}.cooked-nutrition-label{background:#fff;font-size:.9rem;border:1px solid #aaa;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;padding:10px;margin:0 0 2rem;font-family:Helvetica,Arial,sans-serif;container-name:nutrition-label;container-type:inline-size}.cooked-nutrition-label .cooked-nutrition-title{font-size:2.3rem;line-height:1;letter-spacing:0;font-weight:800;padding:0 0 .5rem 0;margin:0;color:#333;border-bottom:1px solid #aaa}.cooked-nutrition-label.cooked-float-left{max-width:45%;margin:0 3rem 3rem 0;float:left}body .cooked-nutrition-label p{margin:0!important;padding:0!important}body .cooked-nutrition-label p.cooked-daily-value-text{padding:.75rem 0 .15rem 0!important;margin:0!important;font-size:.9rem;line-height:1.3rem!important}body .cooked-nutrition-label p.cooked-daily-value-text strong{font-weight:400}body .cooked-nutrition-label dl{margin:0!important;padding:0!important}body .cooked-nutrition-label dt{position:relative;margin:0;padding:2px 0;border-top:1px solid #aaa}body .cooked-nutrition-label dt.cooked-calories{border-top:none;display:flex;justify-content:space-between;align-items:baseline;padding-bottom:10px}body .cooked-nutrition-label dt.cooked-calories strong{font-size:2rem;font-weight:800}body .cooked-nutrition-label dt.cooked-calories strong.cooked-nut-label{font-size:2.5rem}body .cooked-nutrition-label dt.cooked-nut-servings{border-top:none;padding-bottom:0}body .cooked-nutrition-label dt.cooked-serving-size{border-top:none;padding-top:0}body .cooked-nutrition-label div.cooked-serving-size strong,body .cooked-nutrition-label dt.cooked-serving-size strong,body .cooked-nutrition-label dt.cooked-serving-size strong.cooked-nut-label{font-size:1.3rem;font-weight:800}body .cooked-nutrition-label div.cooked-nut-servings p,body .cooked-nutrition-label dt.cooked-nut-servings p{font-size:1.2rem}body .cooked-nutrition-label dt dt{padding:2px 0 0;margin:2px 0 0}body .cooked-nutrition-label dt:after{content:"";display:table;clear:both}body .cooked-nutrition-label dt.no-after:after{content:none}body .cooked-nutrition-label div.cooked-nut-spacer,body .cooked-nutrition-label dt.cooked-nut-spacer{border:none;height:.5rem;padding:0;background:#333;margin-top:.3rem}body .cooked-nutrition-label dl dt.cooked-nut-no-border,body .cooked-nutrition-label>dl>dt:first-child{border:none}body .cooked-nutrition-label dt dl{margin:0 0 0 1.5rem!important}body .cooked-nutrition-label .cooked-nut-hr{border:none;border-top:1rem solid #333;margin:.1rem 0 0;padding:0}body .cooked-nutrition-label strong{font-weight:800}body .cooked-nutrition-label strong.cooked-nut-heading{font-size:1rem}body .cooked-nutrition-label strong.cooked-nut-label{font-weight:400}body .cooked-nutrition-label dl dl strong.cooked-nut-right{font-weight:800}body .cooked-nutrition-label .cooked-nut-right{float:right}body .cooked-nutrition-label dl.cooked-nut-bottom dt{border-top:none;border-bottom:1px solid #aaa;float:left;width:100%;box-sizing:border-box}body .cooked-nutrition-label dl.cooked-nut-bottom dt strong{font-weight:400}body .cooked-nutrition-label dl.cooked-nut-bottom dt:last-child{border:none}body .cooked-nutrition-label dl.cooked-nut-bottom dt:nth-last-child(2):nth-child(even){border-bottom:1px solid #aaa}.widget .cooked-nutrition-label{margin:0}body .cooked-nutrition-label .cooked-nutrition-facts-powered-by-edamam img{float:right;height:2rem}.cooked-recipe-search{box-sizing:border-box;padding:0;margin:0;width:100%;display:block;border:1px solid transparent;position:relative}.cooked-recipe-search .cooked-field-wrap,.cooked-recipe-search .cooked-fields-wrap{display:inline-block;box-sizing:border-box;width:100%;margin:0 1% 0 0}.cooked-recipe-search .cooked-fields-wrap{margin:0}.cooked-recipe-search .cooked-browse-select{display:block;cursor:pointer;position:relative;border-radius:3px;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;background:rgba(0,0,0,.075);box-shadow:inset 0 0 0 1px rgba(0,0,0,.05);width:100%;font-size:1rem;line-height:3rem;height:auto;padding:0 1rem}.cooked-recipe-search .cooked-browse-select:hover{background:rgba(0,0,0,.1)}.cooked-recipe-search .cooked-browse-select .cooked-field-title{font-size:.9rem;vertical-align:top}.cooked-recipe-search .cooked-taxonomy-selected{border-radius:3px}.cooked-recipe-search .cooked-sortby-wrap{background:#f5f5f5;position:absolute;top:0;height:3rem;width:12rem;display:inline-block;margin:0 1px 0 0;right:3.5rem}.cooked-recipe-search .cooked-sortby-wrap>select{margin:0;box-shadow:none;position:relative;width:100%;background:0 0;cursor:pointer;font-size:.9rem;border:none;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(0,0,0,.1);-webkit-appearance:none;-moz-appearance:none;appearance:none;height:100%;border-radius:0;display:inline-block;padding:0 1.25rem}.cooked-recipe-search .cooked-sortby-wrap:hover{background:#eee}.cooked-recipe-search input[type=text]{margin:0;vertical-align:initial;box-shadow:none;display:inline-block;box-sizing:border-box;background:#fff;width:100%;height:3rem;padding:0 1rem;font-size:1rem;border:1px solid rgba(0,0,0,.15);border-right:none}.cooked-recipe-search .cooked-3-search-fields>*,.cooked-recipe-search .cooked-4-search-fields>*{float:left}.cooked-recipe-search .cooked-field-wrap-select{position:relative}.cooked-recipe-search .cooked-field-wrap-select:before,.cooked-recipe-search .cooked-sortby-wrap:before{content:"\f00b";opacity:.25;font-family:CookedIcons;font-size:.75rem;position:absolute;top:50%;right:.75rem;line-height:1.25rem;height:1.25rem;margin-top:-.5rem}.cooked-recipe-search .cooked-field-wrap-select:hover:before,.cooked-recipe-search .cooked-sortby-wrap:hover:before{opacity:.75;margin-top:-.5rem}.cooked-recipe-search .cooked-fields-wrap{padding-right:3.5rem;position:relative}.cooked-recipe-search .cooked-fields-wrap>.cooked-field-wrap-select{width:14%}.cooked-recipe-search .cooked-fields-wrap>.cooked-browse-search{width:85%;max-width:85%;margin:0}.cooked-recipe-search.cooked-search-no-sorting.cooked-search-no-browse .cooked-fields-wrap>.cooked-browse-search{width:100%}.cooked-recipe-search .cooked-browse-search-button{position:absolute;top:0;right:1px;width:3.5rem;text-decoration:none;font-size:1rem;text-align:center;color:#fff;line-height:3rem;height:3rem}.cooked-recipe-search .cooked-browse-search-button:hover{color:#fff;text-decoration:none}.cooked-recipe-search .cooked-browse-select-block{display:flex;color:inherit;cursor:default;visibility:hidden;opacity:0;transform:translate3d(0,-6px,0);box-sizing:border-box;z-index:99;position:absolute;width:auto;background:#fff;top:4rem;left:-10px;margin:0;line-height:1.5rem;border-radius:6px}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column{display:block;width:25%;min-width:25%;box-sizing:border-box;padding:0 .75rem}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column>div{max-height:16rem;overflow:auto}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column>div>span{display:block}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column>div>a,.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column>span{display:block;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column>span.cooked-tax-column-title{font-size:.9rem;font-weight:800;text-transform:uppercase;margin:0 0 .6rem;padding:0 10px .6rem 0;border-bottom:1px solid rgba(0,0,0,.15)}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column>div>a{line-height:1.6rem}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column>div>span.cooked-tax-sub-item{margin-left:.75rem}.cooked-recipe-search .cooked-browse-select-block .cooked-tax-column i.cooked-icon{font-size:.9rem;color:rgba(0,0,0,.5)}.cooked-recipe-search .cooked-fields-wrap.cooked-1-search-fields .cooked-browse-select-block{width:170%;padding:1.5rem}.cooked-recipe-search .cooked-fields-wrap.cooked-1-search-fields .cooked-browse-select-block .cooked-tax-column{width:100%;padding:0}.cooked-recipe-search .cooked-browse-select.cooked-active .cooked-browse-select-block{visibility:visible;opacity:1;transform:translate3d(0,-1px,0)}.cooked-recipe-search .cooked-browse-select-block{box-shadow:0 2px 2px rgba(0,0,0,.05),0 4px 4px rgba(0,0,0,.05),0 8px 8px rgba(0,0,0,.05),0 16px 16px rgba(0,0,0,.05),0 32px 32px rgba(0,0,0,.05),0 64px 64px rgba(0,0,0,.05)}.cooked-browse-select-inline-block{display:flex;color:inherit;cursor:default;visibility:visible;opacity:1;box-sizing:border-box;z-index:99;position:relative;width:auto;background:#fff;margin:10px 2px 3rem;line-height:1.5rem;border-radius:6px;padding:1.5rem}.cooked-browse-select-inline-block .cooked-tax-column{display:block;width:100%;box-sizing:border-box;padding:0 .75rem}.cooked-browse-select-inline-block .cooked-tax-column>div{max-height:16rem;overflow:auto}.cooked-browse-select-inline-block .cooked-tax-column>div>span{display:block}.cooked-browse-select-inline-block .cooked-tax-column>div>a,.cooked-browse-select-inline-block .cooked-tax-column>span{display:block;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.cooked-browse-select-inline-block .cooked-tax-column>span.cooked-tax-column-title{font-size:.9rem;font-weight:800;text-transform:uppercase;margin:0 0 .6rem;padding:0 10px .6rem 0;border-bottom:1px solid rgba(0,0,0,.15)}.cooked-browse-select-inline-block .cooked-tax-column>div>a{line-height:1.6rem}.cooked-browse-select-inline-block .cooked-tax-column>div>span.cooked-tax-sub-item{margin-left:.75rem}.cooked-browse-select-inline-block .cooked-tax-column i.cooked-icon{font-size:.9rem;color:rgba(0,0,0,.5)}.cooked-browse-select-inline-block{box-shadow:0 2px 2px -1px rgba(0,0,0,.15)}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap{padding:0;display:block}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap>.cooked-browse-search{width:100%;max-width:100%;border-right:1px solid rgba(0,0,0,.15);margin:3% 0}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-1-search-fields .cooked-browse-select-block{width:100%;left:0}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap>.cooked-field-wrap-select{display:block;width:100%}.cooked-recipe-search.cooked-search-compact .cooked-sortby-wrap{display:block;position:relative;width:67%;right:auto;top:auto;float:left;margin:0}.cooked-recipe-search.cooked-search-compact .cooked-sortby-wrap>select{position:absolute;width:100%;border:1px solid rgba(0,0,0,.15);margin:0}.cooked-recipe-search.cooked-search-compact .cooked-browse-search-button{width:30%;right:auto;position:relative;display:block;float:right}.cooked-recipe-search.cooked-search-compact .cooked-browse-select-block{top:3rem;left:0;max-height:16rem;overflow:auto;transform:translate3d(0,-1px,0)}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-1-search-fields .cooked-browse-select-block{width:100%;padding:1.5rem}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-2-search-fields .cooked-browse-select-block{width:100%;padding:1.5rem}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-3-search-fields .cooked-browse-select-block{width:100%;padding:1.5rem}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-4-search-fields .cooked-browse-select-block{width:100%;padding:1.5rem}.cooked-recipe-search.cooked-search-compact .cooked-browse-select-block .cooked-tax-column{float:none;padding:0 0 1.5rem 0}.cooked-recipe-search.cooked-search-compact .cooked-browse-select-block .cooked-tax-column:last-child{padding:0}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-1-search-fields .cooked-browse-select-block .cooked-tax-column{width:100%}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-2-search-fields .cooked-browse-select-block .cooked-tax-column{width:100%}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-3-search-fields .cooked-browse-select-block .cooked-tax-column{width:100%}.cooked-recipe-search.cooked-search-compact .cooked-fields-wrap.cooked-4-search-fields .cooked-browse-select-block .cooked-tax-column{width:100%}.cooked-recipe-search.cooked-search-compact.cooked-search-no-sorting .cooked-fields-wrap>.cooked-browse-search{width:80%;margin:3% 0}.cooked-recipe-search.cooked-search-compact.cooked-search-no-sorting .cooked-browse-search-button{width:20%;margin:3% 0}.cooked-recipe-search.cooked-search-compact.cooked-search-no-browse .cooked-browse-search-button,.cooked-recipe-search.cooked-search-compact.cooked-search-no-browse .cooked-fields-wrap>.cooked-browse-search{margin:0 0 3%}.cooked-recipe-search.cooked-search-compact.cooked-search-no-sorting.cooked-search-no-browse .cooked-browse-search-button,.cooked-recipe-search.cooked-search-compact.cooked-search-no-sorting.cooked-search-no-browse .cooked-fields-wrap>.cooked-browse-search{margin:0}.cooked-author-list-heading{display:block;margin:0 0 2rem}.cooked-author-list-heading .cooked-author-avatar{float:left;width:3rem;height:auto;display:block;margin:0 1rem 0 0}.cooked-author-list-heading .cooked-author-avatar img{display:block;margin:0}.cooked-author-list-heading .cooked-meta-title{font-size:1.25rem;line-height:1.2rem;margin:0}.cooked-author-list-heading a{font-size:.9rem}body p.cooked-none-found{display:block;margin:0;padding:1rem 0 2rem;color:#888;text-align:center;font-style:italic}.cooked-recipe-grid{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);transform:translate3d(0,0,0);position:relative;box-sizing:border-box;padding:0;margin:3% -1.5%;width:103%;display:flex;flex-wrap:wrap}.cooked-recipe-grid .cooked-recipe{width:30.333%;min-width:30.333%;display:block;box-sizing:border-box;margin:0 1.5% 3%;padding:0}.cooked-recipe-grid .cooked-recipe .cooked-recipe-card-title{cursor:pointer;color:inherit;text-decoration:none}.cooked-recipe-grid .cooked-recipe .cooked-recipe-card-title:hover{text-decoration:none!important}.cooked-recipe-grid.cooked-columns-1 .cooked-recipe{width:97%;min-width:97%}.cooked-recipe-grid.cooked-columns-2 .cooked-recipe{width:47%;min-width:47%}.cooked-recipe-grid.cooked-columns-3 .cooked-recipe{width:30.333%;min-width:30.333%}.cooked-recipe-grid.cooked-columns-4 .cooked-recipe{width:22%;min-width:22%}.cooked-recipe-grid.cooked-columns-5 .cooked-recipe{width:17%;min-width:17%}.cooked-recipe-grid.cooked-columns-6 .cooked-recipe{width:13.666%;min-width:13.666%}.cooked-recipe a,.cooked-recipe a:hover,.cooked-recipe-info a,.cooked-recipe-info a:hover,.cooked-recipe-search a,.cooked-recipe-search:hover{box-shadow:none!important}.cooked-recipe-card{text-align:left;background:#fff;text-decoration:none!important;border:none!important;color:inherit!important;display:block;overflow:hidden;border-radius:3px;margin:0 auto 1rem;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}.cooked-recipe-card-content>span,.cooked-recipe-card>span{display:block!important}.cooked-recipe-card:hover{text-decoration:none!important;border:none!important;color:inherit!important}.cooked-recipe-card-image{background-size:cover;background-position:center;display:block;margin:0;padding:0;height:250px;width:100%;position:relative}.cooked-recipe-card .cooked-recipe-image-empty{display:block;margin:0;padding:0;height:250px;width:100%;position:relative}.cooked-recipe-card .cooked-recipe-card-sep{display:none}.cooked-recipe-card-content{padding:1rem 1.5rem;margin:0}.cooked-recipe-card-title{display:block;font-weight:600;margin:.5rem 0;font-size:1.25rem;line-height:1.65rem}.cooked-recipe-card-author{margin:.5rem 0;font-size:.9rem}.cooked-recipe-card-excerpt{display:block;margin:.5rem 0;font-size:1rem}.cooked-recipe-card-centered,.cooked-recipe-card-modern-centered{text-align:center}.cooked-recipe-card-modern,.cooked-recipe-card-modern-centered{transform:translate3d(0,0,0);border-radius:10px;box-shadow:0 2px 3px rgba(0,0,0,.04),inset 0 0 0 1px rgba(0,0,0,.1)}.cooked-recipe-card-modern .cooked-recipe-card-author,.cooked-recipe-card-modern .cooked-recipe-card-excerpt,.cooked-recipe-card-modern .cooked-recipe-card-title,.cooked-recipe-card-modern-centered .cooked-recipe-card-author,.cooked-recipe-card-modern-centered .cooked-recipe-card-excerpt,.cooked-recipe-card-modern-centered .cooked-recipe-card-title{margin:.25rem 0}.cooked-recipe-card-modern .cooked-recipe-card-content,.cooked-recipe-card-modern-centered .cooked-recipe-card-content{padding:1.25rem 1.5rem}.cooked-recipe-card-modern .cooked-recipe-card-author,.cooked-recipe-card-modern-centered .cooked-recipe-card-author{opacity:.75}.cooked-recipe-card-modern .cooked-recipe-card-sep,.cooked-recipe-card-modern-centered .cooked-recipe-card-sep{margin:1rem 0;display:block;width:15%;height:6px;border-radius:3px;background:#ddd}.cooked-recipe-card-modern-centered .cooked-recipe-card-sep{margin:1rem auto}.cooked-recipe-card-modern-centered:hover,.cooked-recipe-card-modern:hover{transform:translate3d(0,-2px,0)!important;box-shadow:0 5px 5px rgba(0,0,0,.05),inset 0 0 0 1px rgba(0,0,0,.1)}.cooked-recipe-card-modern-centered:hover .cooked-recipe-card-sep,.cooked-recipe-card-modern:hover .cooked-recipe-card-sep{width:25%}.widget .cooked-recipe-card{margin:0 auto}.cooked-recipe-term-list .cooked-term-item a{display:block;padding:5px 0;border-top:1px solid rgba(0,0,0,.1)}.cooked-shortcode-recipe-list{margin:0 auto 1rem}.cooked-shortcode-recipe-list .cooked-srl-single{box-sizing:border-box;border:none;border-top:1px solid #ddd;border-top:1px solid rgba(0,0,0,.15);position:relative;display:block;padding:.6rem 0 0 0;margin:0 0 1rem}.cooked-shortcode-recipe-list .cooked-srl-single:hover{border:none;border-top:1px solid #ddd;border-top:1px solid rgba(0,0,0,.15)}.cooked-shortcode-recipe-list .cooked-srl-single.cooked-srl-has-image{padding-left:4rem;min-height:3.75rem}.cooked-shortcode-recipe-list .cooked-srl-image{margin:0;padding:0}.cooked-shortcode-recipe-list .cooked-srl-image img{width:3rem;height:3rem;border-radius:3px;position:absolute;top:.9rem;left:0;display:block;margin:0;padding:0}.cooked-shortcode-recipe-list .cooked-srl-sep{display:none}.cooked-shortcode-recipe-list .cooked-srl-content{line-height:1.4rem;padding:0;margin:0}.cooked-shortcode-recipe-list .cooked-srl-title{line-height:1.4rem;display:block;font-weight:600;margin:.25rem 0;font-size:1rem}.cooked-shortcode-recipe-list .cooked-srl-author{line-height:1.4rem;margin:.25rem 0;font-size:.9rem;opacity:.75}.cooked-shortcode-recipe-list .cooked-srl-single:first-child{border:none;padding-top:0}.cooked-shortcode-recipe-list .cooked-srl-single:first-child .cooked-srl-image img{top:0}.cooked-shortcode-recipe-list .cooked-srl-single.cooked-srl-has-image:first-child{min-height:3rem}.cooked-pagination-numbered{text-align:center;display:block;margin:0 0 2rem}.cooked-pagination-numbered>a,.cooked-pagination-numbered>span{font-size:1.2rem;font-weight:600;display:inline-block;padding:0 5px;background:0 0}.cooked-pagination-numbered>span{color:rgba(0,0,0,.25)}body .cooked-pagination-numbered>a{text-decoration:none;border:none}body .cooked-pagination-numbered>a:hover{text-decoration:none;border:none}.cooked-fsm{box-sizing:border-box;display:none;opacity:0;transform:scale(.95);position:fixed;top:0;left:0;width:100%;height:100%;background:#fff;z-index:99998}.cooked-fsm.cooked-visible{display:block}.cooked-fsm.cooked-active{opacity:1;transform:scale(1)}.cooked-fsm .cooked-fsm-top{font-size:1.2rem;font-weight:300;text-align:center;box-sizing:border-box;position:absolute;top:0;left:0;width:100%;color:#fff;padding:0 4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:3.5rem;height:3.5rem}.cooked-fsm .cooked-fsm-ingredients{box-sizing:border-box;padding:5.5rem 2rem 1rem;font-size:1rem;line-height:1.6rem;width:30%;height:100%;background:#f9f9f9;overflow-y:scroll;-webkit-overflow-scrolling:touch;position:absolute;top:0;left:0}.cooked-fsm .cooked-recipe-ingredients{margin-top:-.75rem}.cooked-fsm .cooked-recipe-ingredients .cooked-ingredient{padding:.75rem 0 0 2rem}.cooked-fsm .cooked-recipe-ingredients .cooked-heading{font-size:1.25rem}.cooked-fsm .cooked-recipe-ingredients .cooked-heading:first-child{padding-top:.75rem}.cooked-fsm .cooked-recipe-ingredients .cooked-ingredient-checkbox{top:.75rem}.cooked-fsm .cooked-fsm-directions-wrap{box-sizing:border-box;padding:5.5rem 2rem 1rem;font-size:1rem;line-height:1.6rem;width:70%;height:100%;overflow-y:scroll;-webkit-overflow-scrolling:touch;position:absolute;top:0;left:30%}.cooked-fsm .cooked-fsm-directions p{margin:0 0 1.5rem;font-size:1.2rem;line-height:1.6rem}.cooked-fsm .cooked-recipe-directions .cooked-heading{font-size:1.5rem}.cooked-fsm .cooked-recipe-directions .cooked-direction-number{font-size:1.8rem}.cooked-fsm .cooked-recipe-directions .cooked-direction.cooked-direction-has-number .cooked-dir-content{padding-left:3.05rem}.cooked-fsm .cooked-recipe-directions .cooked-direction.cooked-direction-has-number-wide .cooked-dir-content{padding-left:3.05rem}.cooked-fsm .cooked-close-fsm{color:#fff;position:absolute;top:50%;transform:translateY(-50%);right:1.25rem}.cooked-fsm h2{margin:0 0 2rem;padding:0;font-size:1rem;text-transform:uppercase;letter-spacing:.05rem;font-weight:800}.cooked-fsm-directions .cooked-panel,.cooked-fsm-ingredients .cooked-panel,.cooked-fsm-notes .cooked-panel{padding-left:1%;padding-right:2%}.cooked-fsm-notes .cooked-panel .cooked-recipe-notes{font-size:1.2rem;line-height:1.6rem}.cooked-fsm-notes .cooked-panel .cooked-recipe-notes{margin:0 0 1rem}.cooked-fsm-notes .cooked-panel .cooked-recipe-notes ol,.cooked-fsm-notes .cooked-panel .cooked-recipe-notes ul{padding-left:1.5rem}.cooked-fsm-notes .cooked-panel .cooked-recipe-notes ul li{margin:0 0 1rem 1rem}.cooked-fsm .cooked-fsm-mobile-nav{box-sizing:border-box;position:absolute;top:3.5rem;left:0;margin:-1px 0 0 0;width:100%;padding:0;line-height:3.5rem;z-index:9999999}.cooked-fsm .cooked-fsm-mobile-nav a{text-transform:uppercase;font-size:.9rem;font-weight:700;letter-spacing:.03rem;display:block;float:left;width:50%;text-align:center;color:#fff;color:rgba(255,255,255,.6);background:rgba(25,25,25,.3);box-shadow:inset -1px 0 0 0 rgba(0,0,0,.15)}.cooked-fsm .cooked-fsm-mobile-nav a.cooked-active{color:#fff}.cooked-fsm .cooked-fsm-mobile-nav a.cooked-active{box-shadow:none}.cooked-fsm .cooked-fsm-mobile-nav a:last-child{box-shadow:inset 1px 0 0 0 rgba(0,0,0,.15)}body.cooked-fsm-active #wpadminbar{display:none}.cooked-recipe-term-grid{margin:3% -1%;position:relative}.cooked-term-block{box-sizing:border-box;display:block;background:0 0;position:relative;float:left}.cooked-term-block .cooked-recipe-card{margin:0}.cooked-term-block .cooked-recipe-card .cooked-recipe-card-sep{margin:.65rem auto;height:3px}.cooked-term-block.cooked-col-33{width:31.333%;margin:1%}.cooked-term-block.cooked-col-25{width:23%;margin:1%}.cooked-recipe-gallery{-webkit-transition:all .5s cubic-bezier(.42,0,.15,1);-moz-transition:all .5s cubic-bezier(.42,0,.15,1);-o-transition:all .5s cubic-bezier(.42,0,.15,1);transition:all .5s cubic-bezier(.42,0,.15,1)}#cooked-timers-wrap,#cooked-timers-wrap .cooked-timer-block,#cooked-timers-wrap .cooked-timer-block .cooked-timer-obj,.cooked-fsm,.cooked-icon-loading-wrap,.cooked-progress>span,.cooked-recipe,.cooked-recipe-card-modern,.cooked-recipe-card-modern-centered,.cooked-recipe-card-sep,.cooked-recipe-info span.cooked-fsm-button,.cooked-recipe-info span.cooked-print>a,.cooked-recipe-search .cooked-browse-search-button,.cooked-recipe-search .cooked-browse-select,.cooked-recipe-search .cooked-field-wrap-select:before,.cooked-recipe-search .cooked-sortby-wrap,.cooked-recipe-search .cooked-sortby-wrap:before,.cooked-recipe-search .cooked-taxonomy-selected,.cooked-recipe-search>form>div:last-child .cooked-browse-search-button{-webkit-transition:all .2s cubic-bezier(.42,0,.15,1);-moz-transition:all .2s cubic-bezier(.42,0,.15,1);-o-transition:all .2s cubic-bezier(.42,0,.15,1);transition:all .2s cubic-bezier(.42,0,.15,1)}.cooked-term-block{-webkit-transition:all .1s cubic-bezier(.25,.25,.75,.75);-moz-transition:all .1s cubic-bezier(.25,.25,.75,.75);-o-transition:all .1s cubic-bezier(.25,.25,.75,.75);transition:all .1s cubic-bezier(.25,.25,.75,.75)}.cooked-term-block .cooked-term-name,.cooked-term-block .cooked-term-thumbnail img{-webkit-transition:all .3s cubic-bezier(.47,0,0,1);-moz-transition:all .3s cubic-bezier(.47,0,0,1);-o-transition:all .3s cubic-bezier(.47,0,0,1);transition:all .3s cubic-bezier(.47,0,0,1)}.cooked-button,.cooked-button i.cooked-icon{-webkit-transition:border .2s cubic-bezier(.42,0,.15,1),background .2s cubic-bezier(.42,0,.15,1),color .2s cubic-bezier(.42,0,.15,1);-moz-transition:border .2s cubic-bezier(.42,0,.15,1),background .2s cubic-bezier(.42,0,.15,1),color .2s cubic-bezier(.42,0,.15,1);-o-transition:border .2s cubic-bezier(.42,0,.15,1),background .2s cubic-bezier(.42,0,.15,1),color .2s cubic-bezier(.42,0,.15,1);transition:border .2s cubic-bezier(.42,0,.15,1),background .2s cubic-bezier(.42,0,.15,1),color .2s cubic-bezier(.42,0,.15,1)}.cooked-recipe-ingredients .cooked-ingredient-checkbox,.cooked-recipe-search .cooked-browse-select.cooked-active .cooked-browse-select-block{-webkit-transition:all .1s cubic-bezier(.42,0,.15,1);-moz-transition:all .1s cubic-bezier(.42,0,.15,1);-o-transition:all .1s cubic-bezier(.42,0,.15,1);transition:all .1s cubic-bezier(.42,0,.15,1)}.cooked-related-recipes-title{margin:0 0 20px 0;font-size:1.5em;font-weight:600;color:#333}.cooked-related-recipes-grid{margin:20px 0}.cooked-related-recipes-empty,.cooked-related-recipes-error{padding:15px;margin:20px 0;background:#f9f9f9;border-left:4px solid #d63638;color:#666;font-style:italic}.cooked-related-recipes-empty{border-left-color:#0073aa;text-align:center}.cooked-related-recipes-grid .cooked-recipe-card{margin-bottom:20px}@media (max-width:768px){.cooked-related-recipes-grid.cooked-columns-3,.cooked-related-recipes-grid.cooked-columns-4{margin-left:-1.5%;width:103%}.cooked-related-recipes-grid.cooked-columns-3 .cooked-recipe,.cooked-related-recipes-grid.cooked-columns-4 .cooked-recipe{width:47%;min-width:47%}}@media (max-width:480px){.cooked-related-recipes-grid.cooked-columns-2 .cooked-recipe,.cooked-related-recipes-grid.cooked-columns-3 .cooked-recipe,.cooked-related-recipes-grid.cooked-columns-4 .cooked-recipe{width:97%;min-width:97%}}.cooked-allergens{display:inline-flex;flex-wrap:wrap;gap:6px;margin:6px 0 0 0;vertical-align:middle}.cooked-allergen{display:inline-flex;align-items:center;justify-content:center;cursor:default}.cooked-allergen .cooked-icon{font-size:1.5rem;line-height:1}.cooked-allergen,.cooked-allergen .cooked-icon{color:rgba(0,0,0,.4)}.cooked-allergen:hover .cooked-icon{color:rgba(0,0,0,.6)}.cooked-recipe-card .cooked-allergens{display:flex;margin:8px 0 0 0}.cooked-recipe-card-modern-centered .cooked-allergens{justify-content:center}.cooked-recipe-full .cooked-allergens{display:flex;margin:0 0 1rem}.cooked-recipe-fitness .cooked-allergens,.cooked-recipe-modern .cooked-allergens{display:flex;justify-content:center;margin:0;padding:0 1rem .4rem}.cooked-recipe-info .cooked-allergens-info .cooked-allergens{display:inline-flex;margin:0;vertical-align:middle}.cooked-recipe-directions .cooked-direction video.cooked-direction-video{width:100%;aspect-ratio:16/9;max-height:400px;border-radius:4px} \ No newline at end of file diff --git a/bun.lock b/bun.lock index caf75f4..833faa0 100644 --- a/bun.lock +++ b/bun.lock @@ -5,18 +5,18 @@ "": { "name": "cooked", "devDependencies": { - "@playwright/test": "^1.61.0", - "@types/node": "^25.9.4", - "@wordpress/e2e-test-utils-playwright": "^1.48.1", - "@wordpress/env": "^11.8.1", - "bestzip": "^3.0.1", + "@playwright/test": "^1.62.1", + "@types/node": "^26.2.0", + "@wordpress/e2e-test-utils-playwright": "^1.52.0", + "@wordpress/env": "^11.12.0", + "bestzip": "^3.0.2", "gulp": "^5.0.1", "gulp-clean-css": "^4.3.0", "gulp-rename": "^2.1.0", "gulp-sass": "^6.0.1", "gulp-uglify": "^3.0.2", - "playwright": "^1.61.0", - "sass": "^1.101.0", + "playwright": "^1.62.1", + "sass": "^1.102.0", }, }, }, @@ -257,7 +257,7 @@ "@pkgjs/parseargs": ["@pkgjs/parseargs@0.11.0", "", {}, "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg=="], - "@playwright/test": ["@playwright/test@1.61.0", "", { "dependencies": { "playwright": "1.61.0" }, "bin": { "playwright": "cli.js" } }, "sha512-cKA5B6lpFEMyMGjxF54QihfYpB4FkEGH+qZhtArDEG+wezQAJY8Pq6C7T1SjWz+FFzt3TbyoXBQYk/0292TdJA=="], + "@playwright/test": ["@playwright/test@1.62.1", "", { "dependencies": { "playwright": "1.62.1" }, "bin": { "playwright": "cli.js" } }, "sha512-DTcUc8qii+cpHvtOwggMtBRMjKZHXYWdw8syRYu2vtzuq4Wxphqq4NfCs5Zt44L6mA8rfDfj+PHnxFc/FeK6mQ=="], "@prisma/instrumentation": ["@prisma/instrumentation@6.11.1", "", { "dependencies": { "@opentelemetry/instrumentation": "^0.52.0 || ^0.53.0 || ^0.54.0 || ^0.55.0 || ^0.56.0 || ^0.57.0" }, "peerDependencies": { "@opentelemetry/api": "^1.8" } }, "sha512-mrZOev24EDhnefmnZX7WVVT7v+r9LttPRqf54ONvj6re4XMF7wFTpK2tLJi4XHB7fFp/6xhYbgRel8YV7gQiyA=="], @@ -299,7 +299,7 @@ "@types/mysql": ["@types/mysql@2.15.26", "", { "dependencies": { "@types/node": "*" } }, "sha512-DSLCOXhkvfS5WNNPbfn2KdICAmk8lLc+/PNvnPnF7gOdMZCxopXduqv0OQ13y/yA/zXTSikZZqVgybUxOEg6YQ=="], - "@types/node": ["@types/node@25.9.4", "", { "dependencies": { "undici-types": ">=7.24.0 <7.24.7" } }, "sha512-dszCsrKb5U7ZsVZBWiHFklTloVl0mSEnWH/iZXfZUlI4rzCUnsvGmgqfuVRHL54ugE7/wRuxEIXRa2iMZ+BG6g=="], + "@types/node": ["@types/node@26.2.0", "", { "dependencies": { "undici-types": "~8.3.0" } }, "sha512-5IviulTZeRNp2vAJ514cc/HUlY5nZ9fCbq9DMyC52BrhFZACo3nI0R7qBxhQmo/d27NFe96ur/b7Wwxklda+kg=="], "@types/pg": ["@types/pg@8.6.1", "", { "dependencies": { "@types/node": "*", "pg-protocol": "*", "pg-types": "^2.2.0" } }, "sha512-1Kc4oAGzAl7uqUStZCDvaLFqZrW9qWSjXOmBfdgyBP5La7Us6Mg4GBvRlSoaZMhQF/zSj1C8CtKMBkoiT8eL8w=="], @@ -313,9 +313,9 @@ "@types/yauzl": ["@types/yauzl@2.10.3", "", { "dependencies": { "@types/node": "*" } }, "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q=="], - "@wordpress/e2e-test-utils-playwright": ["@wordpress/e2e-test-utils-playwright@1.48.1", "", { "dependencies": { "change-case": "^4.1.2", "get-port": "^5.1.1", "lighthouse": "^12.2.2", "mime": "^3.0.0", "web-vitals": "^4.2.1" }, "peerDependencies": { "@playwright/test": ">=1", "@types/node": "^20.17.10" } }, "sha512-jaBTZHZ0SG1MQ/Nb4GdaH7DMcieFp/ysYOoCodmhfoScFoWTI66/e8egPxU8cOs06gXnOYNPvJ9hnCaeCTz3ug=="], + "@wordpress/e2e-test-utils-playwright": ["@wordpress/e2e-test-utils-playwright@1.52.0", "", { "dependencies": { "change-case": "^4.1.2", "get-port": "^5.1.1", "lighthouse": "^12.2.2", "mime": "^3.0.0", "web-vitals": "^4.2.1" }, "peerDependencies": { "@playwright/test": ">=1", "@types/node": "^20.17.10" } }, "sha512-LK0/WJd8iGfTo9ONaHrLSBh0IjKHeXU7urZPaNuXXB7jdt+coLTF+y0gP4c6sQ5m9OgfQqf01FPT/t2XzEbJ+w=="], - "@wordpress/env": ["@wordpress/env@11.8.1", "", { "dependencies": { "@inquirer/prompts": "^7.2.0", "@wp-playground/cli": "^3.0.48", "adm-zip": "^0.5.9", "chalk": "^4.1.1", "copy-dir": "^1.3.0", "cross-spawn": "^7.0.6", "docker-compose": "^0.24.3", "got": "^11.8.5", "js-yaml": "^3.13.1", "ora": "^4.0.2", "rimraf": "^5.0.10", "simple-git": "^3.24.0", "yargs": "^17.3.0" }, "bin": { "wp-env": "bin/wp-env" } }, "sha512-wboYnQNPfMfcgYgiNDbrGGZj8RkdeZtaz2UvmAVUrhOgAvHFpZXsKuXuLdCCSv7JdcHGG5xLWMYhvRLTGOcQ1g=="], + "@wordpress/env": ["@wordpress/env@11.12.0", "", { "dependencies": { "@inquirer/prompts": "^7.2.0", "@wp-playground/cli": "^3.0.48", "adm-zip": "^0.5.9", "chalk": "^4.1.1", "copy-dir": "^1.3.0", "cross-spawn": "^7.0.6", "docker-compose": "^0.24.3", "got": "^11.8.5", "js-yaml": "^3.15.0", "ora": "^4.0.2", "rimraf": "^5.0.10", "simple-git": "^3.32.3", "yargs": "^17.3.0" }, "bin": { "wp-env": "bin/wp-env" } }, "sha512-P1mYGEgnkYCbBPRaT9uAyxe3hFfsfkvxXKQ+Pfb00z/mXz5xbPC48ZdXTQmxTcpaj0nDwJfrBz0vzc074B5nrA=="], "@wp-playground/blueprints": ["@wp-playground/blueprints@3.1.33", "", { "dependencies": { "@php-wasm/logger": "3.1.33", "@php-wasm/progress": "3.1.33", "@php-wasm/stream-compression": "3.1.33", "@php-wasm/universal": "3.1.33", "@php-wasm/util": "3.1.33", "@php-wasm/web-service-worker": "3.1.33", "@wp-playground/common": "3.1.33", "@wp-playground/storage": "3.1.33", "@wp-playground/wordpress": "3.1.33", "ajv": "8.12.0" } }, "sha512-bAs0MOBgXPDYtsO2tQcXSqveEaye8xcNGOQvovvE6c5pZWD4RlsiuZ71oKGmtq7JJhgdLTNj0lkcF9f2NX6vrg=="], @@ -413,7 +413,7 @@ "before-after-hook": ["before-after-hook@2.2.3", "", {}, "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ=="], - "bestzip": ["bestzip@3.0.1", "", { "dependencies": { "archiver": "^8.0.0", "glob": "^13.0.6", "which": "^6.0.1", "yargs": "^16.2.0" }, "bin": { "bestzip": "bin/cli.js" } }, "sha512-sUOmPTsusjvT/hdflzoGrCreDgtGHx4btDdLw2Ykjpg4hhJWuIlWUd3a4qWdHhcTJ8kHL6JLW/dR/XhCPomB4w=="], + "bestzip": ["bestzip@3.0.2", "", { "dependencies": { "archiver": "^8.0.0", "glob": "^13.0.6", "which": "^6.0.1", "yargs": "^16.2.0" }, "bin": { "bestzip": "bin/cli.js" } }, "sha512-Zxl7GRh4HQdR4KD/WS+CBrN2aVIs8wa+ozSLrISyxVNG7kl/nragWeHL3vZRfF+UGWO707WjRjboN9CoPBl5kg=="], "binary-extensions": ["binary-extensions@2.3.0", "", {}, "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw=="], @@ -815,7 +815,7 @@ "js-library-detector": ["js-library-detector@6.7.0", "", {}, "sha512-c80Qupofp43y4cJ7+8TTDN/AsDwLi5oOm/plBrWI+iQt485vKXCco+yVmOwEgdo9VOdsYTuV0UlTeetVPTriXA=="], - "js-yaml": ["js-yaml@3.14.2", "", { "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg=="], + "js-yaml": ["js-yaml@3.15.1", "", { "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "sha512-S99WuO3HlhO3XN41EtYUNl9zzXjoJx7QvmipxsJVxtCBT0YHEFy+iOJhjSvrmV12nYhWpZaM8lPHkJm0yUMbag=="], "json-buffer": ["json-buffer@3.0.1", "", {}, "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ=="], @@ -1011,9 +1011,9 @@ "pify": ["pify@4.0.1", "", {}, "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g=="], - "playwright": ["playwright@1.61.0", "", { "dependencies": { "playwright-core": "1.61.0" }, "optionalDependencies": { "fsevents": "2.3.2" }, "bin": { "playwright": "cli.js" } }, "sha512-Z+7BeeqQPRRzklHsVFP4KTGIyMxKUmfeRA4WisM6G3/XW6nwGeX6fX9qYaDa+CiUqpOkb2f6X3nar05R3kSuJQ=="], + "playwright": ["playwright@1.62.1", "", { "dependencies": { "playwright-core": "1.62.1" }, "optionalDependencies": { "fsevents": "2.3.2" }, "bin": { "playwright": "cli.js" } }, "sha512-0M+L3LAD8/nm554LOla9Ayx0j0tmFZ0FBcoQ7F1VuVHpM/XpiC8RcDzBQB8W5+hA8L22THxELzeF+2WcUzvcLg=="], - "playwright-core": ["playwright-core@1.61.0", "", { "bin": { "playwright-core": "cli.js" } }, "sha512-caX7TrY3Ml6egyDX0WUcTHDxodl/b51y5wJOdCEA36QviK/s2g081hvmGs8eaE3DWb6NYZQ6BjO/QkNRPenoPA=="], + "playwright-core": ["playwright-core@1.62.1", "", { "bin": { "playwright-core": "cli.js" } }, "sha512-wPYSwEBJY9GHraISXqyqtx0na0LpO3XEX7jNDhntbex7tzUS7kLnZsOlFruFJB4Hi/rhDMjXGqHewDZ68nYZVw=="], "plugin-error": ["plugin-error@1.0.1", "", { "dependencies": { "ansi-colors": "^1.0.1", "arr-diff": "^4.0.0", "arr-union": "^3.1.0", "extend-shallow": "^3.0.2" } }, "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA=="], @@ -1095,7 +1095,7 @@ "safer-buffer": ["safer-buffer@2.1.2", "", {}, "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="], - "sass": ["sass@1.101.0", "", { "dependencies": { "chokidar": "^5.0.0", "immutable": "^5.1.5", "source-map-js": ">=0.6.2 <2.0.0" }, "optionalDependencies": { "@parcel/watcher": "^2.4.1" }, "bin": { "sass": "sass.js" } }, "sha512-OL3GoQyoUdDt843DpVmDO6y2k1sc5IhUDSpu8XucEI+35neq5QivZ1iuegnpraEVTJXlQGK1gl27zKcTLEPbQw=="], + "sass": ["sass@1.102.0", "", { "dependencies": { "chokidar": "^5.0.0", "immutable": "^5.1.5", "source-map-js": ">=0.6.2 <2.0.0" }, "optionalDependencies": { "@parcel/watcher": "^2.4.1" }, "bin": { "sass": "sass.js" } }, "sha512-NSOyTnaQF7rTAEOtI2fwb386vL+akyiQLBZu8Na7hXCb+umJy0GAqlcMIaqACZ6Z1VgTBS4K9PG6B3IdjHGJsw=="], "sax": ["sax@1.6.0", "", {}, "sha512-6R3J5M4AcbtLUdZmRv2SygeVaM7IhrLXu9BmnOGmmACak8fiUtOsYNWUS4uK7upbmHIBbLBeFeI//477BKLBzA=="], @@ -1231,7 +1231,7 @@ "undertaker-registry": ["undertaker-registry@2.0.0", "", {}, "sha512-+hhVICbnp+rlzZMgxXenpvTxpuvA67Bfgtt+O9WOE5jo7w/dyiF1VmoZVIHvP2EkUjsyKyTwYKlLhA+j47m1Ew=="], - "undici-types": ["undici-types@7.24.6", "", {}, "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg=="], + "undici-types": ["undici-types@8.3.0", "", {}, "sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ=="], "universal-github-app-jwt": ["universal-github-app-jwt@1.2.0", "", { "dependencies": { "@types/jsonwebtoken": "^9.0.0", "jsonwebtoken": "^9.0.2" } }, "sha512-dncpMpnsKBk0eetwfN8D8OUHGfiDhhJ+mtsbMl+7PfW7mYjiH8LIcqRmYMtzYLgSh47HjfdBtrBwIQ/gizKR3g=="], @@ -1493,12 +1493,32 @@ "@sentry/node/minimatch/brace-expansion": ["brace-expansion@2.1.0", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w=="], + "@types/cacheable-request/@types/node/undici-types": ["undici-types@7.24.6", "", {}, "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg=="], + + "@types/connect/@types/node/undici-types": ["undici-types@7.24.6", "", {}, "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg=="], + + "@types/jsonwebtoken/@types/node/undici-types": ["undici-types@7.24.6", "", {}, "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg=="], + + "@types/keyv/@types/node/undici-types": ["undici-types@7.24.6", "", {}, "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg=="], + + "@types/mysql/@types/node/undici-types": ["undici-types@7.24.6", "", {}, "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg=="], + + "@types/pg/@types/node/undici-types": ["undici-types@7.24.6", "", {}, "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg=="], + + "@types/responselike/@types/node/undici-types": ["undici-types@7.24.6", "", {}, "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg=="], + + "@types/tedious/@types/node/undici-types": ["undici-types@7.24.6", "", {}, "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg=="], + + "@types/yauzl/@types/node/undici-types": ["undici-types@7.24.6", "", {}, "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg=="], + "bestzip/yargs/cliui": ["cliui@7.0.4", "", { "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.0", "wrap-ansi": "^7.0.0" } }, "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ=="], "bestzip/yargs/yargs-parser": ["yargs-parser@20.2.9", "", {}, "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w=="], "body-parser/debug/ms": ["ms@2.0.0", "", {}, "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="], + "chrome-launcher/@types/node/undici-types": ["undici-types@7.24.6", "", {}, "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg=="], + "cross-spawn/which/isexe": ["isexe@2.0.0", "", {}, "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="], "express/debug/ms": ["ms@2.0.0", "", {}, "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="], @@ -1535,6 +1555,8 @@ "send/debug/ms": ["ms@2.0.0", "", {}, "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="], + "speedline-core/@types/node/undici-types": ["undici-types@7.24.6", "", {}, "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg=="], + "@sentry/node/minimatch/brace-expansion/balanced-match": ["balanced-match@1.0.2", "", {}, "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="], "glob-watcher/chokidar/readdirp/picomatch": ["picomatch@2.3.2", "", {}, "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA=="], diff --git a/composer.json b/composer.json index ec3e9a3..43cbdfd 100644 --- a/composer.json +++ b/composer.json @@ -11,7 +11,7 @@ "nutrition" ], "homepage": "https://wordpress.org/plugins/cooked/", - "version": "1.15.0", + "version": "1.16.0", "type": "wordpress-plugin", "license": "GPL-2.0-or-later", "authors": [ diff --git a/composer.lock b/composer.lock index bc7911d..e1da5c6 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "5fafb24fed0730a4a82cc268b6968bd5", + "content-hash": "867ea208066f04f2fd8c088bac57cff8", "packages": [ { "name": "nxp/math-executor", @@ -346,20 +346,19 @@ }, { "name": "nikic/php-parser", - "version": "v5.7.0", + "version": "v5.8.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82" + "reference": "044a6a392ff8ad0d61f14370a5fbbd0a0107152f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/dca41cd15c2ac9d055ad70dbfd011130757d1f82", - "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/044a6a392ff8ad0d61f14370a5fbbd0a0107152f", + "reference": "044a6a392ff8ad0d61f14370a5fbbd0a0107152f", "shasum": "" }, "require": { - "ext-ctype": "*", "ext-json": "*", "ext-tokenizer": "*", "php": ">=7.4" @@ -398,9 +397,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.7.0" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.8.0" }, - "time": "2025-12-06T11:56:16+00:00" + "time": "2026-07-04T14:30:18+00:00" }, { "name": "phar-io/manifest", @@ -802,21 +801,21 @@ }, { "name": "phpcsstandards/phpcsextra", - "version": "1.5.0", + "version": "1.5.1", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHPCSExtra.git", - "reference": "b598aa890815b8df16363271b659d73280129101" + "reference": "39467533fdb742446d68c1d10ac33d625ee0311c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHPCSExtra/zipball/b598aa890815b8df16363271b659d73280129101", - "reference": "b598aa890815b8df16363271b659d73280129101", + "url": "https://api.github.com/repos/PHPCSStandards/PHPCSExtra/zipball/39467533fdb742446d68c1d10ac33d625ee0311c", + "reference": "39467533fdb742446d68c1d10ac33d625ee0311c", "shasum": "" }, "require": { "php": ">=5.4", - "phpcsstandards/phpcsutils": "^1.2.0", + "phpcsstandards/phpcsutils": "^1.2.3", "squizlabs/php_codesniffer": "^3.13.5 || ^4.0.1" }, "require-dev": { @@ -880,20 +879,20 @@ "type": "thanks_dev" } ], - "time": "2025-11-12T23:06:57+00:00" + "time": "2026-07-27T11:13:17+00:00" }, { "name": "phpcsstandards/phpcsutils", - "version": "1.2.2", + "version": "1.2.3", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHPCSUtils.git", - "reference": "c216317e96c8b3f5932808f9b0f1f7a14e3bbf55" + "reference": "5f35d9408c54d7b529501f3c688b6eae562aea1f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHPCSUtils/zipball/c216317e96c8b3f5932808f9b0f1f7a14e3bbf55", - "reference": "c216317e96c8b3f5932808f9b0f1f7a14e3bbf55", + "url": "https://api.github.com/repos/PHPCSStandards/PHPCSUtils/zipball/5f35d9408c54d7b529501f3c688b6eae562aea1f", + "reference": "5f35d9408c54d7b529501f3c688b6eae562aea1f", "shasum": "" }, "require": { @@ -973,7 +972,7 @@ "type": "thanks_dev" } ], - "time": "2025-12-08T14:27:58+00:00" + "time": "2026-07-27T10:28:41+00:00" }, { "name": "phpstan/extension-installer", @@ -1025,11 +1024,11 @@ }, { "name": "phpstan/phpstan", - "version": "2.2.2", + "version": "2.2.8", "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/e5cc34d491a90e79c216d824f60fe21fd4d93bd6", - "reference": "e5cc34d491a90e79c216d824f60fe21fd4d93bd6", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/e285254e60f33c21902efef4a926ca0987c06804", + "reference": "e285254e60f33c21902efef4a926ca0987c06804", "shasum": "" }, "require": { @@ -1085,7 +1084,7 @@ "type": "github" } ], - "time": "2026-06-05T09:00:01+00:00" + "time": "2026-08-04T22:21:45+00:00" }, { "name": "phpunit/php-code-coverage", @@ -1408,25 +1407,25 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.34", + "version": "9.6.36", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "b36f02317466907a230d3aa1d34467041271ef4a" + "reference": "abab27ed286d3e1246fbbfe6b56bfd732d945ec9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/b36f02317466907a230d3aa1d34467041271ef4a", - "reference": "b36f02317466907a230d3aa1d34467041271ef4a", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/abab27ed286d3e1246fbbfe6b56bfd732d945ec9", + "reference": "abab27ed286d3e1246fbbfe6b56bfd732d945ec9", "shasum": "" }, "require": { "doctrine/instantiator": "^1.5.0 || ^2", "ext-dom": "*", + "ext-filter": "*", "ext-json": "*", "ext-libxml": "*", "ext-mbstring": "*", - "ext-xml": "*", "ext-xmlwriter": "*", "myclabs/deep-copy": "^1.13.4", "phar-io/manifest": "^2.0.4", @@ -1442,7 +1441,7 @@ "sebastian/comparator": "^4.0.10", "sebastian/diff": "^4.0.6", "sebastian/environment": "^5.1.5", - "sebastian/exporter": "^4.0.8", + "sebastian/exporter": "^4.0.9", "sebastian/global-state": "^5.0.8", "sebastian/object-enumerator": "^4.0.4", "sebastian/resource-operations": "^3.0.4", @@ -1491,31 +1490,15 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.34" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.36" }, "funding": [ { - "url": "https://phpunit.de/sponsors.html", - "type": "custom" - }, - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - }, - { - "url": "https://liberapay.com/sebastianbergmann", - "type": "liberapay" - }, - { - "url": "https://thanks.dev/u/gh/sebastianbergmann", - "type": "thanks_dev" - }, - { - "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit", - "type": "tidelift" + "url": "https://phpunit.de/sponsoring.html", + "type": "other" } ], - "time": "2026-01-27T05:45:00+00:00" + "time": "2026-08-11T06:25:15+00:00" }, { "name": "sebastian/cli-parser", @@ -1958,16 +1941,16 @@ }, { "name": "sebastian/exporter", - "version": "4.0.8", + "version": "4.0.9", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "14c6ba52f95a36c3d27c835d65efc7123c446e8c" + "reference": "4352c1a3df741a7ba9e61af6fed51d1fee41cbf7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/14c6ba52f95a36c3d27c835d65efc7123c446e8c", - "reference": "14c6ba52f95a36c3d27c835d65efc7123c446e8c", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/4352c1a3df741a7ba9e61af6fed51d1fee41cbf7", + "reference": "4352c1a3df741a7ba9e61af6fed51d1fee41cbf7", "shasum": "" }, "require": { @@ -2023,7 +2006,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.8" + "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.9" }, "funding": [ { @@ -2043,7 +2026,7 @@ "type": "tidelift" } ], - "time": "2025-09-24T06:03:27+00:00" + "time": "2026-08-11T04:55:59+00:00" }, { "name": "sebastian/global-state", @@ -2292,16 +2275,16 @@ }, { "name": "sebastian/recursion-context", - "version": "4.0.6", + "version": "4.0.7", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "539c6691e0623af6dc6f9c20384c120f963465a0" + "reference": "c85be6922b7fd365942b986b9a50397d65407611" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/539c6691e0623af6dc6f9c20384c120f963465a0", - "reference": "539c6691e0623af6dc6f9c20384c120f963465a0", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/c85be6922b7fd365942b986b9a50397d65407611", + "reference": "c85be6922b7fd365942b986b9a50397d65407611", "shasum": "" }, "require": { @@ -2343,7 +2326,7 @@ "homepage": "https://github.com/sebastianbergmann/recursion-context", "support": { "issues": "https://github.com/sebastianbergmann/recursion-context/issues", - "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.6" + "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.7" }, "funding": [ { @@ -2363,7 +2346,7 @@ "type": "tidelift" } ], - "time": "2025-08-10T06:57:39+00:00" + "time": "2026-08-11T05:25:24+00:00" }, { "name": "sebastian/resource-operations", @@ -2530,16 +2513,16 @@ }, { "name": "squizlabs/php_codesniffer", - "version": "3.13.5", + "version": "3.13.6", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHP_CodeSniffer.git", - "reference": "0ca86845ce43291e8f5692c7356fccf3bcf02bf4" + "reference": "4c378e1a528ea066890fc2397cbdd2f94eb2fc91" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/0ca86845ce43291e8f5692c7356fccf3bcf02bf4", - "reference": "0ca86845ce43291e8f5692c7356fccf3bcf02bf4", + "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/4c378e1a528ea066890fc2397cbdd2f94eb2fc91", + "reference": "4c378e1a528ea066890fc2397cbdd2f94eb2fc91", "shasum": "" }, "require": { @@ -2605,7 +2588,7 @@ "type": "thanks_dev" } ], - "time": "2025-11-04T16:30:35+00:00" + "time": "2026-08-06T00:17:32+00:00" }, { "name": "szepeviktor/phpstan-wordpress", @@ -2722,16 +2705,16 @@ }, { "name": "wp-coding-standards/wpcs", - "version": "3.3.0", + "version": "3.4.1", "source": { "type": "git", "url": "https://github.com/WordPress/WordPress-Coding-Standards.git", - "reference": "7795ec6fa05663d716a549d0b44e47ffc8b0d4a6" + "reference": "ec2ff942335f33683a5957a85d138753876a05cf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/WordPress/WordPress-Coding-Standards/zipball/7795ec6fa05663d716a549d0b44e47ffc8b0d4a6", - "reference": "7795ec6fa05663d716a549d0b44e47ffc8b0d4a6", + "url": "https://api.github.com/repos/WordPress/WordPress-Coding-Standards/zipball/ec2ff942335f33683a5957a85d138753876a05cf", + "reference": "ec2ff942335f33683a5957a85d138753876a05cf", "shasum": "" }, "require": { @@ -2740,9 +2723,9 @@ "ext-tokenizer": "*", "ext-xmlreader": "*", "php": ">=7.2", - "phpcsstandards/phpcsextra": "^1.5.0", - "phpcsstandards/phpcsutils": "^1.1.0", - "squizlabs/php_codesniffer": "^3.13.4" + "phpcsstandards/phpcsextra": "^1.5.1", + "phpcsstandards/phpcsutils": "^1.2.3", + "squizlabs/php_codesniffer": "^3.13.5" }, "require-dev": { "php-parallel-lint/php-console-highlighter": "^1.0.0", @@ -2784,7 +2767,7 @@ "type": "custom" } ], - "time": "2025-11-25T12:08:04+00:00" + "time": "2026-07-27T11:53:23+00:00" } ], "aliases": [], diff --git a/cooked.php b/cooked.php index 189b15b..ea0c1d0 100644 --- a/cooked.php +++ b/cooked.php @@ -5,7 +5,7 @@ * Description: A recipe plugin for WordPress. * Author: Gora Tech * Author URI: https://goratech.dev - * Version: 1.15.0 + * Version: 1.16.0 * Text Domain: cooked * Domain Path: /languages * License: GPLv2 or later @@ -40,7 +40,7 @@ require_once __DIR__ . '/vendor/autoload.php'; define( 'COOKED_DEV', false ); -define( 'COOKED_VERSION', '1.15.0' ); +define( 'COOKED_VERSION', '1.16.0' ); if ( ! class_exists( 'Cooked_Plugin' ) ) : @@ -291,6 +291,7 @@ public static function instance() { self::$instance->elementor = new Cooked_Elementor(); self::$instance->extra = new Cooked_Plugin_Extra(); self::$instance->multilingual = new Cooked_Multilingual(); + self::$instance->pixwell = new Cooked_Pixwell(); self::$instance->module_setup(); @@ -495,6 +496,7 @@ private function includes() { require_once COOKED_DIR . 'includes/class.cooked-plugin-extra.php'; require_once COOKED_DIR . 'includes/class.cooked-multilingual.php'; require_once COOKED_DIR . 'includes/class.cooked-allergens.php'; + require_once COOKED_DIR . 'includes/class.cooked-pixwell.php'; if ( defined( 'WP_CLI' ) && WP_CLI ) { require_once COOKED_DIR . 'includes/class.cooked-cli.php'; diff --git a/includes/class.cooked-admin-enqueues.php b/includes/class.cooked-admin-enqueues.php index 9580d5f..3bd71cc 100644 --- a/includes/class.cooked-admin-enqueues.php +++ b/includes/class.cooked-admin-enqueues.php @@ -138,6 +138,9 @@ public function admin_enqueues( $hook ) { 'i18n_image_title' => __('Add Image', 'cooked'), 'i18n_image_change' => __('Change Image', 'cooked'), 'i18n_image_button' => __('Use this Image', 'cooked'), + 'i18n_video_title' => __('Add Video', 'cooked'), + 'i18n_video_change' => __('Change Video', 'cooked'), + 'i18n_video_button' => __('Use this Video', 'cooked'), 'i18n_gallery_image_title' => __('Add to Gallery', 'cooked'), 'i18n_edit_image_title' => __('Edit Gallery Item', 'cooked'), 'i18n_edit_image_button' => __('Update Gallery Item', 'cooked'), diff --git a/includes/class.cooked-allergens.php b/includes/class.cooked-allergens.php index 5f86895..e02cc01 100644 --- a/includes/class.cooked-allergens.php +++ b/includes/class.cooked-allergens.php @@ -127,6 +127,20 @@ public static function render_meta_box( $post ) { $selected = isset( $recipe_settings['allergens'] ) && is_array( $recipe_settings['allergens'] ) ? $recipe_settings['allergens'] : []; + self::render_field_checkboxes( $selected ); + } + + /** + * Render allergen checkbox field markup (admin metabox and front-end form). + * + * @since 1.15.0 + * @param array $selected Selected allergen storage keys. + */ + public static function render_field_checkboxes( $selected = [] ) { + if ( ! is_array( $selected ) ) { + $selected = []; + } + $allergens = self::get_allergens(); ?>
@@ -146,6 +160,23 @@ public static function render_meta_box( $post ) { '; - echo '' . esc_html__( 'Allergens', 'cooked' ) . ''; + echo '' . __( 'Allergens', 'cooked' ) . ''; echo $html; echo ''; } diff --git a/includes/class.cooked-functions.php b/includes/class.cooked-functions.php index b47b0ab..5b61300 100644 --- a/includes/class.cooked-functions.php +++ b/includes/class.cooked-functions.php @@ -12,43 +12,43 @@ class Cooked_Functions { - /** - * Guest message ID - * - * @var string - */ - private static $guest_message_id = false; - - public static function sanitize_text_field( $text ) { - $text = htmlentities( wp_unslash( $text ) ); - $text = sanitize_text_field( $text ); - return $text; - } - - public static function array_splice_assoc( &$input, $offset, $length, $replacement = [] ) { - $replacement = (array) $replacement; - - if ( is_array($input) ): - $key_indexes = array_flip(array_keys($input)); - if (isset($input[$offset]) && is_string($offset)) { - $offset = $key_indexes[$offset]; - $offset = (int) $offset + 1; - } - if (isset($input[$length]) && is_string($length)) { - $length = $key_indexes[$length] - $offset; - } - - $input = array_slice($input, 0, $offset, TRUE) - + $replacement - + array_slice($input, $offset + $length, NULL, TRUE); - endif; - } - - public static function wpml_xml( $cooked_tabs_fields ) { - echo '
'; - echo '

WPML Config XML

'; - echo '
';
-				echo esc_html('
+    /**
+     * Guest message ID
+     *
+     * @var string
+     */
+    private static $guest_message_id = false;
+
+    public static function sanitize_text_field( $text ) {
+        $text = htmlentities( wp_unslash( $text ) );
+        $text = sanitize_text_field( $text );
+        return $text;
+    }
+
+    public static function array_splice_assoc( &$input, $offset, $length, $replacement = [] ) {
+        $replacement = (array) $replacement;
+
+        if ( is_array($input) ):
+            $key_indexes = array_flip(array_keys($input));
+            if (isset($input[$offset]) && is_string($offset)) {
+                $offset = $key_indexes[$offset];
+                $offset = (int) $offset + 1;
+            }
+            if (isset($input[$length]) && is_string($length)) {
+                $length = $key_indexes[$length] - $offset;
+            }
+
+            $input = array_slice($input, 0, $offset, TRUE)
+                    + $replacement
+                    + array_slice($input, $offset + $length, NULL, TRUE);
+        endif;
+    }
+
+    public static function wpml_xml( $cooked_tabs_fields ) {
+        echo '
'; + echo '

WPML Config XML

'; + echo '
';
+                echo esc_html('
     
         _recipe_settings
     
@@ -60,214 +60,220 @@ public static function wpml_xml( $cooked_tabs_fields ) {
     
     
 ');
-				echo esc_html( "        " ) . "
"; - foreach ( $cooked_tabs_fields as $key => $val ): - echo esc_html( "            " ) . "
"; - foreach ( $val['fields'] as $sub_key => $sub_val ): - echo esc_html( "                " ) . "
"; - endforeach; - echo esc_html( "            
" ) . "
"; - endforeach; - echo esc_html( "        
" ); - echo esc_html(' + echo esc_html( "        " ) . "
"; + foreach ( $cooked_tabs_fields as $key => $val ): + echo esc_html( "            " ) . "
"; + foreach ( $val['fields'] as $sub_key => $sub_val ): + echo esc_html( "                " ) . "
"; + endforeach; + echo esc_html( "            
" ) . "
"; + endforeach; + echo esc_html( "        
" ); + echo esc_html('     
'); - echo '
'; - echo '
'; - } - - public static function hex2rgb( $hex ) { - list( $r,$g,$b ) = sscanf( $hex, "#%02x%02x%02x" ); - $rgb_array = [$r, $g, $b]; - return implode( ',',$rgb_array ); - } - - public static function parse_readme_changelog( $readme_url = false, $title = false ) { - ob_start(); - include !$readme_url ? COOKED_DIR . 'readme.txt' : $readme_url; - $readme = ob_get_clean(); - - $readme = make_clickable(esc_html($readme)); - $readme = preg_replace('/`(.*?)`/', '\\1', $readme); - //$readme = preg_replace( '/[\040]\*\*\NEW:\*\*/', '' . __( 'New', 'cooked' ) . '', $readme); - //$readme = preg_replace( '/[\040]\*\*\TWEAK:\*\*/', '' . __( 'Tweak', 'cooked' ) . '', $readme); - //$readme = preg_replace( '/[\040]\*\*\FIX:\*\*/', '' . __( 'Fixed', 'cooked' ) . '', $readme); - //$readme = preg_replace( '/[\040]\*\*\NEW\*\*/', '' . __( 'New', 'cooked' ) . '', $readme); - //$readme = preg_replace( '/[\040]\*\*\TWEAK\*\*/', '' . __( 'Tweak', 'cooked' ) . '', $readme); - //$readme = preg_replace( '/[\040]\*\*\FIX\*\*/', '' . __( 'Fixed', 'cooked' ) . '', $readme); - $readme = preg_replace( '/\*\*(.*?)\*\*/', '\\1', $readme); - $readme = preg_replace( '/\*(.*?)\*/', '\\1', $readme); - $readme = explode( '== Changelog ==', $readme ); - $readme = $readme[1]; - /* translators: a title for the "What's new in Cooked?" section. */ - $whats_new_title = '

' . ( $title ? esc_html( $title ) : apply_filters( 'cooked_whats_new_title', sprintf( __( "What's new in %s?", "cooked" ), 'Cooked ' . COOKED_VERSION ) ) ) . '

'; - $readme = preg_replace('/= (.*?) =/', $whats_new_title, $readme); - $readme = preg_replace("/\*+(.*)?/i","
  • $1
",$readme); - $readme = preg_replace("/(\<\/ul\>\n(.*)\
    *)+/","",$readme); - $readme = explode( $whats_new_title, $readme ); - $readme = $whats_new_title . $readme[1]; - - return $readme; - } - - public static function print_options() { - $default_print_options = apply_filters( 'cooked_default_print_options', [ - 'print_options_title' => 'checked', - 'print_options_info' => '', - 'print_options_excerpt' => '', - 'print_options_images' => '', - 'print_options_ingredients' => 'checked', - 'print_options_directions' => 'checked', - 'print_options_notes' => 'checked', - 'print_options_nutrition' => '', - ]); - - echo '
    '; - - echo ''; - echo '

    ' . __( 'Print Options:','cooked') . '

    '; - - echo ' '; - echo ' '; - echo ' '; - echo ' '; - echo ' '; - echo ' '; - echo ' '; - echo ' '; - - echo '
    '; - } - - public static function print_options_js() { - ?>'; + echo '
'; + } + + public static function hex2rgb( $hex ) { + list( $r,$g,$b ) = sscanf( $hex, "#%02x%02x%02x" ); + $rgb_array = [$r, $g, $b]; + return implode( ',',$rgb_array ); + } + + public static function parse_readme_changelog( $readme_url = false, $title = false ) { + ob_start(); + include !$readme_url ? COOKED_DIR . 'readme.txt' : $readme_url; + $readme = ob_get_clean(); + + $readme = make_clickable(esc_html($readme)); + $readme = preg_replace('/`(.*?)`/', '\\1', $readme); + //$readme = preg_replace( '/[\040]\*\*\NEW:\*\*/', '' . __( 'New', 'cooked' ) . '', $readme); + //$readme = preg_replace( '/[\040]\*\*\TWEAK:\*\*/', '' . __( 'Tweak', 'cooked' ) . '', $readme); + //$readme = preg_replace( '/[\040]\*\*\FIX:\*\*/', '' . __( 'Fixed', 'cooked' ) . '', $readme); + //$readme = preg_replace( '/[\040]\*\*\NEW\*\*/', '' . __( 'New', 'cooked' ) . '', $readme); + //$readme = preg_replace( '/[\040]\*\*\TWEAK\*\*/', '' . __( 'Tweak', 'cooked' ) . '', $readme); + //$readme = preg_replace( '/[\040]\*\*\FIX\*\*/', '' . __( 'Fixed', 'cooked' ) . '', $readme); + $readme = preg_replace( '/\*\*(.*?)\*\*/', '\\1', $readme); + $readme = preg_replace( '/\*(.*?)\*/', '\\1', $readme); + $readme = explode( '== Changelog ==', $readme ); + $readme = $readme[1]; + /* translators: a title for the "What's new in Cooked?" section. */ + $whats_new_title = '

' . ( $title ? esc_html( $title ) : apply_filters( 'cooked_whats_new_title', sprintf( __( "What's new in %s?", "cooked" ), 'Cooked ' . COOKED_VERSION ) ) ) . '

'; + $readme = preg_replace('/= (.*?) =/', $whats_new_title, $readme); + $readme = preg_replace("/\*+(.*)?/i","
  • $1
",$readme); + $readme = preg_replace("/(\<\/ul\>\n(.*)\
    *)+/","",$readme); + $readme = explode( $whats_new_title, $readme ); + $readme = $whats_new_title . $readme[1]; + + return $readme; + } + + public static function print_options() { + $default_print_options = apply_filters( 'cooked_default_print_options', [ + 'print_options_title' => 'checked', + 'print_options_info' => '', + 'print_options_excerpt' => '', + 'print_options_images' => '', + 'print_options_ingredients' => 'checked', + 'print_options_directions' => 'checked', + 'print_options_notes' => 'checked', + 'print_options_nutrition' => '', + ]); + + echo '
    '; + + echo ''; + echo '

    ' . __( 'Print Options:','cooked') . '

    '; + + echo ' '; + echo ' '; + echo ' '; + echo ' '; + echo ' '; + echo ' '; + echo ' '; + echo ' '; + + echo '
    '; + } + + public static function print_options_js() { + ?> +
    +

    + + + Auto.', 'cooked' ); ?> +

    +
    + Auto so Cooked follows it when visitors switch themes.', 'cooked' ); + } + +} diff --git a/includes/class.cooked-recipe-meta.php b/includes/class.cooked-recipe-meta.php index b2353fb..d1fd51c 100644 --- a/includes/class.cooked-recipe-meta.php +++ b/includes/class.cooked-recipe-meta.php @@ -115,7 +115,7 @@ public function add_recipe_meta_box( $post_type ) { $post_types = apply_filters( 'cp_recipe_metabox_post_types' , ['cp_recipe'] ); if ( in_array( $post_type, $post_types ) ) { - add_meta_box( 'cooked_recipe_settings', __( 'Settings', 'cooked' ), [&$this, 'render_recipe_meta_box'], $post_type, 'normal', 'high' ); + add_meta_box( 'cooked_recipe_settings', __( 'Cooked Settings', 'cooked' ), [&$this, 'render_recipe_meta_box'], $post_type, 'normal', 'high' ); } } @@ -917,6 +917,17 @@ function cooked_render_recipe_fields( $post_id ) {
    +
    + + + + + + + +
    + +
@@ -977,7 +988,7 @@ function cooked_render_recipe_fields( $post_id ) { 'teeny' => true, 'media_buttons' => false, 'wpautop' => false, - 'editor_height' => 100, + 'editor_height' => 250, 'textarea_name' => '_recipe_settings[directions][' . $random_key . '][content]', 'quicktags' => true ]); @@ -986,6 +997,13 @@ function cooked_render_recipe_fields( $post_id ) { +
+ + + +
+ +
@@ -1017,6 +1035,13 @@ function cooked_render_recipe_fields( $post_id ) {
+
+ + + +
+ +
diff --git a/includes/class.cooked-recipes.php b/includes/class.cooked-recipes.php index e3841c9..0c52211 100644 --- a/includes/class.cooked-recipes.php +++ b/includes/class.cooked-recipes.php @@ -31,6 +31,37 @@ public function __construct() { add_action( 'restrict_manage_posts', [&$this, 'filter_recipes_by_taxonomy'], 10 ); add_filter('get_canonical_url', [&$this, 'modify_browse_page_canonical_url'], 20, 2); + add_filter( 'post_thumbnail_id', [ __CLASS__, 'filter_default_recipe_thumbnail' ], 10, 2 ); + } + + public static function filter_default_recipe_thumbnail( $thumbnail_id, $post ) { + if ( $thumbnail_id ) { + return $thumbnail_id; + } + + if ( is_admin() && ! wp_doing_ajax() ) { + return $thumbnail_id; + } + + $post = get_post( $post ); + + if ( ! $post || $post->post_type !== 'cp_recipe' ) { + return $thumbnail_id; + } + + global $_cooked_settings; + + if ( empty( $_cooked_settings ) ) { + $_cooked_settings = Cooked_Settings::get(); + } + + $default_image_id = isset( $_cooked_settings['default_recipe_image'] ) ? absint( $_cooked_settings['default_recipe_image'] ) : 0; + + if ( $default_image_id && wp_attachment_is_image( $default_image_id ) ) { + return $default_image_id; + } + + return $thumbnail_id; } public static function get( $args = false, $single = false, $ids_only = false, $limit = false, $ids_and_titles_only = false, $post_status = 'publish' ) { @@ -348,6 +379,37 @@ public function print_recipe_template() { endif; } + public static function print_logo() { + global $_cooked_settings; + + $print_view_options = isset( $_cooked_settings['print_view_display_options'] ) && is_array( $_cooked_settings['print_view_display_options'] ) + ? $_cooked_settings['print_view_display_options'] + : []; + + if ( ! in_array( 'site_logo', $print_view_options, true ) ) { + return; + } + + echo ''; + } + public static function vendor_checks( $content ) { global $wp_query, $post; @@ -1124,11 +1186,12 @@ public static function single_direction($dir, $number = false, $plain_text = fal echo '<' . $element . ' class="cooked-single-direction cooked-heading">' . esc_html($dir['section_heading_name']) . ''; } - } elseif (isset($dir['content']) && $dir['content'] || isset($dir['image']) && $dir['image']) { + } elseif ( !empty($dir['content']) || !empty($dir['image']) || !empty($dir['video']) ) { $dir_image_size = apply_filters( 'cooked_direction_image_size', 'large' ); - $image = isset($dir['image']) && $dir['image'] ? wp_get_attachment_image( $dir['image'], $dir_image_size, false, ['title' => esc_attr(get_the_title($dir['image']))] ) : ''; + $image = !empty($dir['image']) ? wp_get_attachment_image( $dir['image'], $dir_image_size, false, ['title' => esc_attr(get_the_title($dir['image']))] ) : ''; $content = !empty($dir['content']) ? Cooked_Recipes::format_content($dir['content']) : ''; + $video = !empty($dir['video']) ? wp_get_attachment_url($dir['video']) : ''; $image = apply_filters('cooked_direction_image_html', $image, $atts); @@ -1140,7 +1203,7 @@ public static function single_direction($dir, $number = false, $plain_text = fal echo '
'; echo $number ? '' . esc_html($number) . '' : ''; - echo '
' . do_shortcode($content) . ($image ? wpautop($image) : '') . '
'; + echo '
' . do_shortcode($content) . ($image ? wpautop($image) : '') . ($video ? '' : '') . '
'; echo '
'; } } diff --git a/includes/class.cooked-settings.php b/includes/class.cooked-settings.php index add1908..9d1250d 100644 --- a/includes/class.cooked-settings.php +++ b/includes/class.cooked-settings.php @@ -82,11 +82,23 @@ public static function sanitize_settings($settings) { }); } } + } elseif ( $field['type'] === 'image_field' ) { + $image_id = isset( $settings[ $field_name ] ) ? absint( $settings[ $field_name ] ) : 0; + + if ( $image_id && ! wp_attachment_is_image( $image_id ) ) { + $image_id = 0; + } + + $settings[ $field_name ] = $image_id; } } } } + if ( isset( $settings['dark_mode'] ) ) { + $settings['dark_mode'] = self::normalize_dark_mode( $settings['dark_mode'] ); + } + return $settings; } @@ -149,9 +161,91 @@ public static function get() { } } + if ( isset( $_cooked_settings['dark_mode'] ) ) { + $_cooked_settings['dark_mode'] = self::normalize_dark_mode( $_cooked_settings['dark_mode'] ); + } + return apply_filters( 'cooked_get_settings', $_cooked_settings ); } + /** + * Normalize dark mode setting to off|enabled|auto. + * + * Accepts legacy checkbox arrays (e.g. ['enabled']) and the current select string. + * + * @param mixed $mode Raw dark_mode setting value. + * @return string One of: off, enabled, auto. + */ + public static function normalize_dark_mode( $mode ) { + if ( is_array( $mode ) ) { + if ( in_array( 'auto', $mode, true ) ) { + return 'auto'; + } + if ( in_array( 'enabled', $mode, true ) ) { + return 'enabled'; + } + return 'off'; + } + + $mode = is_string( $mode ) ? $mode : 'off'; + + if ( in_array( $mode, [ 'off', 'enabled', 'auto' ], true ) ) { + return $mode; + } + + return 'off'; + } + + /** + * Dark mode CSS scope for dynamic styles. + * + * @return string|false Empty string when dark mode is forced on; theme selector when auto; false when off. + */ + public static function get_dark_mode_scope() { + $settings = self::get(); + $mode = self::normalize_dark_mode( isset( $settings['dark_mode'] ) ? $settings['dark_mode'] : 'off' ); + + if ( 'auto' === $mode ) { + $scope = apply_filters( 'cooked_dark_mode_auto_scope', '[data-theme="dark"]' ); + + return $scope ? $scope : false; + } + + if ( 'enabled' === $mode ) { + return ''; + } + + return false; + } + + /** + * Prefix a comma-separated CSS selector list with the dark mode scope. + * + * @param string $selectors Comma-separated CSS selectors. + * @return string|false Prefixed selectors, or false when dark mode is off. + */ + public static function prefix_dark_mode_css( $selectors ) { + $scope = self::get_dark_mode_scope(); + + if ( false === $scope ) { + return false; + } + + if ( '' === $scope ) { + return $selectors; + } + + $parts = array_map( 'trim', explode( ',', $selectors ) ); + $parts = array_map( + function ( $part ) use ( $scope ) { + return $scope . ' ' . $part; + }, + $parts + ); + + return implode( ', ', $parts ); + } + public static function tabs_fields() { $pages_array = self::pages_array( __('Choose a page...','cooked'), __('No pages','cooked') ); $categories_array = self::terms_array( 'cp_recipe_category', __('No default', 'cooked'), __('No categories', 'cooked') ); @@ -239,6 +333,18 @@ public static function tabs_fields() { ] ) ], + 'print_view_display_options' => [ + 'title' => __('Print View', 'cooked'), + 'desc' => __('When enabled, the website logo will appear at the top of the recipe print screen.', 'cooked'), + 'type' => 'checkboxes', + 'default' => [], + 'options' => apply_filters( + 'cooked_print_view_display_options', + [ + 'site_logo' => __('Show Website Logo', 'cooked'), + ] + ) + ], 'carb_format' => [ 'title' => __('Carbs Format', 'cooked'), 'desc' => __('You can display carbs as "Total" or "Net".', 'cooked'), @@ -362,13 +468,18 @@ public static function tabs_fields() { 'fields' => [ 'dark_mode' => [ 'title' => __('Dark Mode', 'cooked'), - 'desc' => __('If your site has a dark background, you should enable "Dark Mode" so that Cooked can match this style.', 'cooked'), - 'type' => 'checkboxes', - 'default' => [], + 'desc' => apply_filters( + 'cooked_dark_mode_field_desc', + __( 'Use Auto if your theme has a visitor dark mode toggle. Cooked will then match that choice. Otherwise leave this Off.', 'cooked' ) + ), + 'type' => 'select', + 'default' => 'off', 'options' => apply_filters( 'cooked_dark_mode_options', [ - 'enabled' => __('Enable "Dark Mode"', 'cooked'), + 'off' => __('Off', 'cooked'), + 'enabled' => __('On', 'cooked'), + 'auto' => __('Auto (match theme dark mode)', 'cooked'), ] ) ], @@ -385,6 +496,12 @@ public static function tabs_fields() { ] ) ], + 'default_recipe_image' => [ + 'title' => __( 'Default Recipe Image', 'cooked' ), + 'desc' => __( 'Used as the featured image for recipes that do not have one set.', 'cooked' ), + 'type' => 'image_field', + 'default' => 0, + ], 'main_color' => [ 'title' => __('Main Color', 'cooked'), 'desc' => __('Used on buttons, cooking timer, etc.', 'cooked'), @@ -673,6 +790,30 @@ public static function field_color_field( $field_name, $default ) { echo '

'; } + public static function field_image_field( $field_name, $default ) { + global $_cooked_settings; + + $attachment_id = isset( $_cooked_settings[ $field_name ] ) ? absint( $_cooked_settings[ $field_name ] ) : 0; + $has_image = $attachment_id && wp_attachment_is_image( $attachment_id ); + $preview_id = 'cooked-settings-image-' . esc_attr( $field_name ) . '-src'; + + echo '
'; + echo ''; + echo ''; + + if ( $has_image ) { + echo wp_get_attachment_image( $attachment_id, 'thumbnail', false, [ + 'class' => 'cooked-settings-image-preview-img', + 'id' => $preview_id, + ] ); + } else { + echo ''; + } + + echo ''; + echo '
'; + } + public static function field_checkboxes($field_name, $options, $color = false, $field = []) { global $_cooked_settings, $conditions; diff --git a/includes/widgets/recipe-card.php b/includes/widgets/recipe-card.php index 4e0a584..d4c95fd 100644 --- a/includes/widgets/recipe-card.php +++ b/includes/widgets/recipe-card.php @@ -26,13 +26,13 @@ public function __construct() { } public function widget( $args, $instance ) { - $recipe_id = ( isset($instance['recipe_id']) && $instance['recipe_id'] ? ' id="' . esc_attr( $instance['recipe_id'] ) . '"' : '' ); - $style = ( isset($instance['style']) && $instance['style'] ? ' style="' . esc_attr( $instance['style'] ) . '"' : '' ); - $width = ( isset($instance['width']) && $instance['width'] ? ' width="' . esc_attr( $instance['width'] ) . '"' : '' ); - $hide_image = ( isset($instance['hide_image']) && $instance['hide_image'] ? ' hide_image="true"' : '' ); - $hide_title = ( isset($instance['hide_title']) && $instance['hide_title'] ? ' hide_title="true"' : '' ); - $hide_excerpt = ( isset($instance['hide_excerpt']) && $instance['hide_excerpt'] ? ' hide_excerpt="true"' : '' ); - $hide_author = ( isset($instance['hide_author']) && $instance['hide_author'] ? ' hide_author="true"' : '' ); + $recipe_id = isset($instance['recipe_id']) && $instance['recipe_id'] ? ' id="' . esc_attr( $instance['recipe_id'] ) . '"' : ''; + $style = isset($instance['style']) && $instance['style'] ? ' style="' . esc_attr( $instance['style'] ) . '"' : ''; + $width = isset($instance['width']) && $instance['width'] ? ' width="' . esc_attr( $instance['width'] ) . '"' : ''; + $hide_image = isset($instance['hide_image']) && $instance['hide_image'] ? ' hide_image="true"' : ''; + $hide_title = isset($instance['hide_title']) && $instance['hide_title'] ? ' hide_title="true"' : ''; + $hide_excerpt = isset($instance['hide_excerpt']) && $instance['hide_excerpt'] ? ' hide_excerpt="true"' : ''; + $hide_author = isset($instance['hide_author']) && $instance['hide_author'] ? ' hide_author="true"' : ''; if ( apply_filters( 'cooked_can_show_recipe', true, $instance['recipe_id'] ) ): @@ -95,7 +95,7 @@ public function form( $instance ) {

@@ -103,10 +103,10 @@ public function form( $instance ) {

@@ -116,22 +116,22 @@ public function form( $instance ) {

- type="checkbox" value="1"> + type="checkbox" value="1">

- type="checkbox" value="1"> + type="checkbox" value="1">

- type="checkbox" value="1"> + type="checkbox" value="1">

- type="checkbox" value="1"> + type="checkbox" value="1">

@@ -140,14 +140,14 @@ public function form( $instance ) { public function update( $new_instance, $old_instance ) { $instance = []; - $instance['title'] = ( !empty( $new_instance['title'] ) ? wp_strip_all_tags( $new_instance['title'] ) : '' ); - $instance['recipe_id'] = ( !empty( $new_instance['recipe_id'] ) ? wp_strip_all_tags( $new_instance['recipe_id'] ) : false ); - $instance['width'] = ( !empty( $new_instance['width'] ) ? wp_strip_all_tags( $new_instance['width'] ) : '100%' ); - $instance['style'] = ( !empty( $new_instance['style'] ) ? wp_strip_all_tags( $new_instance['style'] ) : false ); - $instance['hide_image'] = ( !empty( $new_instance['hide_image'] ) ? wp_strip_all_tags( $new_instance['hide_image'] ) : false ); - $instance['hide_title'] = ( !empty( $new_instance['hide_title'] ) ? wp_strip_all_tags( $new_instance['hide_title'] ) : false ); - $instance['hide_excerpt'] = ( !empty( $new_instance['hide_excerpt'] ) ? wp_strip_all_tags( $new_instance['hide_excerpt'] ) : false ); - $instance['hide_author'] = ( !empty( $new_instance['hide_author'] ) ? wp_strip_all_tags( $new_instance['hide_author'] ) : false ); + $instance['title'] = !empty( $new_instance['title'] ) ? wp_strip_all_tags( $new_instance['title'] ) : ''; + $instance['recipe_id'] = !empty( $new_instance['recipe_id'] ) ? wp_strip_all_tags( $new_instance['recipe_id'] ) : false; + $instance['width'] = !empty( $new_instance['width'] ) ? wp_strip_all_tags( $new_instance['width'] ) : '100%'; + $instance['style'] = !empty( $new_instance['style'] ) ? wp_strip_all_tags( $new_instance['style'] ) : false; + $instance['hide_image'] = !empty( $new_instance['hide_image'] ) ? wp_strip_all_tags( $new_instance['hide_image'] ) : false; + $instance['hide_title'] = !empty( $new_instance['hide_title'] ) ? wp_strip_all_tags( $new_instance['hide_title'] ) : false; + $instance['hide_excerpt'] = !empty( $new_instance['hide_excerpt'] ) ? wp_strip_all_tags( $new_instance['hide_excerpt'] ) : false; + $instance['hide_author'] = !empty( $new_instance['hide_author'] ) ? wp_strip_all_tags( $new_instance['hide_author'] ) : false; return $instance; } diff --git a/includes/widgets/recipe-categories.php b/includes/widgets/recipe-categories.php index 292a3ef..16fc186 100644 --- a/includes/widgets/recipe-categories.php +++ b/includes/widgets/recipe-categories.php @@ -18,10 +18,10 @@ class Cooked_Widget_Recipe_Categories extends WP_Widget { public function __construct() { - $widget_ops = array( + $widget_ops = [ 'classname' => 'cooked_widget_recipe_categories', 'description' => 'Display a list of recipe categories.', - ); + ]; parent::__construct( 'cooked_widget_recipe_categories', 'Cooked - Recipe Categories', $widget_ops ); } @@ -32,10 +32,10 @@ public function widget( $args, $instance ) { echo wp_kses_post( $args['before_title'] ) . apply_filters( 'widget_title', $instance['title'] ) . wp_kses_post( $args['after_title'] ); } - $width = ( isset($instance['width']) && $instance['width'] ? ' width="' . esc_attr( $instance['width'] ) . '"' : '' ); - $child_of = ( isset($instance['child_of']) && $instance['child_of'] ? ' child_of="' . esc_attr( $instance['child_of'] ) . '"' : '' ); - $hide_empty = ( isset($instance['hide_empty']) && $instance['hide_empty'] ? ' hide_empty="' . esc_attr( $instance['hide_empty'] ) . '"' : '' ); - $show_description = ( isset($instance['show_description']) && $instance['show_description'] ? ' show_description="' . esc_attr( $instance['show_description'] ) . '"' : '' ); + $width = isset($instance['width']) && $instance['width'] ? ' width="' . esc_attr( $instance['width'] ) . '"' : ''; + $child_of = isset($instance['child_of']) && $instance['child_of'] ? ' child_of="' . esc_attr( $instance['child_of'] ) . '"' : ''; + $hide_empty = isset($instance['hide_empty']) && $instance['hide_empty'] ? ' hide_empty="' . esc_attr( $instance['hide_empty'] ) . '"' : ''; + $show_description = isset($instance['show_description']) && $instance['show_description'] ? ' show_description="' . esc_attr( $instance['show_description'] ) . '"' : ''; echo do_shortcode( '[cooked-categories' . esc_attr( $width . $child_of . $hide_empty . $show_description ) . ' style="list"]' ); echo wp_kses_post( $args['after_widget'] ); @@ -44,9 +44,9 @@ public function widget( $args, $instance ) { public function form( $instance ) { - $title = ( !empty( $instance['title'] ) ? $instance['title'] : false ); - $child_of = ( !empty( $instance['child_of'] ) ? $instance['child_of'] : false ); - $hide_empty = ( !empty( $instance['hide_empty'] ) ? $instance['hide_empty'] : false ); + $title = !empty( $instance['title'] ) ? $instance['title'] : false; + $child_of = !empty( $instance['child_of'] ) ? $instance['child_of'] : false; + $hide_empty = !empty( $instance['hide_empty'] ) ? $instance['hide_empty'] : false; $categories_array = Cooked_Settings::terms_array( 'cp_recipe_category', false, false, false, false, false ); ?> @@ -60,16 +60,16 @@ public function form( $instance ) {

- type="checkbox" value="1"> + type="checkbox" value="1">

@@ -78,10 +78,10 @@ public function form( $instance ) { public function update( $new_instance, $old_instance ) { - $instance = array(); - $instance['title'] = ( !empty( $new_instance['title'] ) ? wp_strip_all_tags( $new_instance['title'] ) : '' ); - $instance['child_of'] = ( !empty( $new_instance['child_of'] ) ? wp_strip_all_tags( $new_instance['child_of'] ) : false ); - $instance['hide_empty'] = ( !empty( $new_instance['hide_image'] ) ? wp_strip_all_tags( $new_instance['hide_image'] ) : false ); + $instance = []; + $instance['title'] = !empty( $new_instance['title'] ) ? wp_strip_all_tags( $new_instance['title'] ) : ''; + $instance['child_of'] = !empty( $new_instance['child_of'] ) ? wp_strip_all_tags( $new_instance['child_of'] ) : false; + $instance['hide_empty'] = !empty( $new_instance['hide_empty'] ) ? wp_strip_all_tags( $new_instance['hide_empty'] ) : false; return $instance; } diff --git a/includes/widgets/recipe-list.php b/includes/widgets/recipe-list.php index a140ad3..b2f2d92 100644 --- a/includes/widgets/recipe-list.php +++ b/includes/widgets/recipe-list.php @@ -52,7 +52,7 @@ public function form( $instance ) { $recipes = !empty( $instance['recipes'] ) ? $instance['recipes'] : ''; $width = !empty( $instance['width'] ) ? $instance['width'] : '100%'; $hide_image = isset( $instance['hide_image'] ) && $instance['hide_image'] ? true : false; - $hide_author = ( isset( $instance['hide_author'] ) && $instance['hide_author'] ? true : false ); + $hide_author = isset( $instance['hide_author'] ) && $instance['hide_author'] ? true : false; $recipes_style = $orderby == 'date' ? ' style="display:none;' : ''; $show_style = $orderby == 'ids' ? ' style="display:none;' : ''; diff --git a/includes/widgets/search.php b/includes/widgets/search.php index 59a2f09..ca4e8d6 100644 --- a/includes/widgets/search.php +++ b/includes/widgets/search.php @@ -18,10 +18,10 @@ class Cooked_Widget_Search extends WP_Widget { public function __construct() { - $widget_ops = array( + $widget_ops = [ 'classname' => 'cooked_widget_search', 'description' => 'Display the recipe search form.', - ); + ]; parent::__construct( 'cooked_widget_search', 'Cooked - Recipe Search', $widget_ops ); } @@ -31,9 +31,9 @@ public function widget( $args, $instance ) { if ( ! empty( $instance['title'] ) ) { echo wp_kses_post( $args['before_title'] ) . apply_filters( 'widget_title', $instance['title'] ) . wp_kses_post( $args['after_title'] ); } - $size = ( isset($instance['size']) && $instance['size'] == 'compact' ? ' compact="true"' : '' ); - $browse = ( isset($instance['hide_browse']) && $instance['hide_browse'] ? ' hide_browse="true"' : '' ); - $sorting = ( isset($instance['hide_sorting']) && $instance['hide_sorting'] ? ' hide_sorting="true"' : '' ); + $size = isset($instance['size']) && $instance['size'] == 'compact' ? ' compact="true"' : ''; + $browse = isset($instance['hide_browse']) && $instance['hide_browse'] ? ' hide_browse="true"' : ''; + $sorting = isset($instance['hide_sorting']) && $instance['hide_sorting'] ? ' hide_sorting="true"' : ''; echo do_shortcode( '[cooked-search' . esc_attr( $size . $browse . $sorting ) . ']' ); echo wp_kses_post( $args['after_widget'] ); @@ -41,10 +41,10 @@ public function widget( $args, $instance ) { public function form( $instance ) { - $title = ( !empty( $instance['title'] ) ? $instance['title'] : false ); - $size = ( !empty( $instance['size'] ) ? $instance['size'] : 'compact' ); - $hide_browse = ( isset( $instance['hide_browse'] ) && $instance['hide_browse'] ? true : false ); - $hide_sorting = ( isset( $instance['hide_sorting'] ) && $instance['hide_sorting'] ? true : false ); + $title = !empty( $instance['title'] ) ? $instance['title'] : false; + $size = !empty( $instance['size'] ) ? $instance['size'] : 'compact'; + $hide_browse = isset( $instance['hide_browse'] ) && $instance['hide_browse'] ? true : false; + $hide_sorting = isset( $instance['hide_sorting'] ) && $instance['hide_sorting'] ? true : false; ?> @@ -56,8 +56,8 @@ public function form( $instance ) {

@@ -75,11 +75,11 @@ public function form( $instance ) { } public function update( $new_instance, $old_instance ) { - $instance = array(); - $instance['title'] = ( ! empty( $new_instance['title'] ) ) ? wp_strip_all_tags( $new_instance['title'] ) : ''; - $instance['size'] = ( ! empty( $new_instance['size'] ) ) ? wp_strip_all_tags( $new_instance['size'] ) : 'compact'; - $instance['hide_browse'] = ( !isset( $new_instance['hide_browse'] ) ? 0 : 1 ); - $instance['hide_sorting'] = ( !isset( $new_instance['hide_sorting'] ) ? 0 : 1 ); + $instance = []; + $instance['title'] = !empty( $new_instance['title'] ) ? wp_strip_all_tags( $new_instance['title'] ) : ''; + $instance['size'] = !empty( $new_instance['size'] ) ? wp_strip_all_tags( $new_instance['size'] ) : 'compact'; + $instance['hide_browse'] = !empty( $new_instance['hide_browse'] ) ? 1 : 0; + $instance['hide_sorting'] = !empty( $new_instance['hide_sorting'] ) ? 1 : 0; return $instance; } diff --git a/languages/cooked-fr_FR.mo b/languages/cooked-fr_FR.mo index 5b914a3..df5ea45 100644 Binary files a/languages/cooked-fr_FR.mo and b/languages/cooked-fr_FR.mo differ diff --git a/languages/cooked-fr_FR.po b/languages/cooked-fr_FR.po index df0d68c..e79e94d 100644 --- a/languages/cooked-fr_FR.po +++ b/languages/cooked-fr_FR.po @@ -1,15 +1,23 @@ msgid "" -msgstr "Project-Id-Version: Cooked\nReport-Msgid-Bugs-To: https://wordpress.or" -"g/support/plugin/cooked\nLast-Translator: \nLanguage-Team: Gora Tech <" -"contact@goratech.dev>\nMIME-Version: 1.0\nContent-Type: text/plain; ch" -"arset=UTF-8\nContent-Transfer-Encoding: 8bit\nPOT-Creation-Date: 2026-" -"01-09 20:03+0200\nPO-Revision-Date: 2020-01-06 09:16-0500\nLanguage: f" -"r\nPlural-Forms: nplurals=2; plural=(n > 1);\nX-Generator: Poedit 2.2." -"4\nX-Poedit-Basepath: ..\nX-Poedit-WPHeader: cooked.php\nX-Poedit-Sour" -"ceCharset: UTF-8\nX-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c" -";_nx:4c,1,2;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_" -"e;esc_html_x:1,2c;_n_noop:1,2;_nx_noop:3c,1,2;__ngettext_noop:1,2\nX-P" -"oedit-SearchPath-0: .\nX-Poedit-SearchPathExcluded-0: *.js\n" +msgstr "" +"Project-Id-Version: Cooked\n" +"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/cooked\n" +"Last-Translator: \n" +"Language-Team: Gora Tech \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"POT-Creation-Date: 2026-01-09 20:03+0200\n" +"PO-Revision-Date: 2020-01-06 09:16-0500\n" +"Language: fr\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Generator: Poedit 2.2.4\n" +"X-Poedit-Basepath: ..\n" +"X-Poedit-WPHeader: cooked.php\n" +"X-Poedit-SourceCharset: UTF-8\n" +"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;_nx_noop:3c,1,2;__ngettext_noop:1,2\n" +"X-Poedit-SearchPath-0: .\n" +"X-Poedit-SearchPathExcluded-0: *.js\n" #: includes/class.cooked-csv-import.php:42 msgid "CSV file not found." @@ -32,9 +40,9 @@ msgstr "Le fichier CSV doit contenir une colonne « title »." #: includes/class.cooked-functions.php:134 #: includes/class.cooked-recipe-meta.php:177 #: includes/class.cooked-recipe-meta.php:415 -#: includes/class.cooked-recipe-meta.php:1322 -#: includes/class.cooked-recipes.php:788 -#: includes/class.cooked-recipes.php:820 +#: includes/class.cooked-recipe-meta.php:1347 +#: includes/class.cooked-recipes.php:740 +#: includes/class.cooked-recipes.php:772 msgid "Ingredients" msgstr "Ingrédients" @@ -43,9 +51,9 @@ msgstr "Ingrédients" #: includes/class.cooked-functions.php:135 #: includes/class.cooked-recipe-meta.php:177 #: includes/class.cooked-recipe-meta.php:421 -#: includes/class.cooked-recipe-meta.php:1353 -#: includes/class.cooked-recipes.php:792 -#: includes/class.cooked-recipes.php:821 +#: includes/class.cooked-recipe-meta.php:1378 +#: includes/class.cooked-recipes.php:744 +#: includes/class.cooked-recipes.php:773 msgid "Directions" msgstr "Instructions" @@ -57,8 +65,7 @@ msgstr "Catégorie de recette actuellement consultée." #. translators: referring to the bottom of the Settings page. #: includes/class.cooked-admin-menus.php:45 #: includes/class.cooked-admin-menus.php:65 -#: includes/class.cooked-recipe-meta.php:118 -#: includes/class.cooked-shortcodes.php:157 +#: includes/class.cooked-shortcodes.php:167 #: templates/admin/welcome.php:18 msgid "Settings" msgstr "Paramètres" @@ -68,10 +75,8 @@ msgid "Display Recipe" msgstr "Afficher la recette" #: includes/class.cooked-recipe-meta.php:289 -msgid "This shortcode displays the recipe in its entirety, using the \"Recipe" -" Template\" field in the first tab." -msgstr "Ce shortcode affiche la recette dans son intégralité, en utilisant le " -"champ \"Modèle de recette\" dans le premier onglet." +msgid "This shortcode displays the recipe in its entirety, using the \"Recipe Template\" field in the first tab." +msgstr "Ce shortcode affiche la recette dans son intégralité, en utilisant le champ \"Modèle de recette\" dans le premier onglet." #: includes/class.cooked-recipe-meta.php:409 msgid "Layout" @@ -83,7 +88,7 @@ msgid "Nutrition" msgstr "Valeurs nutritionnelles" #: includes/class.cooked-recipe-meta.php:433 -#: includes/class.cooked-recipe-meta.php:1434 +#: includes/class.cooked-recipe-meta.php:1459 msgid "Gallery" msgstr "Galerie" @@ -98,11 +103,8 @@ msgstr "La recette doit être validée" #. translators: for displaying singular or plural versions depending on the number of recipes. #: includes/class.cooked-recipe-meta.php:499 #, php-format -msgid "It looks like this recipe is from a different version of %s. Please re" -"view and click \"Update\" to save it." -msgstr "Il semble que cette recette provienne d'une version différente de %s. " -"Merci de la modifier et cliquez sur \"Mettre à jour\" pour l'enregistr" -"er." +msgid "It looks like this recipe is from a different version of %s. Please review and click \"Update\" to save it." +msgstr "Il semble que cette recette provienne d'une version différente de %s. Merci de la modifier et cliquez sur \"Mettre à jour\" pour l'enregistrer." #: includes/class.cooked-recipe-meta.php:507 msgid "Recipe Shortcode" @@ -110,8 +112,7 @@ msgstr "Shortcode de la recette" #: includes/class.cooked-recipe-meta.php:508 msgid "You can use the following shortcode to display your recipe anywhere:" -msgstr "Vous pouvez utiliser le shortcode suivant pour afficher votre recette " -"n’importe où :" +msgstr "Vous pouvez utiliser le shortcode suivant pour afficher votre recette n'importe où :" #: includes/class.cooked-recipe-meta.php:522 msgid "Recipe Template" @@ -122,11 +123,8 @@ msgid "Default Recipe Template" msgstr "Modèle de recette par défaut" #: includes/class.cooked-recipe-meta.php:522 -msgid "Choose from the options below to use this layout as the default for ne" -"w recipes or for all recipes." -msgstr "Choisissez parmi les options ci-dessous pour utiliser ce modèle comme " -"mise en page par défaut pour les nouvelles recettes uniquement ou pour" -" toutes les recettes." +msgid "Choose from the options below to use this layout as the default for new recipes or for all recipes." +msgstr "Choisissez parmi les options ci-dessous pour utiliser ce modèle comme mise en page par défaut pour les nouvelles recettes uniquement ou pour toutes les recettes." #: includes/class.cooked-recipe-meta.php:522 msgid "Save as Default" @@ -141,46 +139,35 @@ msgid "Reset" msgstr "Réinitialiser" #: includes/class.cooked-recipe-meta.php:522 -msgid "Using the built-in recipe shortcodes found on the \"Shortcodes\" tab, " -"you can create the layout of your recipe below. Use the \"Save as Defa" -"ult\" button to save your template." -msgstr "En utilisant les codes abrégés de recette intégrés dans l’onglet \"Sho" -"rtcodes\", vous pouvez créer ci-dessous une mise en page pour votre re" -"cette. Utilisez ensuite le bouton \"Enregistrer comme valeur par défau" -"t\" pour enregistrer ce nouveau modèle." +msgid "Using the built-in recipe shortcodes found on the \"Shortcodes\" tab, you can create the layout of your recipe below. Use the \"Save as Default\" button to save your template." +msgstr "En utilisant les codes abrégés de recette intégrés dans l'onglet \"Shortcodes\", vous pouvez créer ci-dessous une mise en page pour votre recette. Utilisez ensuite le bouton \"Enregistrer comme valeur par défaut\" pour enregistrer ce nouveau modèle." #: includes/class.cooked-recipe-meta.php:540 msgid "Recipe Excerpt" msgstr "Extrait de la recette" #: includes/class.cooked-recipe-meta.php:540 -msgid "The excerpt is used on recipe listing templates, where the full recipe" -" should not be displayed." -msgstr "L’extrait est utilisé sur les modèles de liste de recettes, où la rece" -"tte complète ne doit pas être affichée." +msgid "The excerpt is used on recipe listing templates, where the full recipe should not be displayed." +msgstr "L'extrait est utilisé sur les modèles de liste de recettes, où la recette complète ne doit pas être affichée." #: includes/class.cooked-recipe-meta.php:563 msgid "SEO Description" msgstr "Description de la minuterie" #: includes/class.cooked-recipe-meta.php:563 -msgid "This description is used for SEO purposes and is optional. By default," -" Cooked will use the Recipe Excerpt above if available or the Recipe T" -"itle if not." -msgstr "Cette description est utilisée à des fins de SEO et est facultative. P" -"ar défaut, Cooked utilisera l'extrait de recette ci-dessus si disponib" -"le ou le titre de recette si ce n'est pas le cas." +msgid "This description is used for SEO purposes and is optional. By default, Cooked will use the Recipe Excerpt above if available or the Recipe Title if not." +msgstr "Cette description est utilisée à des fins de SEO et est facultative. Par défaut, Cooked utilisera l'extrait de recette ci-dessus si disponible ou le titre de recette si ce n'est pas le cas." #: includes/class.cooked-recipe-meta.php:574 -#: includes/class.cooked-settings.php:230 +#: includes/class.cooked-settings.php:326 msgid "Difficulty Level" msgstr "Niveau de difficulté" #: includes/class.cooked-recipe-meta.php:583 -#: includes/class.cooked-recipe-meta.php:1296 -#: includes/class.cooked-settings.php:233 -#: includes/class.cooked-shortcodes.php:478 -#: includes/class.cooked-shortcodes.php:700 +#: includes/class.cooked-recipe-meta.php:1321 +#: includes/class.cooked-settings.php:329 +#: includes/class.cooked-shortcodes.php:509 +#: includes/class.cooked-shortcodes.php:732 msgid "Prep Time" msgstr "Préparation" @@ -191,19 +178,19 @@ msgid "minutes" msgstr "minutes" #: includes/class.cooked-recipe-meta.php:588 -#: includes/class.cooked-recipe-meta.php:1297 -#: includes/class.cooked-settings.php:234 -#: includes/class.cooked-shortcodes.php:479 -#: includes/class.cooked-shortcodes.php:709 +#: includes/class.cooked-recipe-meta.php:1322 +#: includes/class.cooked-settings.php:330 +#: includes/class.cooked-shortcodes.php:510 +#: includes/class.cooked-shortcodes.php:741 msgid "Cook Time" msgstr "Cuisson" #: includes/class.cooked-recipe-meta.php:593 -#: includes/class.cooked-recipe-meta.php:1298 -#: includes/class.cooked-settings.php:235 -#: includes/class.cooked-shortcodes.php:480 -#: includes/class.cooked-shortcodes.php:720 -#: includes/class.cooked-shortcodes.php:727 +#: includes/class.cooked-recipe-meta.php:1323 +#: includes/class.cooked-settings.php:331 +#: includes/class.cooked-shortcodes.php:511 +#: includes/class.cooked-shortcodes.php:752 +#: includes/class.cooked-shortcodes.php:759 msgid "Total Time" msgstr "Temps total" @@ -215,17 +202,17 @@ msgstr "Notes de recette" msgid "The notes are displayed in the recipe." msgstr "Les notes sont affichées dans la recette." -#: includes/class.cooked-admin-enqueues.php:178 +#: includes/class.cooked-admin-enqueues.php:181 #: includes/class.cooked-recipe-meta.php:626 msgid "Amount" msgstr "Quantité" -#: includes/class.cooked-admin-enqueues.php:179 +#: includes/class.cooked-admin-enqueues.php:182 #: includes/class.cooked-recipe-meta.php:627 msgid "Measurement" msgstr "Unité de mesure" -#: includes/class.cooked-admin-enqueues.php:180 +#: includes/class.cooked-admin-enqueues.php:183 #: includes/class.cooked-recipe-meta.php:628 msgid "Item" msgstr "Élément" @@ -250,15 +237,15 @@ msgstr "ex. Compote de pommes, tofu, etc." #: includes/class.cooked-recipe-meta.php:699 #: includes/class.cooked-recipe-meta.php:855 -#: includes/class.cooked-recipe-meta.php:928 -#: includes/class.cooked-recipe-meta.php:1025 +#: includes/class.cooked-recipe-meta.php:939 +#: includes/class.cooked-recipe-meta.php:1050 msgid "Section Heading" msgstr "Titre de la section" #: includes/class.cooked-recipe-meta.php:703 #: includes/class.cooked-recipe-meta.php:859 -#: includes/class.cooked-recipe-meta.php:932 -#: includes/class.cooked-recipe-meta.php:1029 +#: includes/class.cooked-recipe-meta.php:943 +#: includes/class.cooked-recipe-meta.php:1054 msgid "Heading Element:" msgstr "Élément de titre :" @@ -267,347 +254,326 @@ msgid "Add Ingredient" msgstr "Ajouter un ingrédient" #: includes/class.cooked-recipe-meta.php:795 -#: includes/class.cooked-recipe-meta.php:1001 +#: includes/class.cooked-recipe-meta.php:1019 msgid "Add Section Heading" msgstr "Ajouter une entête" #: includes/class.cooked-admin-enqueues.php:139 #: includes/class.cooked-recipe-meta.php:912 +#: includes/class.cooked-settings.php:802 msgid "Change Image" -msgstr "Changer l’image" +msgstr "Changer l'image" #: includes/class.cooked-admin-enqueues.php:138 #: includes/class.cooked-recipe-meta.php:912 -#: includes/class.cooked-recipe-meta.php:968 -#: includes/class.cooked-recipe-meta.php:1012 +#: includes/class.cooked-recipe-meta.php:979 +#: includes/class.cooked-recipe-meta.php:1030 +#: includes/class.cooked-settings.php:802 msgid "Add Image" msgstr "Ajouter une image" -#: includes/class.cooked-recipe-meta.php:1000 +#: includes/class.cooked-recipe-meta.php:1018 msgid "Add Direction" msgstr "Ajouter une étape de la recette" -#: includes/class.cooked-recipe-meta.php:1060 +#: includes/class.cooked-recipe-meta.php:1085 msgid "Nutrition Information" msgstr "Informations nutritionnelles" -#: includes/class.cooked-recipe-meta.php:1098 -#: includes/class.cooked-shortcodes.php:1091 +#: includes/class.cooked-recipe-meta.php:1123 +#: includes/class.cooked-shortcodes.php:1123 msgid "Nutrition Facts" msgstr "Valeurs nutritionnelles" -#: includes/class.cooked-recipe-meta.php:1116 -#: includes/class.cooked-shortcodes.php:1059 +#: includes/class.cooked-recipe-meta.php:1141 +#: includes/class.cooked-shortcodes.php:1091 msgid "Amount per serving" msgstr "Quantité par portion" -#: includes/class.cooked-recipe-meta.php:1126 -#: includes/class.cooked-shortcodes.php:1069 +#: includes/class.cooked-recipe-meta.php:1151 +#: includes/class.cooked-shortcodes.php:1101 msgid "% Daily Value *" msgstr "% Valeur quotidienne *" -#: includes/class.cooked-recipe-meta.php:1145 -#: includes/class.cooked-shortcodes.php:1001 +#: includes/class.cooked-recipe-meta.php:1170 +#: includes/class.cooked-shortcodes.php:1033 msgid "Includes" msgstr "Dont" -#: includes/class.cooked-recipe-meta.php:1177 -#: includes/class.cooked-shortcodes.php:1095 -msgid "The % Daily Value (DV) tells you how much a nutrient in a serving of f" -"ood contributes to a daily diet. 2,000 calories a day is used for gene" -"ral nutrition advice." -msgstr "Le % de la valeur quotidienne (VQ) indique dans quelle mesure un nutri" -"ment dans une portion contribue à un régime alimentaire quotidien. 2 0" -"00 calories par jour sont utilisées comme référence générale." +#: includes/class.cooked-recipe-meta.php:1202 +#: includes/class.cooked-shortcodes.php:1127 +msgid "The % Daily Value (DV) tells you how much a nutrient in a serving of food contributes to a daily diet. 2,000 calories a day is used for general nutrition advice." +msgstr "Le % de la valeur quotidienne (VQ) indique dans quelle mesure un nutriment dans une portion contribue à un régime alimentaire quotidien. 2 000 calories par jour sont utilisées comme référence générale." -#: includes/class.cooked-recipe-meta.php:1193 +#: includes/class.cooked-recipe-meta.php:1218 msgid "Recipe Gallery Type" msgstr "Modifier la galerie de recette" -#: includes/class.cooked-recipe-meta.php:1206 +#: includes/class.cooked-recipe-meta.php:1231 msgid "Choose one..." msgstr "Choisissez une..." #. translators: a title for the video section of the recipe editor, where users can paste a YouToub or Vimeo URL into the field below. -#: includes/class.cooked-recipe-meta.php:1220 +#: includes/class.cooked-recipe-meta.php:1245 #, php-format msgid "%1$s or %2$s Video" msgstr "%1$s ou %2$s Vidéo" #. translators: a message describing how to display a video from YouTube or Vimeo. -#: includes/class.cooked-recipe-meta.php:1224 +#: includes/class.cooked-recipe-meta.php:1249 #, php-format -msgid "If you would like to display a video as the first item in your gallery" -", you can paste a valid %1$s or %2$s URL below." -msgstr "Si vous souhaitez afficher une vidéo en premier élément de votre galer" -"ie, collez une URL %1$s ou %2$s valide ci-dessous." +msgid "If you would like to display a video as the first item in your gallery, you can paste a valid %1$s or %2$s URL below." +msgstr "Si vous souhaitez afficher une vidéo en premier élément de votre galerie, collez une URL %1$s ou %2$s valide ci-dessous." -#: includes/class.cooked-recipe-meta.php:1229 +#: includes/class.cooked-recipe-meta.php:1254 msgid "Gallery Items" msgstr "Éléments de la galerie" -#: includes/class.cooked-admin-enqueues.php:141 -#: includes/class.cooked-recipe-meta.php:1244 +#: includes/class.cooked-admin-enqueues.php:144 +#: includes/class.cooked-recipe-meta.php:1269 msgid "Add to Gallery" msgstr "Ajouter à la galerie" -#: includes/class.cooked-recipe-meta.php:1260 +#: includes/class.cooked-recipe-meta.php:1285 msgid "Recipe Information" msgstr "Informations sur la recette" -#: includes/class.cooked-recipe-meta.php:1261 +#: includes/class.cooked-recipe-meta.php:1286 msgid "This will display the recipe author, cooking times, etc." msgstr "Cela affichera l’auteur de la recette, les temps de cuisson, etc." #. translators: "include and exclude" section title #. translators: "left and right" section title -#: includes/class.cooked-recipe-meta.php:1270 -#: includes/class.cooked-recipe-meta.php:1280 +#: includes/class.cooked-recipe-meta.php:1295 +#: includes/class.cooked-recipe-meta.php:1305 #, php-format msgid "\"%1$s\" and \"%2$s\"" msgstr "« %1$s » et « %2$s »" -#: includes/class.cooked-recipe-meta.php:1272 -msgid "This will allow you to include or exclude content from the shortcode o" -"utput." -msgstr "Cela vous permettra d'inclure ou d'exclure du contenu généré par le sh" -"ortcode." +#: includes/class.cooked-recipe-meta.php:1297 +msgid "This will allow you to include or exclude content from the shortcode output." +msgstr "Cela vous permettra d'inclure ou d'exclure du contenu généré par le shortcode." -#: includes/class.cooked-recipe-meta.php:1281 -msgid "Used like \"include\", but will position the content to the left or ri" -"ght." -msgstr "Utilisé de la même façon qu'« inclure », mais positionnera le contenu " -"à gauche ou à droite." +#: includes/class.cooked-recipe-meta.php:1306 +msgid "Used like \"include\", but will position the content to the left or right." +msgstr "Utilisé de la même façon qu'« inclure », mais positionnera le contenu à gauche ou à droite." #: includes/class.cooked-recipe-meta.php:361 -#: includes/class.cooked-recipe-meta.php:1291 -#: includes/class.cooked-recipe-meta.php:1337 -#: includes/class.cooked-recipe-meta.php:1368 +#: includes/class.cooked-recipe-meta.php:1316 +#: includes/class.cooked-recipe-meta.php:1362 #: includes/class.cooked-recipe-meta.php:1393 -#: includes/class.cooked-recipe-meta.php:1417 -#: includes/class.cooked-recipe-meta.php:1477 -#: includes/class.cooked-recipe-meta.php:1522 -#: includes/class.cooked-recipe-meta.php:1552 -#: includes/class.cooked-recipe-meta.php:1597 -#: includes/class.cooked-recipe-meta.php:1720 +#: includes/class.cooked-recipe-meta.php:1418 +#: includes/class.cooked-recipe-meta.php:1442 +#: includes/class.cooked-recipe-meta.php:1502 +#: includes/class.cooked-recipe-meta.php:1547 +#: includes/class.cooked-recipe-meta.php:1577 +#: includes/class.cooked-recipe-meta.php:1622 +#: includes/class.cooked-recipe-meta.php:1745 msgid "Available Variables" msgstr "Variables disponibles" -#: includes/class.cooked-recipe-meta.php:1295 -#: includes/class.cooked-settings.php:228 -#: includes/class.cooked-shortcodes.php:475 -#: includes/class.cooked-shortcodes.php:653 +#: includes/class.cooked-recipe-meta.php:1320 +#: includes/class.cooked-settings.php:324 +#: includes/class.cooked-shortcodes.php:506 +#: includes/class.cooked-shortcodes.php:684 msgid "Author" msgstr "Auteur" -#: includes/class.cooked-recipe-meta.php:1299 -#: includes/class.cooked-shortcodes.php:476 -#: includes/class.cooked-shortcodes.php:664 +#: includes/class.cooked-recipe-meta.php:1324 +#: includes/class.cooked-shortcodes.php:507 +#: includes/class.cooked-shortcodes.php:695 msgid "Difficulty" msgstr "Difficulté" -#: includes/class.cooked-recipe-meta.php:1300 +#: includes/class.cooked-recipe-meta.php:1325 msgid "Servings Switcher" msgstr "Sélecteur de parts" -#: includes/class.cooked-recipe-meta.php:1301 -#: includes/class.cooked-settings.php:229 -#: includes/class.cooked-shortcodes.php:747 -#: includes/class.cooked-shortcodes.php:750 +#: includes/class.cooked-recipe-meta.php:1326 +#: includes/class.cooked-settings.php:325 +#: includes/class.cooked-shortcodes.php:779 +#: includes/class.cooked-shortcodes.php:782 #: includes/class.cooked-taxonomies.php:39 msgid "Category" msgstr "Catégorie" -#: includes/class.cooked-recipe-meta.php:1302 +#: includes/class.cooked-recipe-meta.php:1327 msgid "Print Mode" msgstr "Imprimer" -#: includes/class.cooked-recipe-meta.php:1303 +#: includes/class.cooked-recipe-meta.php:1328 msgid "Full-Screen Mode" msgstr "Mode plein écran" -#: includes/class.cooked-recipe-meta.php:1323 -msgid "This will display the list of ingredients, added via the \"Ingredients" -"\" tab." -msgstr "Cela affichera la liste des ingrédients, ajoutés via l’onglet « Ingréd" -"ients »." +#: includes/class.cooked-recipe-meta.php:1348 +msgid "This will display the list of ingredients, added via the \"Ingredients\" tab." +msgstr "Cela affichera la liste des ingrédients, ajoutés via l’onglet « Ingrédients »." -#: includes/class.cooked-recipe-meta.php:1329 +#: includes/class.cooked-recipe-meta.php:1354 msgid "This will allow you to hide or show the checkboxes:" msgstr "Cela vous permettra de masquer ou d’afficher les cases à cocher :" -#: includes/class.cooked-recipe-meta.php:1339 +#: includes/class.cooked-recipe-meta.php:1364 msgid "Show checkboxes" msgstr "Afficher les cases à cocher" -#: includes/class.cooked-recipe-meta.php:1340 +#: includes/class.cooked-recipe-meta.php:1365 msgid "Hide checkboxes" msgstr "Masquer les cases à cocher" -#: includes/class.cooked-recipe-meta.php:1354 -msgid "This will display the list of directions, added via the \"Directions\"" -" tab." -msgstr "Cela affichera la liste des étapes de la recette, ajoutée via l’onglet" -" « Etapes de la recette »." +#: includes/class.cooked-recipe-meta.php:1379 +msgid "This will display the list of directions, added via the \"Directions\" tab." +msgstr "Cela affichera la liste des étapes de la recette, ajoutée via l’onglet « Etapes de la recette »." -#: includes/class.cooked-recipe-meta.php:1360 +#: includes/class.cooked-recipe-meta.php:1385 msgid "This will allow you to hide or show the numbers:" -msgstr "Cela vous permettra de masquer ou d’afficher la numérotaion des étapes" -" :" +msgstr "Cela vous permettra de masquer ou d’afficher la numérotaion des étapes :" -#: includes/class.cooked-recipe-meta.php:1370 +#: includes/class.cooked-recipe-meta.php:1395 msgid "Show numbers" msgstr "Afficher la numérotation" -#: includes/class.cooked-recipe-meta.php:1371 +#: includes/class.cooked-recipe-meta.php:1396 msgid "Hide numbers" msgstr "Masquer la numérotation" -#: includes/class.cooked-recipe-meta.php:1384 +#: includes/class.cooked-recipe-meta.php:1409 msgid "Featured Image" msgstr "Image mise en avant" -#: includes/class.cooked-recipe-meta.php:1385 +#: includes/class.cooked-recipe-meta.php:1410 msgid "This will display the featured image, if one is set." msgstr "Cela affichera l’image sélectionnée, si elle est définie." -#: includes/class.cooked-recipe-meta.php:1395 -#: includes/class.cooked-recipe-meta.php:1419 -#: includes/class.cooked-recipe-meta.php:1524 +#: includes/class.cooked-recipe-meta.php:1420 +#: includes/class.cooked-recipe-meta.php:1444 +#: includes/class.cooked-recipe-meta.php:1549 msgid "None" msgstr "Aucun" -#: includes/class.cooked-recipe-meta.php:1408 +#: includes/class.cooked-recipe-meta.php:1433 msgid "Nutrition Label" msgstr "Étiquette nutritionnelle" -#: includes/class.cooked-recipe-meta.php:1409 +#: includes/class.cooked-recipe-meta.php:1434 msgid "This will display the Nutrition Facts label, if data is present." -msgstr "Cela affichera l'étiquette de la valeur nutritive, si des données sont" -" présentes." +msgstr "Cela affichera l'étiquette de la valeur nutritive, si des données sont présentes." -#: includes/class.cooked-recipe-meta.php:1435 -msgid "This will display the gallery, if one is set or created from the \"Gal" -"lery\" tab." -msgstr "Cela affichera la galerie, si elle est définie ou créée à partir de l’" -"onglet « Galerie »." +#: includes/class.cooked-recipe-meta.php:1460 +msgid "This will display the gallery, if one is set or created from the \"Gallery\" tab." +msgstr "Cela affichera la galerie, si elle est définie ou créée à partir de l’onglet « Galerie »." -#: includes/class.cooked-recipe-meta.php:1443 +#: includes/class.cooked-recipe-meta.php:1468 msgid "Set the width of the gallery." msgstr "Définissez la largeur de la galerie." -#: includes/class.cooked-recipe-meta.php:1450 +#: includes/class.cooked-recipe-meta.php:1475 msgid "Set the image size ratio." msgstr "Définissez le rapport de taille d’image." -#: includes/class.cooked-recipe-meta.php:1460 +#: includes/class.cooked-recipe-meta.php:1485 msgid "Set the navigation style." msgstr "Défissez le style de navigation." -#: includes/class.cooked-recipe-meta.php:1467 +#: includes/class.cooked-recipe-meta.php:1492 msgid "Enable or disable \"Full-Screen\" mode." msgstr "Activer ou désactiver le mode « Plein écran »." #. translators: related to the width of slideshows: "80% or 300px" section title -#: includes/class.cooked-recipe-meta.php:1482 +#: includes/class.cooked-recipe-meta.php:1507 #, php-format msgid "ex: \"%1$s\" or \"%2$s\"" msgstr "ex : « %1$s » ou « %2$s »" #. translators: related to the image ratio for slideshows: "ex: 800/600" section title -#: includes/class.cooked-recipe-meta.php:1487 +#: includes/class.cooked-recipe-meta.php:1512 #, php-format msgid "ex: \"%s\"" msgstr "ex : « %s »" #. translators: related to the navigation style for slideshows: "dots, thumbs or false" section title -#: includes/class.cooked-recipe-meta.php:1492 +#: includes/class.cooked-recipe-meta.php:1517 #, php-format msgid "\"%1$s\", \"%2$s\", or \"%3$s\"" msgstr "« %1$s », « %2$s » ou « %3$s »" #. translators: related to allowing full screen for slideshows: "true or false" section title -#: includes/class.cooked-recipe-meta.php:1497 +#: includes/class.cooked-recipe-meta.php:1522 #, php-format msgid "\"%1$s\" or \"%2$s\"" msgstr "« %1$s » ou « %2$s »" #: includes/class.cooked-functions.php:132 -#: includes/class.cooked-recipe-meta.php:1513 -#: includes/class.cooked-settings.php:231 +#: includes/class.cooked-recipe-meta.php:1538 +#: includes/class.cooked-settings.php:327 msgid "Excerpt" msgstr "Extrait" -#: includes/class.cooked-recipe-meta.php:1514 -msgid "This will display the excerpt, if one is available from the \"Layout &" -" Content\" tab." -msgstr "Cela affichera l’extrait, s’il en existe un dans l’onglet « Mise en pa" -"ge et contenu »." +#: includes/class.cooked-recipe-meta.php:1539 +msgid "This will display the excerpt, if one is available from the \"Layout & Content\" tab." +msgstr "Cela affichera l’extrait, s’il en existe un dans l’onglet « Mise en page et contenu »." #: includes/class.cooked-functions.php:136 #: includes/class.cooked-import.php:161 -#: includes/class.cooked-recipe-meta.php:1537 -#: includes/class.cooked-recipes.php:795 -#: includes/class.cooked-settings.php:232 -#: includes/class.cooked-shortcodes.php:804 +#: includes/class.cooked-recipe-meta.php:1562 +#: includes/class.cooked-recipes.php:747 +#: includes/class.cooked-settings.php:328 +#: includes/class.cooked-shortcodes.php:836 msgid "Notes" msgstr "Notes" -#: includes/class.cooked-recipe-meta.php:1538 -msgid "This will display the notes, if one is available from the \"Layout & C" -"ontent\" tab." -msgstr "Affiche les notes, s'il y en a une dans l'onglet « Mise en page et con" -"tenu »." +#: includes/class.cooked-recipe-meta.php:1563 +msgid "This will display the notes, if one is available from the \"Layout & Content\" tab." +msgstr "Affiche les notes, s'il y en a une dans l'onglet « Mise en page et contenu »." -#: includes/class.cooked-recipe-meta.php:1544 +#: includes/class.cooked-recipe-meta.php:1569 msgid "This will allow you to hide or show the header for the notes section:" msgstr "Permet de masquer ou d'afficher l'en-tête de la section notes :" -#: includes/class.cooked-recipe-meta.php:1554 +#: includes/class.cooked-recipe-meta.php:1579 msgid "Show header" msgstr "Afficher l'en-tête" -#: includes/class.cooked-recipe-meta.php:1555 +#: includes/class.cooked-recipe-meta.php:1580 msgid "Hide header" msgstr "Masquer l'en-tête" #: includes/class.cooked-enqueues.php:56 -#: includes/class.cooked-recipe-meta.php:1568 +#: includes/class.cooked-recipe-meta.php:1593 msgid "Timer" msgstr "Minuteur" -#: includes/class.cooked-recipe-meta.php:1569 +#: includes/class.cooked-recipe-meta.php:1594 msgid "This will display a special link to start a cooking timer." msgstr "Cela affichera un lien spécial pour démarrer une minuterie de cuisson." #. translators: "seconds, minutes and hours" section title -#: includes/class.cooked-recipe-meta.php:1578 +#: includes/class.cooked-recipe-meta.php:1603 #, php-format msgid "\"%1$s\", \"%2$s\" and \"%3$s\"" msgstr "« %1$s », « %2$s » et « %3$s »" -#: includes/class.cooked-recipe-meta.php:1580 +#: includes/class.cooked-recipe-meta.php:1605 msgid "Use just one or a combination of all three to set the timer length" -msgstr "Utilisez un seul ou une combinaison des trois pour régler la longueur " -"de la minuterie" +msgstr "Utilisez un seul ou une combinaison des trois pour régler la longueur de la minuterie" -#: includes/class.cooked-recipe-meta.php:1587 +#: includes/class.cooked-recipe-meta.php:1612 msgid "Add a short description for this timer, if applicable." msgstr "Ajoutez une courte description pour cette minuterie, le cas échéant." -#: includes/class.cooked-recipe-meta.php:1599 +#: includes/class.cooked-recipe-meta.php:1624 msgid "Time in seconds" msgstr "Temps en secondes" -#: includes/class.cooked-recipe-meta.php:1600 +#: includes/class.cooked-recipe-meta.php:1625 msgid "Time in minutes" msgstr "Temps en minutes" -#: includes/class.cooked-recipe-meta.php:1601 +#: includes/class.cooked-recipe-meta.php:1626 msgid "Time in hours" msgstr "Temps en heures" -#: includes/class.cooked-recipe-meta.php:1602 +#: includes/class.cooked-recipe-meta.php:1627 msgid "Timer Description" msgstr "Description de la minuterie" @@ -622,17 +588,13 @@ msgstr[1] "Il y a %1$s recettes qui devraient être importées depuis %2$s." #: includes/class.cooked-import.php:48 #: includes/class.cooked-import.php:102 -msgid "Before you begin, please make sure you backup your database in " -"case something goes wrong." -msgstr "Avant de commencer, assurez-vous de sauvegarder votre base de donné" -"es au cas où quelque chose se passerait mal." +msgid "Before you begin, please make sure you backup your database in case something goes wrong." +msgstr "Avant de commencer, assurez-vous de sauvegarder votre base de données au cas où quelque chose se passerait mal." #: includes/class.cooked-import.php:50 #: includes/class.cooked-import.php:104 -msgid "Click the button below to import these recipes. Here is what will happ" -"en to your recipes:" -msgstr "Cliquez sur le bouton ci-dessous pour importer ces recettes. Voici ce " -"qui va se passer :" +msgid "Click the button below to import these recipes. Here is what will happen to your recipes:" +msgstr "Cliquez sur le bouton ci-dessous pour importer ces recettes. Voici ce qui va se passer :" #: includes/class.cooked-import.php:52 #: includes/class.cooked-import.php:106 @@ -641,37 +603,27 @@ msgstr "Les recettes seront importées avec le statut « Brouillon »." #: includes/class.cooked-import.php:53 #: includes/class.cooked-import.php:107 -msgid "Comments and ratings data will also be imported (ratings are available" -" in Cooked Pro)." -msgstr "Les commentaires et les notes seront également importés (les notes son" -"t disponibles dans Cooked Pro)." +msgid "Comments and ratings data will also be imported (ratings are available in Cooked Pro)." +msgstr "Les commentaires et les notes seront également importés (les notes sont disponibles dans Cooked Pro)." #: includes/class.cooked-import.php:54 #: includes/class.cooked-import.php:109 -msgid "After the import is complete, you can bulk edit the recipes and change" -" their status to 'Published'." -msgstr "Une fois l'importation terminée, vous pouvez modifier les recettes en " -"masse et changer leur statut en « Publié »." +msgid "After the import is complete, you can bulk edit the recipes and change their status to 'Published'." +msgstr "Une fois l'importation terminée, vous pouvez modifier les recettes en masse et changer leur statut en « Publié »." #: includes/class.cooked-import.php:55 -msgid "The existing WP Delicious recipes and data will not be modified or del" -"eted." -msgstr "Les recettes et données WP Delicious existantes ne seront ni modifiées" -" ni supprimées." +msgid "The existing WP Delicious recipes and data will not be modified or deleted." +msgstr "Les recettes et données WP Delicious existantes ne seront ni modifiées ni supprimées." #: includes/class.cooked-import.php:56 #: includes/class.cooked-import.php:111 -msgid "Certain data that is not suppoted by Cooked will not be imported (such" -" as Cooking Temp, Estimated Cost, Recipe Keywords, etc)." -msgstr "Certaines données non prises en charge par Cooked ne seront pas import" -"ées (température de cuisson, coût estimé, mots-clés de recette, etc.)." +msgid "Certain data that is not suppoted by Cooked will not be imported (such as Cooking Temp, Estimated Cost, Recipe Keywords, etc)." +msgstr "Certaines données non prises en charge par Cooked ne seront pas importées (température de cuisson, coût estimé, mots-clés de recette, etc.)." #: includes/class.cooked-import.php:57 #: includes/class.cooked-import.php:112 -msgid "You can run the import multiple times, but keep in mind that duplicate" -" recipes will be created." -msgstr "Vous pouvez lancer l'importation plusieurs fois, mais des recettes en " -"double seront créées." +msgid "You can run the import multiple times, but keep in mind that duplicate recipes will be created." +msgstr "Vous pouvez lancer l'importation plusieurs fois, mais des recettes en double seront créées." #: includes/class.cooked-import.php:61 #: includes/class.cooked-import.php:116 @@ -682,10 +634,8 @@ msgstr "Wow, vous avez beaucoup de recettes !" #: includes/class.cooked-import.php:61 #: includes/class.cooked-import.php:116 #: includes/class.cooked-migration.php:58 -msgid "It is definitely recommended that you get yourself a cup of coffee or " -"tea after clicking this button." -msgstr "Il est fortement recommandé de prendre une tasse de café ou de thé apr" -"ès avoir cliqué sur ce bouton." +msgid "It is definitely recommended that you get yourself a cup of coffee or tea after clicking this button." +msgstr "Il est fortement recommandé de prendre une tasse de café ou de thé après avoir cliqué sur ce bouton." #: includes/class.cooked-import.php:63 #: includes/class.cooked-import.php:118 @@ -706,15 +656,12 @@ msgid "WP Delicious - Import" msgstr "WP Delicious - Importation" #: includes/class.cooked-import.php:108 -msgid "The difficulty level will be set to Beginner since it is not su" -"pported by WP Recipe Maker." -msgstr "Le niveau de difficulté sera défini sur Débutant, car il n'est " -"pas pris en charge par WP Recipe Maker." +msgid "The difficulty level will be set to Beginner since it is not supported by WP Recipe Maker." +msgstr "Le niveau de difficulté sera défini sur Débutant, car il n'est pas pris en charge par WP Recipe Maker." #: includes/class.cooked-import.php:110 msgid "The existing WP Recipe Maker and data will not be modified or deleted." -msgstr "Les recettes et données WP Recipe Maker existantes ne seront ni modifi" -"ées ni supprimées." +msgstr "Les recettes et données WP Recipe Maker existantes ne seront ni modifiées ni supprimées." #: includes/class.cooked-import.php:123 #: includes/class.cooked-import.php:138 @@ -722,10 +669,8 @@ msgid "WP Recipe Maker - Import" msgstr "WP Recipe Maker - Importation" #: includes/class.cooked-import.php:152 -msgid "Import recipes from a CSV file. Your CSV file should include the follo" -"wing columns:" -msgstr "Importez des recettes depuis un fichier CSV. Votre fichier CSV doit in" -"clure les colonnes suivantes :" +msgid "Import recipes from a CSV file. Your CSV file should include the following columns:" +msgstr "Importez des recettes depuis un fichier CSV. Votre fichier CSV doit inclure les colonnes suivantes :" #: includes/class.cooked-import.php:154 msgid "Recipe title (required)" @@ -744,12 +689,8 @@ msgid "Difficulty level (1=Beginner, 2=Intermediate, 3=Advanced)" msgstr "Niveau de difficulté (1=Débutant, 2=Intermédiaire, 3=Avancé)" #: includes/class.cooked-import.php:170 -msgid "Recipes will be imported with the 'Draft' status. After the imp" -"ort is complete, you can bulk edit the recipes and change their status" -" to 'Published'." -msgstr "Les recettes seront importées avec le statut « Brouillon ». Une" -" fois l'importation terminée, vous pouvez les modifier en masse et cha" -"nger leur statut en « Publié »." +msgid "Recipes will be imported with the 'Draft' status. After the import is complete, you can bulk edit the recipes and change their status to 'Published'." +msgstr "Les recettes seront importées avec le statut « Brouillon ». Une fois l'importation terminée, vous pouvez les modifier en masse et changer leur statut en « Publié »." #: includes/class.cooked-import.php:173 msgid "CSV Import" @@ -768,28 +709,28 @@ msgid "Begin Import" msgstr "Commencer l'importation" #: includes/class.cooked-import.php:211 -#: includes/class.cooked-import.php:230 -#: includes/class.cooked-settings.php:618 +#: includes/class.cooked-import.php:234 +#: includes/class.cooked-settings.php:729 msgid "reload" msgstr "recharger" -#: includes/class.cooked-import.php:225 +#: includes/class.cooked-import.php:229 msgid "Upload and Import CSV" msgstr "Téléverser et importer le CSV" -#: includes/class.cooked-import.php:230 +#: includes/class.cooked-import.php:234 msgid "Import Complete!" msgstr "Importation terminée !" -#: includes/class.cooked-import.php:230 +#: includes/class.cooked-import.php:234 msgid "You can now" msgstr "Vous pouvez maintenant" -#: includes/class.cooked-import.php:230 +#: includes/class.cooked-import.php:234 msgid "the import screen or" msgstr "l'écran d'importation ou" -#: includes/class.cooked-import.php:230 +#: includes/class.cooked-import.php:234 msgid "view your recipes" msgstr "voir vos recettes" @@ -803,7 +744,7 @@ msgid "Choose recipe(s)..." msgstr "Choisir recette(s)..." #. translators: singular and plural "steps" -#: includes/class.cooked-recipes.php:1188 +#: includes/class.cooked-recipes.php:1202 #: includes/class.cooked-seo.php:83 #, php-format msgid "Step %d" @@ -867,7 +808,7 @@ msgstr "Masquer l'extrait" msgid "Parent Category" msgstr "Catégorie parente" -#: includes/class.cooked-recipes.php:1271 +#: includes/class.cooked-recipes.php:1285 #: includes/class.cooked-taxonomies.php:41 #: includes/widgets/recipe-categories.php:63 msgid "All Categories" @@ -933,7 +874,7 @@ msgid "What's new in %s?" msgstr "Quoi de neuf dans %s ?" #: includes/class.cooked-functions.php:127 -#: includes/class.cooked-shortcodes.php:685 +#: includes/class.cooked-shortcodes.php:717 msgid "Print" msgstr "Imprimer" @@ -957,66 +898,67 @@ msgstr "Images" msgid "Photo" msgstr "Photo" -#: includes/class.cooked-post-types.php:432 +#: includes/class.cooked-post-types.php:433 +#: includes/class.cooked-settings.php:253 msgid "Recipe Archive" msgstr "Archive des recettes" #: includes/class.cooked-admin-menus.php:36 #: includes/class.cooked-admin-menus.php:59 -#: includes/class.cooked-post-types.php:450 -#: includes/class.cooked-post-types.php:462 +#: includes/class.cooked-post-types.php:451 +#: includes/class.cooked-post-types.php:463 #: includes/class.cooked-users.php:166 msgid "Recipes" msgstr "Recettes" -#: includes/class.cooked-post-types.php:451 +#: includes/class.cooked-post-types.php:452 msgid "Recipe" msgstr "Recette" #: includes/class.cooked-admin-menus.php:37 #: includes/class.cooked-admin-menus.php:61 -#: includes/class.cooked-post-types.php:452 +#: includes/class.cooked-post-types.php:453 msgid "Add New" msgstr "Ajouter une recette" -#: includes/class.cooked-post-types.php:453 +#: includes/class.cooked-post-types.php:454 msgid "Add New Recipe" msgstr "Ajouter une nouvelle recette" -#: includes/class.cooked-post-types.php:454 +#: includes/class.cooked-post-types.php:455 msgid "New Recipe" msgstr "Nouvelle recette" -#: includes/class.cooked-post-types.php:455 +#: includes/class.cooked-post-types.php:456 msgid "Edit Recipe" msgstr "Modifier la recette" -#: includes/class.cooked-post-types.php:456 +#: includes/class.cooked-post-types.php:457 msgid "View Recipe" msgstr "Voir la recette" #: includes/class.cooked-admin-menus.php:60 -#: includes/class.cooked-post-types.php:457 +#: includes/class.cooked-post-types.php:458 msgid "All Recipes" msgstr "Toutes les recettes" -#: includes/class.cooked-post-types.php:458 +#: includes/class.cooked-post-types.php:459 msgid "Search Recipes" msgstr "Rechercher des recettes" -#: includes/class.cooked-post-types.php:459 +#: includes/class.cooked-post-types.php:460 msgid "No recipes found." msgstr "Aucune recette trouvée." -#: includes/class.cooked-post-types.php:460 +#: includes/class.cooked-post-types.php:461 msgid "No recipes found in trash." msgstr "Aucune recette trouvée dans la corbeille." -#: includes/class.cooked-post-types.php:488 +#: includes/class.cooked-post-types.php:489 msgid "Recipe title ..." msgstr "Titre de la recette..." -#: includes/class.cooked-post-types.php:519 +#: includes/class.cooked-post-types.php:520 msgid "Cooked Browse Recipes Page" msgstr "Page Parcourir les recettes Cooked" @@ -1030,7 +972,7 @@ msgstr "Aucun contenu par défaut fourni." msgid "You do not have permission to import recipes." msgstr "Vous n'avez pas l'autorisation d'importer des recettes." -#: includes/class.cooked-admin-enqueues.php:161 +#: includes/class.cooked-admin-enqueues.php:164 #: includes/class.cooked-ajax.php:398 msgid "File upload failed." msgstr "Échec du téléversement du fichier." @@ -1056,8 +998,8 @@ msgstr "Aucune recette n'a été importée." msgid "Recipe Category" msgstr "Catégorie de recette" -#: includes/class.cooked-recipes.php:1269 -#: includes/class.cooked-settings.php:204 +#: includes/class.cooked-recipes.php:1283 +#: includes/class.cooked-settings.php:300 #: includes/class.cooked-taxonomies.php:38 #: includes/class.cooked-taxonomies.php:48 msgid "Categories" @@ -1125,416 +1067,373 @@ msgstr "Passer à Pro" #: includes/class.cooked-admin-menus.php:108 #: includes/class.cooked-admin-menus.php:117 msgid "You do not have sufficient permissions to access this page." -msgstr "Vous n'avez pas les autorisations suffisantes pour accéder à cette pag" -"e." +msgstr "Vous n'avez pas les autorisations suffisantes pour accéder à cette page." -#: includes/class.cooked-settings.php:98 +#: includes/class.cooked-settings.php:110 msgid "Cooked settings has been updated!" msgstr "Les réglages Cooked ont été mis à jour !" -#: includes/class.cooked-settings.php:117 +#: includes/class.cooked-settings.php:129 msgid "Cooked Plugin Setup" msgstr "Configuration du plugin Cooked" -#: includes/class.cooked-settings.php:118 +#: includes/class.cooked-settings.php:130 #, php-format msgid "To display your recipes properly, please set up your %s." msgstr "Pour afficher correctement vos recettes, veuillez configurer votre %s." -#: includes/class.cooked-settings.php:119 -#: includes/class.cooked-settings.php:181 +#: includes/class.cooked-settings.php:131 +#: includes/class.cooked-settings.php:277 msgid "Browse/Search Recipes Page" msgstr "Parcourir / Rechercher des pages de recettes" -#: includes/class.cooked-settings.php:156 +#: includes/class.cooked-settings.php:250 msgid "Choose a page..." msgstr "Choisir une page…" -#: includes/class.cooked-settings.php:156 +#: includes/class.cooked-settings.php:250 msgid "No pages" msgstr "Aucune page" -#: includes/class.cooked-settings.php:157 +#: includes/class.cooked-settings.php:251 msgid "No default" msgstr "Pas de choix par défaut" -#: includes/class.cooked-recipes.php:1266 -#: includes/class.cooked-settings.php:157 +#: includes/class.cooked-recipes.php:1280 +#: includes/class.cooked-settings.php:251 msgid "No categories" msgstr "Aucune catégories" -#: includes/class.cooked-settings.php:177 +#: includes/class.cooked-settings.php:273 msgid "General" msgstr "Général" #. translators: a description on how to add the [cooked-browse] shortcode to a page -#: includes/class.cooked-settings.php:183 +#: includes/class.cooked-settings.php:279 #, php-format -msgid "Create a page with the %s shortcode on it, then choose it from this dr" -"opdown." -msgstr "Créez une page avec le shortcode %s, puis sélectionnez-la dans la list" -"e ci-dessous." +msgid "Create a page with the %s shortcode on it, then choose it from this dropdown." +msgstr "Créez une page avec le shortcode %s, puis sélectionnez-la dans la liste ci-dessous." #. translators: a description on how to add the [cooked-browse] shortcode to a page -#: includes/class.cooked-settings.php:183 -msgid "Note: This setting is required for the plugin to function prope" -"rly." -msgstr "Remarque : ce réglage est requis pour que le plugin fonctionne " -"correctement." +#: includes/class.cooked-settings.php:279 +msgid "Note: This setting is required for the plugin to function properly." +msgstr "Remarque : ce réglage est requis pour que le plugin fonctionne correctement." -#: includes/class.cooked-settings.php:189 +#: includes/class.cooked-settings.php:285 msgid "Recipes Per Page" msgstr "Nombre de recettes par page" #. translators: a description on how to choose the default number of recipes per page. -#: includes/class.cooked-settings.php:191 +#: includes/class.cooked-settings.php:287 #, php-format -msgid "Choose the default (set via the %s panel) or choose a different number" -" here." -msgstr "Choisissez la valeur par défaut (définie via le panneau %s) ou indique" -"z une autre valeur ici." +msgid "Choose the default (set via the %s panel) or choose a different number here." +msgstr "Choisissez la valeur par défaut (définie via le panneau %s) ou indiquez une autre valeur ici." #. translators: a description on how to choose the default number of recipes per page. -#: includes/class.cooked-settings.php:191 +#: includes/class.cooked-settings.php:287 msgid "Settings > Reading" msgstr "Paramètres > Lecture" -#: includes/class.cooked-settings.php:197 +#: includes/class.cooked-settings.php:293 msgid "Recipe Taxonomies" msgstr "Taxonomies des recettes" -#: includes/class.cooked-settings.php:198 +#: includes/class.cooked-settings.php:294 msgid "Choose which taxonomies you want to enable for your recipes." -msgstr "Choisissez les taxonomies que vous souhaitez activer pour vos recettes" -"." +msgstr "Choisissez les taxonomies que vous souhaitez activer pour vos recettes." -#: includes/class.cooked-settings.php:209 +#: includes/class.cooked-settings.php:305 msgid "Global Recipe Toggles" msgstr "Bascule de la totalité des recettes" -#: includes/class.cooked-settings.php:210 -msgid "You can quickly hide or show different recipe elements (site-wide) wit" -"h these checkboxes." -msgstr "Vous pouvez masquer ou afficher rapidement différents éléments de rece" -"tte (sur l’ensemble du site) à l’aide de ces cases à cocher." +#: includes/class.cooked-settings.php:306 +msgid "You can quickly hide or show different recipe elements (site-wide) with these checkboxes." +msgstr "Vous pouvez masquer ou afficher rapidement différents éléments de recette (sur l’ensemble du site) à l’aide de ces cases à cocher." -#: includes/class.cooked-measurements.php:202 -#: includes/class.cooked-recipes.php:1025 -#: includes/class.cooked-settings.php:236 +#: includes/class.cooked-measurements.php:217 +#: includes/class.cooked-recipes.php:1003 +#: includes/class.cooked-settings.php:332 msgid "Servings" msgstr "Parts" -#: includes/class.cooked-settings.php:254 +#: includes/class.cooked-settings.php:349 msgid "Carbs Format" msgstr "Format des glucides" -#: includes/class.cooked-settings.php:255 +#: includes/class.cooked-settings.php:350 msgid "You can display carbs as \"Total\" or \"Net\"." msgstr "Vous pouvez afficher les glucides comme « total » ou « net »." -#: includes/class.cooked-settings.php:261 +#: includes/class.cooked-settings.php:356 msgid "Total Carbs" msgstr "Glucides totaux" -#: includes/class.cooked-settings.php:262 +#: includes/class.cooked-settings.php:357 msgid "Net Carbs" msgstr "Glucides nets" -#: includes/class.cooked-settings.php:267 +#: includes/class.cooked-settings.php:362 msgid "Author Name Format" msgstr "Format du nom d'auteur" -#: includes/class.cooked-settings.php:268 +#: includes/class.cooked-settings.php:363 msgid "You can show the full author's name or just a part of it." -msgstr "Vous pouvez afficher le nom complet de l’auteur ou seulement une parti" -"e de celui-ci." +msgstr "Vous pouvez afficher le nom complet de l’auteur ou seulement une partie de celui-ci." -#: includes/class.cooked-settings.php:274 +#: includes/class.cooked-settings.php:369 msgid "Full name" msgstr "Nom complet" -#: includes/class.cooked-settings.php:275 +#: includes/class.cooked-settings.php:370 msgid "Full first name w/last name initial" msgstr "Prénom complet / 1ère lettre du nom de famille" -#: includes/class.cooked-settings.php:276 +#: includes/class.cooked-settings.php:371 msgid "First name initial w/full last name" msgstr "1ère lettre du prénom / nom complet" -#: includes/class.cooked-settings.php:277 +#: includes/class.cooked-settings.php:372 msgid "First name only" msgstr "Prénom uniquement" -#: includes/class.cooked-settings.php:282 +#: includes/class.cooked-settings.php:377 msgid "Author Links" msgstr "Liens vers l'auteur" -#: includes/class.cooked-settings.php:283 -msgid "If you do not want the author names to link to the author recipe listi" -"ngs, you can disable them here." -msgstr "Si vous ne souhaitez pas que les noms des auteurs soient reliés à leur" -"s recettes, vous pouvez les désactiver ici." +#: includes/class.cooked-settings.php:378 +msgid "If you do not want the author names to link to the author recipe listings, you can disable them here." +msgstr "Si vous ne souhaitez pas que les noms des auteurs soient reliés à leurs recettes, vous pouvez les désactiver ici." -#: includes/class.cooked-settings.php:283 -msgid "Note: Author links require the Browse/Search Recipes Page to be" -" set up correctly to function properly." -msgstr "Remarque : les liens d'auteur nécessitent une page Parcourir/Re" -"chercher des recettes correctement configurée." +#: includes/class.cooked-settings.php:378 +msgid "Note: Author links require the Browse/Search Recipes Page to be set up correctly to function properly." +msgstr "Remarque : les liens d'auteur nécessitent une page Parcourir/Rechercher des recettes correctement configurée." -#: includes/class.cooked-settings.php:290 +#: includes/class.cooked-settings.php:385 msgid "Disable Author Links" msgstr "Désactiver les liens vers l’auteur" -#: includes/class.cooked-settings.php:295 +#: includes/class.cooked-settings.php:390 msgid "Default Category" msgstr "Catégorie par Défaut" #. translators: a description on how to set the default recipe category for the [cooked-browse] shortcode. -#: includes/class.cooked-settings.php:297 +#: includes/class.cooked-settings.php:392 #, php-format -msgid "Optionally set the default recipe category for your %s shortcode displ" -"ay." -msgstr "Si vous le voulez, vous pouvez indiquer une catégorie de recettes qui " -"sera utilisée par défaut avec le shortcode %s." +msgid "Optionally set the default recipe category for your %s shortcode display." +msgstr "Si vous le voulez, vous pouvez indiquer une catégorie de recettes qui sera utilisée par défaut avec le shortcode %s." -#: includes/class.cooked-settings.php:303 +#: includes/class.cooked-settings.php:398 msgid "Default Sort Order" msgstr "Classement par défaut" #. translators: a description on how to set the default sort order for the [cooked-browse] shortcode. -#: includes/class.cooked-settings.php:305 +#: includes/class.cooked-settings.php:400 #, php-format msgid "Set the default sort order for your %s shortcode display." -msgstr "Indiquez l'ordre de tri qui sera utilisé par défaut avec avec le short" -"code %s." +msgstr "Indiquez l'ordre de tri qui sera utilisé par défaut avec avec le shortcode %s." -#: includes/class.cooked-settings.php:311 +#: includes/class.cooked-settings.php:406 msgid "Newest First" msgstr "La plus récente en premier" -#: includes/class.cooked-settings.php:312 +#: includes/class.cooked-settings.php:407 msgid "Oldest First" msgstr "La plus ancienne en premier" -#: includes/class.cooked-settings.php:313 +#: includes/class.cooked-settings.php:408 msgid "Alphabetical" msgstr "Alphabétique" -#: includes/class.cooked-settings.php:314 +#: includes/class.cooked-settings.php:409 msgid "Alphabetical (reversed)" msgstr "Alphabétique (inversé)" -#: includes/class.cooked-settings.php:319 +#: includes/class.cooked-settings.php:414 msgid "Section Heading Default HTML Tag" msgstr "Balise HTML par défaut des titres de section" #. translators: a description on how to set the default sort order for the [cooked-browse] shortcode. -#: includes/class.cooked-settings.php:321 +#: includes/class.cooked-settings.php:416 msgid "Set the default HTML tag for your section headings." msgstr "Définissez la balise HTML par défaut pour vos titres de section." -#: includes/class.cooked-settings.php:327 +#: includes/class.cooked-settings.php:422 msgid "div" msgstr "div" -#: includes/class.cooked-settings.php:328 +#: includes/class.cooked-settings.php:423 msgid "h2" msgstr "h2" -#: includes/class.cooked-settings.php:329 +#: includes/class.cooked-settings.php:424 msgid "h3" msgstr "h3" -#: includes/class.cooked-settings.php:330 +#: includes/class.cooked-settings.php:425 msgid "h4" msgstr "h4" -#: includes/class.cooked-settings.php:331 +#: includes/class.cooked-settings.php:426 msgid "h5" msgstr "h5" -#: includes/class.cooked-settings.php:332 +#: includes/class.cooked-settings.php:427 msgid "h6" msgstr "h6" -#: includes/class.cooked-settings.php:337 +#: includes/class.cooked-settings.php:432 msgid "WP Editor Roles" msgstr "Rôles de l'éditeur WP" -#: includes/class.cooked-settings.php:338 -msgid "Choose which user roles can use the WP Editor for the Excerpt, Directi" -"ons & Notes fields." -msgstr "Choisissez quels rôles peuvent utiliser l'éditeur WP pour l'extrait, l" -"es instructions et les notes." +#: includes/class.cooked-settings.php:433 +msgid "Choose which user roles can use the WP Editor for the Excerpt, Directions & Notes fields." +msgstr "Choisissez quels rôles peuvent utiliser l'éditeur WP pour l'extrait, les instructions et les notes." -#: includes/class.cooked-settings.php:344 +#: includes/class.cooked-settings.php:439 msgid "Advanced Settings" msgstr "Paramètres Avancés" #. translators: an option to only show recipes with the [cooked-recipe] shortcode. -#: includes/class.cooked-settings.php:354 +#: includes/class.cooked-settings.php:449 msgid "Disable Public Recipes" msgstr "Désactiver les recettes publiques" #. translators: an option to only show recipes with the [cooked-recipe] shortcode. -#: includes/class.cooked-settings.php:354 +#: includes/class.cooked-settings.php:449 #, php-format msgid "Only show recipes using the %s shortcode." msgstr "Afficher uniquement les recettes en utilisant le shortcode %s." #. translators: an option to disable "meta" tags. -#: includes/class.cooked-settings.php:356 +#: includes/class.cooked-settings.php:451 #, php-format msgid "Disable %s Tags" msgstr "Désactiver les mots-clés %s" #. translators: an option to disable "meta" tags. -#: includes/class.cooked-settings.php:356 +#: includes/class.cooked-settings.php:451 msgid "Prevents duplicates when tags already exist." msgstr "Empêcher les doublons lorsque les mots-clés existent déjà." -#: includes/class.cooked-settings.php:357 +#: includes/class.cooked-settings.php:452 msgid "Disable \"Servings Switcher\"" msgstr "Désactiver le \"Sélecteur de parts\"" -#: includes/class.cooked-settings.php:357 +#: includes/class.cooked-settings.php:452 msgid "Removes the servings dropdown on recipes." -msgstr "Supprimer la liste déroulante indiquant le nombre de parts sur les rec" -"ettes." +msgstr "Supprimer la liste déroulante indiquant le nombre de parts sur les recettes." -#: includes/class.cooked-settings.php:358 +#: includes/class.cooked-settings.php:454 msgid "Disable Recipe Schema Output" msgstr "Désactiver la sortie de schéma de recette" -#: includes/class.cooked-settings.php:358 -msgid "You should only do this if you're using something else to output schem" -"a information." -msgstr "Vous ne devriez le faire que si vous utilisez autre chose pour produir" -"e des informations sur les schémas." +#: includes/class.cooked-settings.php:454 +msgid "You should only do this if you're using something else to output schema information." +msgstr "Vous ne devriez le faire que si vous utilisez autre chose pour produire des informations sur les schémas." -#: includes/class.cooked-settings.php:359 +#: includes/class.cooked-settings.php:455 msgid "Disable Recipe Archive Page" msgstr "Désactiver la page d'archive des recettes" -#: includes/class.cooked-settings.php:359 -msgid "Prevents the recipe archive from being displayed." -msgstr "Empêche l'affichage de l'archive des recettes." - -#: includes/class.cooked-settings.php:366 +#: includes/class.cooked-settings.php:466 msgid "Design" msgstr "Design" -#: includes/class.cooked-settings.php:370 +#: includes/class.cooked-settings.php:470 msgid "Dark Mode" msgstr "Mode sombre" -#: includes/class.cooked-settings.php:371 -msgid "If your site has a dark background, you should enable \"Dark Mode\" so" -" that Cooked can match this style." -msgstr "Si votre site a un fond arrière-plan sombre, vous devez activer le \"M" -"ode sombre\" afin que Cooked puisse s'adapter à votre style." - -#: includes/class.cooked-settings.php:377 -msgid "Enable \"Dark Mode\"" -msgstr "Activer \"Mode sombre\"" - -#: includes/class.cooked-settings.php:382 +#: includes/class.cooked-settings.php:487 msgid "Author Images" msgstr "Images de l’auteur" -#: includes/class.cooked-settings.php:383 -msgid "If you do not want to display the author images (avatars), you can dis" -"able them here." -msgstr "Si vous ne voulez pas afficher les images des auteurs (avatars), faite" -"s-le ici." +#: includes/class.cooked-settings.php:488 +msgid "If you do not want to display the author images (avatars), you can disable them here." +msgstr "Si vous ne voulez pas afficher les images des auteurs (avatars), faites-le ici." -#: includes/class.cooked-settings.php:390 +#: includes/class.cooked-settings.php:495 msgid "Hide Author Images" msgstr "Masquer l'avatar de l’auteur" -#: includes/class.cooked-settings.php:395 +#: includes/class.cooked-settings.php:506 msgid "Main Color" msgstr "Couleur Principale" -#: includes/class.cooked-settings.php:396 +#: includes/class.cooked-settings.php:507 msgid "Used on buttons, cooking timer, etc." msgstr "Utilisée sur les boutons, minuteur, etc.." -#: includes/class.cooked-settings.php:402 +#: includes/class.cooked-settings.php:513 msgid "Main Color (on hover)" msgstr "Couleur Principale (au survol)" -#: includes/class.cooked-settings.php:403 +#: includes/class.cooked-settings.php:514 msgid "Used when hovering over buttons." msgstr "Utilisée lorsque vous passez la souris sur les boutons." -#: includes/class.cooked-settings.php:409 +#: includes/class.cooked-settings.php:520 msgid "First Responsive Breakpoint" msgstr "Premier Point de rupture Responsive" -#: includes/class.cooked-settings.php:410 +#: includes/class.cooked-settings.php:521 msgid "Set the first responsive breakpoint. Best for large tablets." -msgstr "Définissez le premier point de rupture responsive. Utilisé pour les gr" -"andes tablettes." +msgstr "Définissez le premier point de rupture responsive. Utilisé pour les grandes tablettes." -#: includes/class.cooked-settings.php:416 +#: includes/class.cooked-settings.php:527 msgid "Second Responsive Breakpoint" msgstr "Second Point de rupture Responsive" -#: includes/class.cooked-settings.php:417 +#: includes/class.cooked-settings.php:528 msgid "Set the second responsive breakpoint. Best for small tablets." -msgstr "Définissez le deuxième point de rupture responsive. Utilisé pour les p" -"etites tablettes." +msgstr "Définissez le deuxième point de rupture responsive. Utilisé pour les petites tablettes." -#: includes/class.cooked-settings.php:423 +#: includes/class.cooked-settings.php:534 msgid "Third Responsive Breakpoint" msgstr "Troisième Point de rupture Responsive" -#: includes/class.cooked-settings.php:424 -msgid "Set the third responsive breakpoint. Best for phones and other small d" -"evices." -msgstr "Définissez le troisième point de rupture responsive. Utilisé pour les " -"smartphones." +#: includes/class.cooked-settings.php:535 +msgid "Set the third responsive breakpoint. Best for phones and other small devices." +msgstr "Définissez le troisième point de rupture responsive. Utilisé pour les smartphones." -#: includes/class.cooked-settings.php:432 +#: includes/class.cooked-settings.php:543 msgid "Permalinks" msgstr "Permaliens" -#: includes/class.cooked-settings.php:436 +#: includes/class.cooked-settings.php:547 msgid "Recipe Permalink" msgstr "Permalien de la recette" -#: includes/class.cooked-settings.php:439 +#: includes/class.cooked-settings.php:550 msgid "recipe-name" msgstr "nom-de-la-recette" -#: includes/class.cooked-settings.php:443 +#: includes/class.cooked-settings.php:554 msgid "Recipe Author Permalink" msgstr "Permalien de l’auteur de la recette" -#: includes/class.cooked-settings.php:446 +#: includes/class.cooked-settings.php:557 msgid "author-name" msgstr "nom-de-l-auteur" -#: includes/class.cooked-settings.php:450 +#: includes/class.cooked-settings.php:561 msgid "Recipe Category Permalink" msgstr "Permalien de la catégorie de recette" -#: includes/class.cooked-settings.php:453 +#: includes/class.cooked-settings.php:564 msgid "recipe-category-name" msgstr "nom-categorie-recette" #. translators: posts_per_page default -#: includes/class.cooked-settings.php:464 +#: includes/class.cooked-settings.php:575 #, php-format msgid "WordPress Default %s" msgstr "WordPress par défaut %s" -#: includes/class.cooked-settings.php:469 +#: includes/class.cooked-settings.php:580 msgid "Show All (no pagination)" msgstr "Afficher tout (sans pagination)" -#: includes/class.cooked-settings.php:613 +#: includes/class.cooked-settings.php:724 msgid "Begin Migration" msgstr "Commencez la migration" @@ -1550,501 +1449,499 @@ msgstr "gramme" msgid "grams" msgstr "grammes" -#: includes/class.cooked-measurements.php:38 +#: includes/class.cooked-measurements.php:39 msgid "kilogram" msgstr "kilogramme" -#: includes/class.cooked-measurements.php:39 +#: includes/class.cooked-measurements.php:40 msgid "kilograms" msgstr "kilogrammes" -#: includes/class.cooked-measurements.php:43 -#: includes/class.cooked-measurements.php:44 +#: includes/class.cooked-measurements.php:45 +#: includes/class.cooked-measurements.php:46 msgid "mg" msgstr "mg" -#: includes/class.cooked-measurements.php:45 +#: includes/class.cooked-measurements.php:47 msgid "milligram" msgstr "milligramme" -#: includes/class.cooked-measurements.php:46 +#: includes/class.cooked-measurements.php:48 msgid "milligrams" msgstr "milligrammes" -#: includes/class.cooked-measurements.php:456 +#: includes/class.cooked-measurements.php:471 msgid "mcg" msgstr "mcg" -#: includes/class.cooked-measurements.php:50 -#: includes/class.cooked-measurements.php:51 +#: includes/class.cooked-measurements.php:53 +#: includes/class.cooked-measurements.php:54 msgid "oz" msgstr "oz" -#: includes/class.cooked-measurements.php:52 +#: includes/class.cooked-measurements.php:55 msgid "ounce" msgstr "once" -#: includes/class.cooked-measurements.php:53 +#: includes/class.cooked-measurements.php:56 msgid "ounces" msgstr "onces" -#: includes/class.cooked-measurements.php:57 -#: includes/class.cooked-measurements.php:58 +#: includes/class.cooked-measurements.php:61 +#: includes/class.cooked-measurements.php:62 msgid "fl oz" msgstr "fl oz" -#: includes/class.cooked-measurements.php:59 +#: includes/class.cooked-measurements.php:63 msgid "fluid ounce" msgstr "fluid ounce" -#: includes/class.cooked-measurements.php:60 +#: includes/class.cooked-measurements.php:64 msgid "fluid ounces" msgstr "fluid ounces" -#: includes/class.cooked-measurements.php:64 -#: includes/class.cooked-measurements.php:66 +#: includes/class.cooked-measurements.php:69 +#: includes/class.cooked-measurements.php:71 msgid "cup" msgstr "tasse" -#: includes/class.cooked-measurements.php:65 -#: includes/class.cooked-measurements.php:67 +#: includes/class.cooked-measurements.php:70 +#: includes/class.cooked-measurements.php:72 msgid "cups" msgstr "tasses" -#: includes/class.cooked-measurements.php:71 -#: includes/class.cooked-measurements.php:72 +#: includes/class.cooked-measurements.php:77 +#: includes/class.cooked-measurements.php:78 msgid "tsp" msgstr "c-à-c" -#: includes/class.cooked-measurements.php:73 +#: includes/class.cooked-measurements.php:79 msgid "teaspoon" msgstr "cuillère à café (5ml)" -#: includes/class.cooked-measurements.php:74 +#: includes/class.cooked-measurements.php:80 msgid "teaspoons" msgstr "cuillères à café" -#: includes/class.cooked-measurements.php:78 -#: includes/class.cooked-measurements.php:79 +#: includes/class.cooked-measurements.php:85 +#: includes/class.cooked-measurements.php:86 msgid "tbsp" msgstr "c-à-s" -#: includes/class.cooked-measurements.php:80 +#: includes/class.cooked-measurements.php:87 msgid "tablespoon" msgstr "cuillère à soupe (15ml)" -#: includes/class.cooked-measurements.php:81 +#: includes/class.cooked-measurements.php:88 msgid "tablespoons" msgstr "cuillères à soupe" -#: includes/class.cooked-measurements.php:85 -#: includes/class.cooked-measurements.php:86 +#: includes/class.cooked-measurements.php:93 +#: includes/class.cooked-measurements.php:94 msgid "dl" msgstr "dl" -#: includes/class.cooked-measurements.php:87 +#: includes/class.cooked-measurements.php:95 msgid "deciliter" msgstr "décilitre" -#: includes/class.cooked-measurements.php:88 +#: includes/class.cooked-measurements.php:96 msgid "deciliters" msgstr "décilitres" -#: includes/class.cooked-measurements.php:92 -#: includes/class.cooked-measurements.php:93 +#: includes/class.cooked-measurements.php:101 +#: includes/class.cooked-measurements.php:102 msgid "ml" msgstr "ml" -#: includes/class.cooked-measurements.php:94 +#: includes/class.cooked-measurements.php:103 msgid "milliliter" msgstr "millilitre" -#: includes/class.cooked-measurements.php:95 +#: includes/class.cooked-measurements.php:104 msgid "milliliters" msgstr "millilitres" -#: includes/class.cooked-measurements.php:99 -#: includes/class.cooked-measurements.php:100 +#: includes/class.cooked-measurements.php:109 +#: includes/class.cooked-measurements.php:110 msgid "l" msgstr "l" -#: includes/class.cooked-measurements.php:101 +#: includes/class.cooked-measurements.php:111 msgid "liter" msgstr "litre" -#: includes/class.cooked-measurements.php:102 +#: includes/class.cooked-measurements.php:112 msgid "liters" msgstr "litres" -#: includes/class.cooked-measurements.php:106 -#: includes/class.cooked-measurements.php:108 +#: includes/class.cooked-measurements.php:117 +#: includes/class.cooked-measurements.php:119 msgid "stick" msgstr "bâton" -#: includes/class.cooked-measurements.php:107 -#: includes/class.cooked-measurements.php:109 +#: includes/class.cooked-measurements.php:118 +#: includes/class.cooked-measurements.php:120 msgid "sticks" msgstr "bâtons" -#: includes/class.cooked-measurements.php:113 +#: includes/class.cooked-measurements.php:124 msgid "lb" msgstr "lb" -#: includes/class.cooked-measurements.php:114 +#: includes/class.cooked-measurements.php:125 msgid "lbs" msgstr "lbs" -#: includes/class.cooked-measurements.php:115 +#: includes/class.cooked-measurements.php:126 msgid "pound" msgstr "livre" -#: includes/class.cooked-measurements.php:116 +#: includes/class.cooked-measurements.php:127 msgid "pounds" msgstr "livres" -#: includes/class.cooked-measurements.php:120 -#: includes/class.cooked-measurements.php:122 +#: includes/class.cooked-measurements.php:132 +#: includes/class.cooked-measurements.php:134 msgid "dash" msgstr "pincée" -#: includes/class.cooked-measurements.php:121 -#: includes/class.cooked-measurements.php:123 +#: includes/class.cooked-measurements.php:133 +#: includes/class.cooked-measurements.php:135 msgid "dashes" msgstr "pincées" -#: includes/class.cooked-measurements.php:127 -#: includes/class.cooked-measurements.php:129 +#: includes/class.cooked-measurements.php:139 +#: includes/class.cooked-measurements.php:141 msgid "drop" msgstr "goutte" -#: includes/class.cooked-measurements.php:128 -#: includes/class.cooked-measurements.php:130 +#: includes/class.cooked-measurements.php:140 +#: includes/class.cooked-measurements.php:142 msgid "drops" msgstr "gouttes" -#: includes/class.cooked-measurements.php:134 +#: includes/class.cooked-measurements.php:146 msgid "gal" msgstr "gal" -#: includes/class.cooked-measurements.php:135 +#: includes/class.cooked-measurements.php:147 msgid "gals" msgstr "gals" -#: includes/class.cooked-measurements.php:136 +#: includes/class.cooked-measurements.php:148 msgid "gallon" msgstr "gallon" -#: includes/class.cooked-measurements.php:137 +#: includes/class.cooked-measurements.php:149 msgid "gallons" msgstr "gallons" -#: includes/class.cooked-measurements.php:141 -#: includes/class.cooked-measurements.php:143 +#: includes/class.cooked-measurements.php:154 +#: includes/class.cooked-measurements.php:156 msgid "pinch" msgstr "pinch" -#: includes/class.cooked-measurements.php:142 -#: includes/class.cooked-measurements.php:144 +#: includes/class.cooked-measurements.php:155 +#: includes/class.cooked-measurements.php:157 msgid "pinches" msgstr "pinches" -#: includes/class.cooked-measurements.php:148 -#: includes/class.cooked-measurements.php:149 +#: includes/class.cooked-measurements.php:161 +#: includes/class.cooked-measurements.php:162 msgid "pt" msgstr "pt" -#: includes/class.cooked-measurements.php:150 +#: includes/class.cooked-measurements.php:163 msgid "pint" msgstr "pint" -#: includes/class.cooked-measurements.php:151 +#: includes/class.cooked-measurements.php:164 msgid "pints" msgstr "pints" -#: includes/class.cooked-measurements.php:155 +#: includes/class.cooked-measurements.php:169 msgid "qt" msgstr "qt" -#: includes/class.cooked-measurements.php:156 +#: includes/class.cooked-measurements.php:170 msgid "qts" msgstr "qts" -#: includes/class.cooked-measurements.php:157 +#: includes/class.cooked-measurements.php:171 msgid "quart" msgstr "quart" -#: includes/class.cooked-measurements.php:158 +#: includes/class.cooked-measurements.php:172 msgid "quarts" msgstr "quarts" -#: includes/class.cooked-measurements.php:162 -#: includes/class.cooked-measurements.php:163 +#: includes/class.cooked-measurements.php:177 +#: includes/class.cooked-measurements.php:178 msgid "drizzle" msgstr "filet" -#: includes/class.cooked-measurements.php:164 -#: includes/class.cooked-measurements.php:165 +#: includes/class.cooked-measurements.php:179 +#: includes/class.cooked-measurements.php:180 msgid "Drizzle" msgstr "Filet" -#: includes/class.cooked-measurements.php:169 -#: includes/class.cooked-measurements.php:171 +#: includes/class.cooked-measurements.php:184 +#: includes/class.cooked-measurements.php:186 msgid "clove" msgstr "gousse" -#: includes/class.cooked-measurements.php:170 -#: includes/class.cooked-measurements.php:172 +#: includes/class.cooked-measurements.php:185 +#: includes/class.cooked-measurements.php:187 msgid "cloves" msgstr "gousses" -#: includes/class.cooked-measurements.php:176 -#: includes/class.cooked-measurements.php:178 +#: includes/class.cooked-measurements.php:191 +#: includes/class.cooked-measurements.php:193 msgid "jar" msgstr "pot" -#: includes/class.cooked-measurements.php:177 -#: includes/class.cooked-measurements.php:179 +#: includes/class.cooked-measurements.php:192 +#: includes/class.cooked-measurements.php:194 msgid "jars" msgstr "pots" -#: includes/class.cooked-measurements.php:183 -#: includes/class.cooked-measurements.php:185 +#: includes/class.cooked-measurements.php:198 +#: includes/class.cooked-measurements.php:200 msgid "can" msgstr "boîte" -#: includes/class.cooked-measurements.php:184 -#: includes/class.cooked-measurements.php:186 +#: includes/class.cooked-measurements.php:199 +#: includes/class.cooked-measurements.php:201 msgid "cans" msgstr "boîtes" -#: includes/class.cooked-measurements.php:206 +#: includes/class.cooked-measurements.php:221 msgid "Serving size" msgstr "Taille de portion" -#: includes/class.cooked-measurements.php:213 +#: includes/class.cooked-measurements.php:228 msgid "Calories" msgstr "Calories" -#: includes/class.cooked-measurements.php:220 +#: includes/class.cooked-measurements.php:235 msgid "Total Fat" msgstr "Graisse totale" -#: includes/class.cooked-measurements.php:226 +#: includes/class.cooked-measurements.php:241 msgid "Saturated Fat" msgstr "Acides gras saturés" -#: includes/class.cooked-measurements.php:232 +#: includes/class.cooked-measurements.php:247 msgid "Trans Fat" msgstr "Acides gras insaturés" -#: includes/class.cooked-measurements.php:233 +#: includes/class.cooked-measurements.php:248 msgid "Trans Fat" msgstr "Graisses trans" -#: includes/class.cooked-measurements.php:238 +#: includes/class.cooked-measurements.php:253 msgid "Monounsaturated Fat" msgstr "Acides gras monoinsaturés" -#: includes/class.cooked-measurements.php:243 +#: includes/class.cooked-measurements.php:258 msgid "Polyunsaturated Fat" msgstr "Acides gras polyinsaturés" -#: includes/class.cooked-measurements.php:250 +#: includes/class.cooked-measurements.php:265 msgid "Cholesterol" msgstr "Cholesterol" -#: includes/class.cooked-measurements.php:256 +#: includes/class.cooked-measurements.php:271 msgid "Sodium" msgstr "Sodium" -#: includes/class.cooked-measurements.php:262 +#: includes/class.cooked-measurements.php:277 msgid "Total Carbohydrate" msgstr "Glucides totaux" -#: includes/class.cooked-measurements.php:262 +#: includes/class.cooked-measurements.php:277 msgid "Net Carbohydrate" msgstr "Glucides nets" -#: includes/class.cooked-measurements.php:268 +#: includes/class.cooked-measurements.php:283 msgid "Dietary Fiber" msgstr "Fibre alimentaire" -#: includes/class.cooked-measurements.php:274 +#: includes/class.cooked-measurements.php:289 msgid "Total Sugars" msgstr "Sucres totaux" -#: includes/class.cooked-measurements.php:280 +#: includes/class.cooked-measurements.php:295 msgid "Added Sugars" msgstr "Sucres ajoutés" -#: includes/class.cooked-measurements.php:288 +#: includes/class.cooked-measurements.php:303 msgid "Protein" msgstr "Protéine" -#: includes/class.cooked-measurements.php:297 +#: includes/class.cooked-measurements.php:312 msgid "Vitamin A" msgstr "Vitamine A" -#: includes/class.cooked-measurements.php:303 +#: includes/class.cooked-measurements.php:318 msgid "Vitamin C" msgstr "Vitamine C" -#: includes/class.cooked-measurements.php:309 +#: includes/class.cooked-measurements.php:324 msgid "Calcium" msgstr "Calcium" -#: includes/class.cooked-measurements.php:315 +#: includes/class.cooked-measurements.php:330 msgid "Iron" msgstr "Fer" -#: includes/class.cooked-measurements.php:321 +#: includes/class.cooked-measurements.php:336 msgid "Potassium" msgstr "Potassium" -#: includes/class.cooked-measurements.php:327 +#: includes/class.cooked-measurements.php:342 msgid "Vitamin D" msgstr "Vitamine D" -#: includes/class.cooked-measurements.php:333 +#: includes/class.cooked-measurements.php:348 msgid "Vitamin E" msgstr "Vitamine E" -#: includes/class.cooked-measurements.php:339 +#: includes/class.cooked-measurements.php:354 msgid "Vitamin K" msgstr "Vitamine K" -#: includes/class.cooked-measurements.php:345 +#: includes/class.cooked-measurements.php:360 msgid "Thiamin" msgstr "Vitamine B1 (Thiamin)" -#: includes/class.cooked-measurements.php:351 +#: includes/class.cooked-measurements.php:366 msgid "Riboflavin" msgstr "Vitamine B2 (Riboflavine)" -#: includes/class.cooked-measurements.php:357 +#: includes/class.cooked-measurements.php:372 msgid "Niacin" msgstr "Vitamine B3 (Niacine)" -#: includes/class.cooked-measurements.php:363 +#: includes/class.cooked-measurements.php:378 msgid "Vitamin B6" msgstr "Vitamine B6" -#: includes/class.cooked-measurements.php:369 +#: includes/class.cooked-measurements.php:384 msgid "Folate" msgstr "Vitamine B9 (Folate)" -#: includes/class.cooked-measurements.php:375 +#: includes/class.cooked-measurements.php:390 msgid "Vitamin B12" msgstr "Vitamine B12" -#: includes/class.cooked-measurements.php:381 +#: includes/class.cooked-measurements.php:396 msgid "Biotin" msgstr "Vitamine B8 (Biotine)" -#: includes/class.cooked-measurements.php:387 +#: includes/class.cooked-measurements.php:402 msgid "Pantothenic Acid" msgstr "Vitamine B5 (Acide pantothénique)" -#: includes/class.cooked-measurements.php:393 +#: includes/class.cooked-measurements.php:408 msgid "Phosphorus" msgstr "Phosphore" -#: includes/class.cooked-measurements.php:399 +#: includes/class.cooked-measurements.php:414 msgid "Iodine" msgstr "Iode" -#: includes/class.cooked-measurements.php:405 +#: includes/class.cooked-measurements.php:420 msgid "Magnesium" msgstr "Magnésium" -#: includes/class.cooked-measurements.php:411 +#: includes/class.cooked-measurements.php:426 msgid "Zinc" msgstr "Zinc" -#: includes/class.cooked-measurements.php:417 +#: includes/class.cooked-measurements.php:432 msgid "Selenium" msgstr "Sélénium" -#: includes/class.cooked-measurements.php:423 +#: includes/class.cooked-measurements.php:438 msgid "Copper" msgstr "Cuivre" -#: includes/class.cooked-measurements.php:429 +#: includes/class.cooked-measurements.php:444 msgid "Manganese" msgstr "Manganèse" -#: includes/class.cooked-measurements.php:435 +#: includes/class.cooked-measurements.php:450 msgid "Chromium" msgstr "Chromium" -#: includes/class.cooked-measurements.php:441 +#: includes/class.cooked-measurements.php:456 msgid "Molybdenum" msgstr "Molybdène" -#: includes/class.cooked-measurements.php:447 +#: includes/class.cooked-measurements.php:462 msgid "Chloride" msgstr "Chlorure" #. translators: singular and plural number of minutes (shorthand) -#: includes/class.cooked-measurements.php:706 -#: includes/class.cooked-measurements.php:717 -#: includes/class.cooked-measurements.php:735 +#: includes/class.cooked-measurements.php:721 +#: includes/class.cooked-measurements.php:732 +#: includes/class.cooked-measurements.php:750 #, php-format msgid "%d min" msgstr "%d min" #. translators: singular and plural number of minutes (shorthand) -#: includes/class.cooked-measurements.php:706 -#: includes/class.cooked-measurements.php:717 -#: includes/class.cooked-measurements.php:735 +#: includes/class.cooked-measurements.php:721 +#: includes/class.cooked-measurements.php:732 +#: includes/class.cooked-measurements.php:750 #, php-format msgid "%d mins" msgstr "%d mins" #. translators: singular and plural number of hours (shorthand) -#: includes/class.cooked-measurements.php:715 -#: includes/class.cooked-measurements.php:733 +#: includes/class.cooked-measurements.php:730 +#: includes/class.cooked-measurements.php:748 #, php-format msgid "%d hr" msgstr "%d h" #. translators: singular and plural number of hours (shorthand) -#: includes/class.cooked-measurements.php:715 -#: includes/class.cooked-measurements.php:733 +#: includes/class.cooked-measurements.php:730 +#: includes/class.cooked-measurements.php:748 #, php-format msgid "%d hrs" msgstr "%d h" #. translators: singular and plural number of days -#: includes/class.cooked-measurements.php:731 +#: includes/class.cooked-measurements.php:746 #, php-format msgid "%d day" msgstr "%d jour" #. translators: singular and plural number of days -#: includes/class.cooked-measurements.php:731 +#: includes/class.cooked-measurements.php:746 #, php-format msgid "%d days" msgstr "%d jours" #. translators: referring to the bottom of the Settings page. -#: includes/class.cooked-shortcodes.php:157 +#: includes/class.cooked-shortcodes.php:167 #, php-format -msgid "Public recipes are currently disabled. You can change this at the bott" -"om of the %s page." -msgstr "Les recettes publiques sont actuellement désactivées. Vous pouvez le m" -"odifier en bas de la page %s." +msgid "Public recipes are currently disabled. You can change this at the bottom of the %s page." +msgstr "Les recettes publiques sont actuellement désactivées. Vous pouvez le modifier en bas de la page %s." -#: includes/class.cooked-shortcodes.php:311 +#: includes/class.cooked-shortcodes.php:328 msgid "(recipe not found or in draft status)" msgstr "(recette introuvable ou en statut brouillon)" -#: includes/class.cooked-recipes.php:1018 -#: includes/class.cooked-shortcodes.php:477 +#: includes/class.cooked-recipes.php:996 +#: includes/class.cooked-shortcodes.php:508 msgid "Yields" msgstr "Portions" -#: includes/class.cooked-shortcodes.php:691 +#: includes/class.cooked-shortcodes.php:723 msgid "Fullscreen" msgstr "Plein écran" @@ -2056,141 +1953,137 @@ msgstr "restant" msgid "Use this Image" msgstr "Utiliser cette image" -#: includes/class.cooked-admin-enqueues.php:142 +#: includes/class.cooked-admin-enqueues.php:145 msgid "Edit Gallery Item" msgstr "Modifier un élément de la galerie" -#: includes/class.cooked-admin-enqueues.php:143 +#: includes/class.cooked-admin-enqueues.php:146 msgid "Update Gallery Item" msgstr "Mettre à jour l'élément de galerie" -#: includes/class.cooked-admin-enqueues.php:144 +#: includes/class.cooked-admin-enqueues.php:147 msgid "Saved" msgstr "Sauvegarder" -#: includes/class.cooked-admin-enqueues.php:145 +#: includes/class.cooked-admin-enqueues.php:148 msgid "Applied" msgstr "Appliquer" -#: includes/class.cooked-admin-enqueues.php:146 -msgid "Are you sure you want to apply this new template to all of your recipe" -"s?" -msgstr "Êtes-vous sûr de vouloir appliquer ce nouveau modèle à toutes vos rece" -"ttes ?" +#: includes/class.cooked-admin-enqueues.php:149 +msgid "Are you sure you want to apply this new template to all of your recipes?" +msgstr "Êtes-vous sûr de vouloir appliquer ce nouveau modèle à toutes vos recettes ?" -#: includes/class.cooked-admin-enqueues.php:147 -msgid "Are you sure you want to reset this recipe template to the Cooked plug" -"in default?" -msgstr "Êtes-vous sûr de vouloir réinitialiser ce modèle de recette par celui " -"du plugin Cooked par défaut ?" +#: includes/class.cooked-admin-enqueues.php:150 +msgid "Are you sure you want to reset this recipe template to the Cooked plugin default?" +msgstr "Êtes-vous sûr de vouloir réinitialiser ce modèle de recette par celui du plugin Cooked par défaut ?" #. translators: confirmation for migrating all ### recipes, where ### displays the total number for the migration. -#: includes/class.cooked-admin-enqueues.php:149 +#: includes/class.cooked-admin-enqueues.php:152 #, php-format msgid "Please confirm that you are ready to migrate all %s recipes." msgstr "Veuillez confirmer que vous êtes prêt à migrer toutes les recettes %s." -#: includes/class.cooked-admin-enqueues.php:150 +#: includes/class.cooked-admin-enqueues.php:153 msgid "Please confirm that you are ready to import all recipes." msgstr "Veuillez confirmer que vous êtes prêt à importer toutes les recettes." -#: includes/class.cooked-admin-enqueues.php:151 +#: includes/class.cooked-admin-enqueues.php:154 msgid "Are you sure you want to import recipes from this CSV file?" msgstr "Êtes-vous sûr de vouloir importer des recettes depuis ce fichier CSV ?" -#: includes/class.cooked-admin-enqueues.php:152 +#: includes/class.cooked-admin-enqueues.php:155 msgid "Please select a CSV file." msgstr "Veuillez sélectionner un fichier CSV." -#: includes/class.cooked-admin-enqueues.php:153 +#: includes/class.cooked-admin-enqueues.php:156 msgid "Please select a valid CSV file." msgstr "Veuillez sélectionner un fichier CSV valide." -#: includes/class.cooked-admin-enqueues.php:154 +#: includes/class.cooked-admin-enqueues.php:157 msgid "Uploading..." msgstr "Téléversement..." -#: includes/class.cooked-admin-enqueues.php:155 +#: includes/class.cooked-admin-enqueues.php:158 msgid "Processing..." msgstr "Traitement..." -#: includes/class.cooked-admin-enqueues.php:156 +#: includes/class.cooked-admin-enqueues.php:159 msgid "recipes imported" msgstr "recettes importées" -#: includes/class.cooked-admin-enqueues.php:157 +#: includes/class.cooked-admin-enqueues.php:160 msgid "Errors:" msgstr "Erreurs :" -#: includes/class.cooked-admin-enqueues.php:158 +#: includes/class.cooked-admin-enqueues.php:161 msgid "Import failed." msgstr "Échec de l'importation." -#: includes/class.cooked-admin-enqueues.php:159 +#: includes/class.cooked-admin-enqueues.php:162 msgid "Failed to process CSV file." msgstr "Échec du traitement du fichier CSV." -#: includes/class.cooked-admin-enqueues.php:160 +#: includes/class.cooked-admin-enqueues.php:163 msgid "Failed to upload CSV file." msgstr "Échec du téléversement du fichier CSV." -#: includes/class.cooked-admin-enqueues.php:162 +#: includes/class.cooked-admin-enqueues.php:165 msgid "Something went wrong" msgstr "Une erreur s'est produite" -#: includes/class.cooked-admin-enqueues.php:163 +#: includes/class.cooked-admin-enqueues.php:166 msgid "hrs" msgstr "h" -#: includes/class.cooked-admin-enqueues.php:164 +#: includes/class.cooked-admin-enqueues.php:167 msgid "mins" msgstr "min" #. translators: stating the recipe author with a "By" in front of it. (ex: "By John Smith") #. translators: referring to the author (ex: By John Smith) -#: includes/class.cooked-recipes.php:268 -#: includes/class.cooked-recipes.php:322 +#: includes/class.cooked-recipes.php:298 +#: includes/class.cooked-recipes.php:352 #: templates/front/recipe-single.php:47 #, php-format msgid "By %s" msgstr "Par %s" #. translators: For showing "All" of a taxonomy (ex: "All Burgers") -#: includes/class.cooked-recipes.php:493 +#: includes/class.cooked-recipes.php:445 #, php-format msgid "All %s" msgstr "Tous les %s" -#: includes/class.cooked-recipes.php:877 +#: includes/class.cooked-recipes.php:829 msgid "Beginner" msgstr "Facile" -#: includes/class.cooked-recipes.php:878 +#: includes/class.cooked-recipes.php:830 msgid "Intermediate" msgstr "Moyen" -#: includes/class.cooked-recipes.php:879 +#: includes/class.cooked-recipes.php:831 msgid "Advanced" msgstr "Avancé" -#: includes/class.cooked-recipes.php:905 +#: includes/class.cooked-recipes.php:857 msgid "Cooked Gallery" msgstr "Galerie de recette" -#: includes/class.cooked-recipes.php:909 +#: includes/class.cooked-recipes.php:861 msgid "Envira Gallery" msgstr "Galerie Envira" -#: includes/class.cooked-recipes.php:913 +#: includes/class.cooked-recipes.php:865 msgid "Soliloquy Slider" msgstr "Diaporama Soliloquy" -#: includes/class.cooked-recipes.php:917 +#: includes/class.cooked-recipes.php:869 msgid "Slider Revolution" msgstr "Slider Revolution" #. translators: singular and plural quarter "serving" size -#: includes/class.cooked-recipes.php:992 +#: includes/class.cooked-recipes.php:970 #, php-format msgid "Quarter (%s Serving)" msgid_plural "Quarter (%s Servings)" @@ -2198,7 +2091,7 @@ msgstr[0] "Quart (%s portion)" msgstr[1] "Quart (%s portions)" #. translators: singular and plural quarter "serving" size -#: includes/class.cooked-recipes.php:995 +#: includes/class.cooked-recipes.php:973 #, php-format msgid "Half (%s Serving)" msgid_plural "Half (%s Servings)" @@ -2206,7 +2099,7 @@ msgstr[0] "Demi (%s portion)" msgstr[1] "Demi (%s portions)" #. translators: singular and plural quarter "serving" size -#: includes/class.cooked-recipes.php:998 +#: includes/class.cooked-recipes.php:976 #, php-format msgid "Default (%s Serving)" msgid_plural "Default (%s Servings)" @@ -2214,76 +2107,70 @@ msgstr[0] "Par défaut (%s portion)" msgstr[1] "Par défaut (%s portions)" #. translators: singular and plural quarter "serving" size -#: includes/class.cooked-recipes.php:1001 +#: includes/class.cooked-recipes.php:979 #, php-format msgid "Double (%s Servings)" msgstr "Double (%s portions)" #. translators: singular and plural quarter "serving" size -#: includes/class.cooked-recipes.php:1004 +#: includes/class.cooked-recipes.php:982 #, php-format msgid "Triple (%s Servings)" msgstr "Triple (%s portions)" #. translators: singular and plural "serving" sizes -#: includes/class.cooked-recipes.php:1022 -#: includes/class.cooked-recipes.php:1033 +#: includes/class.cooked-recipes.php:1000 +#: includes/class.cooked-recipes.php:1011 #, php-format msgid "%s Serving" msgid_plural "%s Servings" msgstr[0] "%s portion" msgstr[1] "%s portions" -#: includes/class.cooked-recipes.php:1130 -#: includes/class.cooked-recipes.php:1144 +#: includes/class.cooked-recipes.php:1143 +#: includes/class.cooked-recipes.php:1157 msgid "or" msgstr "ou" -#: includes/class.cooked-recipes.php:1248 +#: includes/class.cooked-recipes.php:1262 msgid "Browse" msgstr "Parcourir" -#: includes/class.cooked-recipes.php:1342 +#: includes/class.cooked-recipes.php:1356 msgid "Find a recipe..." msgstr "Trouvez une recette..." -#: includes/class.cooked-recipes.php:1344 +#: includes/class.cooked-recipes.php:1358 msgid "Search" msgstr "Rechercher" -#: includes/class.cooked-recipes.php:1357 +#: includes/class.cooked-recipes.php:1371 msgid "Newest first" msgstr "Plus récentes en premier" -#: includes/class.cooked-recipes.php:1361 +#: includes/class.cooked-recipes.php:1375 msgid "Oldest first" msgstr "Les plus anciennes en premier" -#: includes/class.cooked-recipes.php:1365 +#: includes/class.cooked-recipes.php:1379 msgid "Alphabetical (A-Z)" msgstr "Ordre Alphabétique (A-Z)" -#: includes/class.cooked-recipes.php:1369 +#: includes/class.cooked-recipes.php:1383 msgid "Alphabetical (Z-A)" msgstr "Ordre Alphabétique (Z-A)" #. translators: for displaying singular or plural versions depending on the number of recipes. #: includes/class.cooked-migration.php:47 #, php-format -msgid "There is %1$s recipe that should be migrated from %2$s to take advanta" -"ge of new features and reliability." -msgid_plural "There are %1$s recipes that should be migrated from %2$s to take advan" -"tage of new features and reliability." -msgstr[0] "Il y a %1$s recette qui devrait être migrée depuis %2$s pour tirer par" -"ti des nouvelles fonctionnalités et de la fiabilité." -msgstr[1] "Il y a %1$s recettes qui devraient être migrées depuis %2$s pour tirer" -" parti des nouvelles fonctionnalités et de la fiabilité." +msgid "There is %1$s recipe that should be migrated from %2$s to take advantage of new features and reliability." +msgid_plural "There are %1$s recipes that should be migrated from %2$s to take advantage of new features and reliability." +msgstr[0] "Il y a %1$s recette qui devrait être migrée depuis %2$s pour tirer parti des nouvelles fonctionnalités et de la fiabilité." +msgstr[1] "Il y a %1$s recettes qui devraient être migrées depuis %2$s pour tirer parti des nouvelles fonctionnalités et de la fiabilité." #: includes/class.cooked-migration.php:49 -msgid "Please click the button below to migrate these recipes. Here is what w" -"ill happen to your recipes:" -msgstr "Veuillez cliquer sur le bouton ci-dessous pour migrer ces recettes. Vo" -"ici ce qui va arriver à vos recettes :" +msgid "Please click the button below to migrate these recipes. Here is what will happen to your recipes:" +msgstr "Veuillez cliquer sur le bouton ci-dessous pour migrer ces recettes. Voici ce qui va arriver à vos recettes :" #: includes/class.cooked-migration.php:51 msgid "NO DATA LOSS, all fields will be remapped." @@ -2291,20 +2178,15 @@ msgstr "AUCUNE PERTE DE DONNÉES, tous les champs seront réaffectés." #: includes/class.cooked-migration.php:52 msgid "Remapped fields will greatly speed up recipe loading times." -msgstr "Les champs réaffectés vont grandement accélérer les temps de chargemen" -"t des recettes." +msgstr "Les champs réaffectés vont grandement accélérer les temps de chargement des recettes." #: includes/class.cooked-migration.php:53 -msgid "If recipe excerpt exists, the short description will be moved to the t" -"op of the recipe template." -msgstr "Si l'extrait de recette existe, la description courte sera déplacée ve" -"rs le haut du modèle de recette." +msgid "If recipe excerpt exists, the short description will be moved to the top of the recipe template." +msgstr "Si l'extrait de recette existe, la description courte sera déplacée vers le haut du modèle de recette." #: includes/class.cooked-migration.php:54 -msgid "If no recipe excerpt exists, the short description will be used instea" -"d." -msgstr "Si aucun extrait de recette n'existe, la description courte sera utili" -"sée à la place." +msgid "If no recipe excerpt exists, the short description will be used instead." +msgstr "Si aucun extrait de recette n'existe, la description courte sera utilisée à la place." #: includes/class.cooked-migration.php:55 msgid "Version number will be applied to each recipe." @@ -2317,14 +2199,10 @@ msgstr "Migration" #. translators: for displaying singular or plural versions depending on the number of recipes. #: includes/class.cooked-migration.php:90 #, php-format -msgid "There is %1$s recipe that is from an older version of Cooked. Please %" -"2$s to migrate this recipe." -msgid_plural "There are %1$s recipes that are from an older version of Cooked. Pleas" -"e %2$s to migrate these recipes." -msgstr[0] "Il y a %1$s recette issue d'une ancienne version de Cooked. Veuillez %" -"2$s pour migrer cette recette." -msgstr[1] "Il y a %1$s recettes issues d'une ancienne version de Cooked. Veuillez" -" %2$s pour migrer ces recettes." +msgid "There is %1$s recipe that is from an older version of Cooked. Please %2$s to migrate this recipe." +msgid_plural "There are %1$s recipes that are from an older version of Cooked. Please %2$s to migrate these recipes." +msgstr[0] "Il y a %1$s recette issue d'une ancienne version de Cooked. Veuillez %2$s pour migrer cette recette." +msgstr[1] "Il y a %1$s recettes issues d'une ancienne version de Cooked. Veuillez %2$s pour migrer ces recettes." #. translators: for displaying singular or plural versions depending on the number of recipes. #: includes/class.cooked-migration.php:90 @@ -2341,54 +2219,64 @@ msgstr "Cooked - Gestion de recettes" msgid "https://wordpress.org/plugins/cooked" msgstr "https://wordpress.org/plugins/cooked" -#: includes/class.cooked-admin-enqueues.php:165 -msgid "Pre-calculate related recipes for all published recipes? This may take" -" a while on large sites." -msgstr "Précalculer les recettes associées pour toutes les recettes publiées ?" -" Cela peut prendre du temps sur les grands sites." +#: includes/class.cooked-admin-enqueues.php:168 +msgid "Pre-calculate related recipes for all published recipes? This may take a while on large sites." +msgstr "Précalculer les recettes associées pour toutes les recettes publiées ? Cela peut prendre du temps sur les grands sites." #. translators: 1: date and time, 2: number of recipes -#: includes/class.cooked-admin-enqueues.php:167 +#: includes/class.cooked-admin-enqueues.php:170 #, php-format msgid "Last: %1$s · %2$s recipes" msgstr "Dernier : %1$s · %2$s recettes" -#: includes/class.cooked-admin-enqueues.php:170 +#: includes/class.cooked-admin-enqueues.php:173 msgid "Bulk Add Ingredients" msgstr "Ajout groupé d'ingrédients" -#: includes/class.cooked-admin-enqueues.php:171 +#: includes/class.cooked-admin-enqueues.php:174 msgid "Bulk Add Directions" msgstr "Ajout groupé d'instructions" -#: includes/class.cooked-admin-enqueues.php:172 -msgid "2 cups flour\n1 tsp salt\n1/2 cup sugar\n3 large eggs" -msgstr "2 tasses de farine\n1 c. à thé de sel\n1/2 tasse de sucre\n3 gros œufs" +#: includes/class.cooked-admin-enqueues.php:175 +msgid "" +"2 cups flour\n" +"1 tsp salt\n" +"1/2 cup sugar\n" +"3 large eggs" +msgstr "" +"2 tasses de farine\n" +"1 c. à thé de sel\n" +"1/2 tasse de sucre\n" +"3 gros œufs" -#: includes/class.cooked-admin-enqueues.php:173 -msgid "Preheat oven to 350°F.\nMix dry ingredients together.\nAdd wet ingredi" -"ents and stir." -msgstr "Préchauffer le four à 175 °C.\nMélanger les ingrédients secs.\nAjouter" -" les ingrédients humides et remuer." +#: includes/class.cooked-admin-enqueues.php:176 +msgid "" +"Preheat oven to 350°F.\n" +"Mix dry ingredients together.\n" +"Add wet ingredients and stir." +msgstr "" +"Préchauffer le four à 175 °C.\n" +"Mélanger les ingrédients secs.\n" +"Ajouter les ingrédients humides et remuer." -#: includes/class.cooked-admin-enqueues.php:174 -#: includes/class.cooked-recipe-meta.php:1723 +#: includes/class.cooked-admin-enqueues.php:177 +#: includes/class.cooked-recipe-meta.php:1748 msgid "Section heading" msgstr "Titre de section" -#: includes/class.cooked-admin-enqueues.php:175 +#: includes/class.cooked-admin-enqueues.php:178 msgid "Parsing..." msgstr "Analyse..." -#: includes/class.cooked-admin-enqueues.php:176 +#: includes/class.cooked-admin-enqueues.php:179 msgid "Add Ingredients" msgstr "Ajouter les ingrédients" -#: includes/class.cooked-admin-enqueues.php:177 +#: includes/class.cooked-admin-enqueues.php:180 msgid "Add Directions" msgstr "Ajouter les instructions" -#: includes/class.cooked-admin-enqueues.php:181 +#: includes/class.cooked-admin-enqueues.php:184 msgid "Heading text" msgstr "Texte du titre" @@ -2406,87 +2294,84 @@ msgstr "Allergènes dans la liste de recettes" #: includes/class.cooked-allergens.php:76 msgid "Show allergen icons on recipe cards in browse and list views." -msgstr "Afficher les icônes d'allergènes sur les cartes de recettes dans les v" -"ues parcourir et liste." +msgstr "Afficher les icônes d'allergènes sur les cartes de recettes dans les vues parcourir et liste." -#: includes/class.cooked-allergens.php:80 +#: includes/class.cooked-allergens.php:82 msgid "Show Allergens on Recipe Cards" msgstr "Afficher les allergènes sur les cartes de recettes" -#: includes/class.cooked-allergens.php:109 -#: includes/class.cooked-allergens.php:288 -#: includes/class.cooked-allergens.php:312 -#: includes/class.cooked-allergens.php:331 +#: includes/class.cooked-allergens.php:111 +#: includes/class.cooked-allergens.php:321 +#: includes/class.cooked-allergens.php:345 +#: includes/class.cooked-allergens.php:364 msgid "Allergens" msgstr "Allergènes" -#: includes/class.cooked-allergens.php:156 +#: includes/class.cooked-allergens.php:189 msgid "Celery" msgstr "Céleri" -#: includes/class.cooked-allergens.php:160 +#: includes/class.cooked-allergens.php:193 msgid "Crustacean shellfish" msgstr "Crustacés" -#: includes/class.cooked-allergens.php:164 +#: includes/class.cooked-allergens.php:197 msgid "Eggs" msgstr "Œufs" -#: includes/class.cooked-allergens.php:168 +#: includes/class.cooked-allergens.php:201 msgid "Fish" msgstr "Poisson" -#: includes/class.cooked-allergens.php:172 +#: includes/class.cooked-allergens.php:205 msgid "Lupin" msgstr "Lupin" -#: includes/class.cooked-allergens.php:176 +#: includes/class.cooked-allergens.php:209 msgid "Milk" msgstr "Lait" -#: includes/class.cooked-allergens.php:180 +#: includes/class.cooked-allergens.php:213 msgid "Molluscs" msgstr "Mollusques" -#: includes/class.cooked-allergens.php:184 +#: includes/class.cooked-allergens.php:217 msgid "Mustard" msgstr "Moutarde" -#: includes/class.cooked-allergens.php:188 +#: includes/class.cooked-allergens.php:221 msgid "Peanuts" msgstr "Arachides" -#: includes/class.cooked-allergens.php:192 +#: includes/class.cooked-allergens.php:225 msgid "Sesame" msgstr "Sésame" -#: includes/class.cooked-allergens.php:196 +#: includes/class.cooked-allergens.php:229 msgid "Soybeans" msgstr "Soja" -#: includes/class.cooked-allergens.php:200 +#: includes/class.cooked-allergens.php:233 msgid "Sulphur dioxide and sulphites" msgstr "Anhydride sulfureux et sulfites" -#: includes/class.cooked-allergens.php:204 +#: includes/class.cooked-allergens.php:237 msgid "Tree nuts" msgstr "Fruits à coque" -#: includes/class.cooked-allergens.php:208 +#: includes/class.cooked-allergens.php:241 msgid "Wheat" msgstr "Blé" #. translators: %s: allergen name -#: includes/class.cooked-allergens.php:270 +#: includes/class.cooked-allergens.php:303 #, php-format msgid "Contains %s" msgstr "Contient %s" #: includes/class.cooked-cli.php:41 -msgid "Please provide a tool name. Use `wp cooked tools list` to see availabl" -"e tools." -msgstr "Veuillez indiquer un nom d'outil. Utilisez `wp cooked tools list` pour" -" voir les outils disponibles." +msgid "Please provide a tool name. Use `wp cooked tools list` to see available tools." +msgstr "Veuillez indiquer un nom d'outil. Utilisez `wp cooked tools list` pour voir les outils disponibles." #: includes/class.cooked-cli.php:51 msgid "Tool completed successfully." @@ -2520,16 +2405,8 @@ msgid "Excerpt/description" msgstr "Extrait/description" #: includes/class.cooked-import.php:159 -msgid "Ingredients, separated by pipe (|).
Format: \"a" -"mount|measurement|name\" or \"name\" for simple in" -"gredients.
Add substitutions with double pipe (||): \"amount|measurement|name||sub_amount|sub_measurement|sub_name\"" -msgstr "Ingrédients séparés par une barre verticale (|).
Form" -"at : \"quantité|mesure|nom\" ou \"nom\" pour" -" les ingrédients simples.
Ajoutez les substitutions avec une double" -" barre (||) : \"quantité|mesure|nom||sub_quantité|s" -"ub_mesure|sub_nom\"" +msgid "Ingredients, separated by pipe (|).
Format: \"amount|measurement|name\" or \"name\" for simple ingredients.
Add substitutions with double pipe (||): \"amount|measurement|name||sub_amount|sub_measurement|sub_name\"" +msgstr "Ingrédients séparés par une barre verticale (|).
Format : \"quantité|mesure|nom\" ou \"nom\" pour les ingrédients simples.
Ajoutez les substitutions avec une double barre (||) : \"quantité|mesure|nom||sub_quantité|sub_mesure|sub_nom\"" #: includes/class.cooked-import.php:160 msgid "Directions/instructions, separated by pipe (|)" @@ -2553,14 +2430,7 @@ msgstr "Étiquettes, séparées par des virgules" #: includes/class.cooked-import.php:167 msgid "Restricted diet type (Schema.org RestrictedDiet), separated by comma" -msgstr "Type de régime restreint (Schema.org RestrictedDiet), séparé par des v" -"irgules" - -msgid "g" -msgstr "g" - -msgid "kg" -msgstr "kg" +msgstr "Type de régime restreint (Schema.org RestrictedDiet), séparé par des virgules" #: includes/class.cooked-multilingual.php:260 msgid "Multilingual Setup:" @@ -2568,43 +2438,30 @@ msgstr "Configuration multilingue :" #: includes/class.cooked-multilingual.php:261 msgid "Your Browse/Search Recipes page is missing translations for:" -msgstr "Votre page Parcourir/Rechercher des recettes n'a pas de traductions po" -"ur :" +msgstr "Votre page Parcourir/Rechercher des recettes n'a pas de traductions pour :" #. translators: %s is the multilingual plugin name (Polylang or WPML) #: includes/class.cooked-multilingual.php:266 #, php-format -msgid "Create translations of your browse page in %s for full multilingual su" -"pport." -msgstr "Créez des traductions de votre page parcourir en %s pour une prise en " -"charge multilingue complète." +msgid "Create translations of your browse page in %s for full multilingual support." +msgstr "Créez des traductions de votre page parcourir en %s pour une prise en charge multilingue complète." #: includes/class.cooked-recipe-meta.php:217 #, php-format -msgid "This recipe is set up to include itself in the Recipe Template (contai" -"ning shortcode %s), which can break the page. Remove the embed that re" -"ferences this same recipe." -msgstr "Cette recette est configurée pour s'inclure elle-même dans le modèle d" -"e recette (contenant le shortcode %s), ce qui peut casser la page. Sup" -"primez l'intégration qui référence cette même recette." +msgid "This recipe is set up to include itself in the Recipe Template (containing shortcode %s), which can break the page. Remove the embed that references this same recipe." +msgstr "Cette recette est configurée pour s'inclure elle-même dans le modèle de recette (contenant le shortcode %s), ce qui peut casser la page. Supprimez l'intégration qui référence cette même recette." #: includes/class.cooked-recipe-meta.php:258 -msgid "Enter one item per line. Use the checkboxes below to mark section head" -"ings." -msgstr "Saisissez un élément par ligne. Utilisez les cases ci-dessous pour mar" -"quer les titres de section." +msgid "Enter one item per line. Use the checkboxes below to mark section headings." +msgstr "Saisissez un élément par ligne. Utilisez les cases ci-dessous pour marquer les titres de section." #: includes/class.cooked-recipe-meta.php:261 msgid "Preview" msgstr "Aperçu" #: includes/class.cooked-recipe-meta.php:265 -msgid "Please review the parsed fields before adding. Automatic parsing may m" -"isread amounts—for example, a range written as 2-3 could appear as 23 " -"unless you correct it." -msgstr "Veuillez vérifier les champs analysés avant d'ajouter. L'analyse autom" -"atique peut mal interpréter les quantités — par exemple, une plage 2-3" -" peut apparaître comme 23 si vous ne la corrigez pas." +msgid "Please review the parsed fields before adding. Automatic parsing may misread amounts—for example, a range written as 2-3 could appear as 23 unless you correct it." +msgstr "Veuillez vérifier les champs analysés avant d'ajouter. L'analyse automatique peut mal interpréter les quantités — par exemple, une plage 2-3 peut apparaître comme 23 si vous ne la corrigez pas." #: includes/class.cooked-recipe-meta.php:270 msgid "Cancel" @@ -2615,22 +2472,16 @@ msgid "Recipe Card" msgstr "Carte de recette" #: includes/class.cooked-recipe-meta.php:302 -msgid "Displays a compact linked recipe card with image, title, author, and e" -"xcerpt — not the full recipe. Use this to promote this recipe elsewher" -"e on your site." -msgstr "Affiche une carte de recette compacte avec image, titre, auteur et ext" -"rait — pas la recette complète. Utilisez-la pour promouvoir cette rece" -"tte ailleurs sur votre site." +msgid "Displays a compact linked recipe card with image, title, author, and excerpt — not the full recipe. Use this to promote this recipe elsewhere on your site." +msgstr "Affiche une carte de recette compacte avec image, titre, auteur et extrait — pas la recette complète. Utilisez-la pour promouvoir cette recette ailleurs sur votre site." #: includes/class.cooked-recipe-meta.php:310 msgid "Choose \"modern\" or \"modern-centered\"." msgstr "Choisissez « modern » ou « modern-centered »." #: includes/class.cooked-recipe-meta.php:317 -msgid "Set the card width. Defaults to 100%. Use \"%\" or \"px\" after the nu" -"mber." -msgstr "Définissez la largeur de la carte. Par défaut 100 %. Utilisez « % » ou" -" « px » après le nombre." +msgid "Set the card width. Defaults to 100%. Use \"%\" or \"px\" after the number." +msgstr "Définissez la largeur de la carte. Par défaut 100 %. Utilisez « % » ou « px » après le nombre." #: includes/class.cooked-recipe-meta.php:327 msgid "Hide the recipe excerpt." @@ -2649,7 +2500,7 @@ msgid "Hide the recipe title." msgstr "Masquer le titre de la recette." #: includes/class.cooked-recipe-meta.php:363 -#: includes/class.cooked-recipe-meta.php:1722 +#: includes/class.cooked-recipe-meta.php:1747 msgid "Recipe ID" msgstr "ID de recette" @@ -2665,182 +2516,142 @@ msgstr "modern, modern-centered" #: includes/class.cooked-recipe-meta.php:367 #: includes/class.cooked-recipe-meta.php:368 #: includes/class.cooked-recipe-meta.php:369 -#: includes/class.cooked-recipe-meta.php:1726 -#: includes/class.cooked-recipe-meta.php:1727 -#: includes/class.cooked-recipe-meta.php:1728 -#: includes/class.cooked-recipe-meta.php:1729 +#: includes/class.cooked-recipe-meta.php:1751 +#: includes/class.cooked-recipe-meta.php:1752 +#: includes/class.cooked-recipe-meta.php:1753 +#: includes/class.cooked-recipe-meta.php:1754 msgid "true/false" msgstr "true/false" #: includes/class.cooked-recipe-meta.php:371 -#: includes/class.cooked-recipe-meta.php:1731 +#: includes/class.cooked-recipe-meta.php:1756 msgid "Example" msgstr "Exemple" #: includes/class.cooked-recipe-meta.php:797 -#: includes/class.cooked-recipe-meta.php:1003 +#: includes/class.cooked-recipe-meta.php:1021 msgid "Bulk Add" msgstr "Ajout groupé" -#: includes/class.cooked-recipe-meta.php:1615 +#: includes/class.cooked-recipe-meta.php:1640 msgid "Next & Previous Recipe Navigation" msgstr "Navigation recette suivante et précédente" -#: includes/class.cooked-recipe-meta.php:1616 +#: includes/class.cooked-recipe-meta.php:1641 msgid "This will display navigation links to the next and previous recipes." -msgstr "Affiche les liens de navigation vers les recettes suivante et précéden" -"te." +msgstr "Affiche les liens de navigation vers les recettes suivante et précédente." -#: includes/class.cooked-recipe-meta.php:1620 -msgid "This shortcode automatically displays the previous and next recipe lin" -"ks based on the current recipe page. No parameters are required." -msgstr "Ce shortcode affiche automatiquement les liens vers la recette précéde" -"nte et suivante selon la page actuelle. Aucun paramètre requis." +#: includes/class.cooked-recipe-meta.php:1645 +msgid "This shortcode automatically displays the previous and next recipe links based on the current recipe page. No parameters are required." +msgstr "Ce shortcode affiche automatiquement les liens vers la recette précédente et suivante selon la page actuelle. Aucun paramètre requis." -#: includes/class.cooked-recipe-meta.php:1625 +#: includes/class.cooked-recipe-meta.php:1650 msgid "Usage" msgstr "Utilisation" -#: includes/class.cooked-recipe-meta.php:1627 -msgid "Simply add the shortcode to your recipe template or content area. The " -"navigation will automatically show the previous and next recipes based" -" on recipe ID order." -msgstr "Ajoutez simplement le shortcode à votre modèle de recette ou zone de c" -"ontenu. La navigation affichera automatiquement les recettes précédent" -"e et suivante selon l'ordre des ID." +#: includes/class.cooked-recipe-meta.php:1652 +msgid "Simply add the shortcode to your recipe template or content area. The navigation will automatically show the previous and next recipes based on recipe ID order." +msgstr "Ajoutez simplement le shortcode à votre modèle de recette ou zone de contenu. La navigation affichera automatiquement les recettes précédente et suivante selon l'ordre des ID." -#: includes/class.cooked-recipe-meta.php:1640 +#: includes/class.cooked-recipe-meta.php:1665 #: includes/class.cooked-related-recipes.php:34 msgid "Related Recipes" msgstr "Recettes associées" -#: includes/class.cooked-recipe-meta.php:1641 -msgid "Displays a grid of related recipes based on shared terms in any of the" -" recipe taxonomies (categories, cuisines, cooking methods, tags, diets" -"), shown in random order. No cache or pre-calculation." -msgstr "Affiche une grille de recettes associées selon les termes partagés dan" -"s les taxonomies (catégories, cuisines, méthodes de cuisson, étiquette" -"s, régimes), dans un ordre aléatoire. Sans cache ni précalcul." - -#: includes/class.cooked-recipe-meta.php:1649 +#: includes/class.cooked-recipe-meta.php:1666 +msgid "Displays a grid of related recipes based on shared terms in any of the recipe taxonomies (categories, cuisines, cooking methods, tags, diets), shown in random order. No cache or pre-calculation." +msgstr "Affiche une grille de recettes associées selon les termes partagés dans les taxonomies (catégories, cuisines, méthodes de cuisson, étiquettes, régimes), dans un ordre aléatoire. Sans cache ni précalcul." + +#: includes/class.cooked-recipe-meta.php:1674 msgid "Specify a recipe ID. If not provided, uses the current recipe." msgstr "Indiquez un ID de recette. Sinon, la recette actuelle est utilisée." -#: includes/class.cooked-recipe-meta.php:1656 +#: includes/class.cooked-recipe-meta.php:1681 msgid "Set the heading text for the related recipes section." msgstr "Définissez le texte du titre de la section recettes associées." -#: includes/class.cooked-recipe-meta.php:1666 +#: includes/class.cooked-recipe-meta.php:1691 msgid "Number of recipes to display (default: 4)." msgstr "Nombre de recettes à afficher (par défaut : 4)." -#: includes/class.cooked-recipe-meta.php:1673 +#: includes/class.cooked-recipe-meta.php:1698 msgid "Number of columns in the grid (default: 2)." msgstr "Nombre de colonnes dans la grille (par défaut : 2)." -#: includes/class.cooked-recipe-meta.php:1683 +#: includes/class.cooked-recipe-meta.php:1708 msgid "Hide recipe card images." msgstr "Masquer les images des cartes de recettes." -#: includes/class.cooked-recipe-meta.php:1690 +#: includes/class.cooked-recipe-meta.php:1715 msgid "Hide recipe card excerpts." msgstr "Masquer les extraits des cartes de recettes." -#: includes/class.cooked-recipe-meta.php:1700 +#: includes/class.cooked-recipe-meta.php:1725 msgid "Hide recipe card authors." msgstr "Masquer les auteurs des cartes de recettes." -#: includes/class.cooked-recipe-meta.php:1707 -msgid "Toggle which taxonomies are used: match_categories, match_cuisines, ma" -"tch_cooking_methods, match_tags, match_diets (default: true)." -msgstr "Activez les taxonomies utilisées : match_categories, match_cuisines, m" -"atch_cooking_methods, match_tags, match_diets (par défaut : true)." +#: includes/class.cooked-recipe-meta.php:1732 +msgid "Toggle which taxonomies are used: match_categories, match_cuisines, match_cooking_methods, match_tags, match_diets (default: true)." +msgstr "Activez les taxonomies utilisées : match_categories, match_cuisines, match_cooking_methods, match_tags, match_diets (par défaut : true)." -#: includes/class.cooked-recipe-meta.php:1714 +#: includes/class.cooked-recipe-meta.php:1739 msgid "Matching options:" msgstr "Options de correspondance :" -#: includes/class.cooked-recipe-meta.php:1715 -msgid "Set to false to exclude a taxonomy from related recipes, e.g. match_cu" -"isines=\"false\" to ignore cuisines." -msgstr "Mettez false pour exclure une taxonomie, ex. match_cuisines=\"false\" " -"pour ignorer les cuisines." +#: includes/class.cooked-recipe-meta.php:1740 +msgid "Set to false to exclude a taxonomy from related recipes, e.g. match_cuisines=\"false\" to ignore cuisines." +msgstr "Mettez false pour exclure une taxonomie, ex. match_cuisines=\"false\" pour ignorer les cuisines." -#: includes/class.cooked-recipe-meta.php:1724 +#: includes/class.cooked-recipe-meta.php:1749 msgid "Number of recipes" msgstr "Nombre de recettes" -#: includes/class.cooked-recipe-meta.php:1725 +#: includes/class.cooked-recipe-meta.php:1750 msgid "Grid columns" msgstr "Colonnes de la grille" -#: includes/class.cooked-settings.php:241 +#: includes/class.cooked-settings.php:337 msgid "Print View" msgstr "Vue d'impression" -#: includes/class.cooked-settings.php:242 -msgid "When enabled, the active theme's header and/or footer appear on the re" -"cipe print screen." -msgstr "Si activé, l'en-tête et/ou le pied de page du thème actif apparaissent" -" sur l'écran d'impression de la recette." - -#: includes/class.cooked-settings.php:248 -msgid "Site Header" -msgstr "En-tête du site" - -#: includes/class.cooked-settings.php:249 -msgid "Site Footer" -msgstr "Pied de page du site" - -#: includes/class.cooked-shortcodes.php:328 +#: includes/class.cooked-shortcodes.php:359 #, php-format -msgid "This recipe could not be displayed because it is set up to include its" -"elf (containing shortcode %s). Remove the duplicate recipe embed from " -"the Recipe Template." -msgstr "Cette recette n'a pas pu être affichée car elle est configurée pour s'" -"inclure elle-même (shortcode %s). Supprimez l'intégration en double du" -" modèle de recette." - -#: includes/class.cooked-shortcodes.php:1143 +msgid "This recipe could not be displayed because it is set up to include itself (containing shortcode %s). Remove the duplicate recipe embed from the Recipe Template." +msgstr "Cette recette n'a pas pu être affichée car elle est configurée pour s'inclure elle-même (shortcode %s). Supprimez l'intégration en double du modèle de recette." + +#: includes/class.cooked-shortcodes.php:1175 msgid "Invalid recipe ID specified. Please provide a valid numeric recipe ID." msgstr "ID de recette invalide. Veuillez fournir un ID numérique valide." -#: includes/class.cooked-shortcodes.php:1153 -msgid "No recipe found. Please specify a recipe ID using the id attribute, or" -" use this shortcode on a recipe page." -msgstr "Aucune recette trouvée. Indiquez un ID avec l'attribut id, ou utilisez" -" ce shortcode sur une page de recette." +#: includes/class.cooked-shortcodes.php:1185 +msgid "No recipe found. Please specify a recipe ID using the id attribute, or use this shortcode on a recipe page." +msgstr "Aucune recette trouvée. Indiquez un ID avec l'attribut id, ou utilisez ce shortcode sur une page de recette." -#: includes/class.cooked-shortcodes.php:1160 +#: includes/class.cooked-shortcodes.php:1192 msgid "Recipe not found." msgstr "Recette introuvable." -#: includes/class.cooked-shortcodes.php:1164 +#: includes/class.cooked-shortcodes.php:1196 #, php-format msgid "The specified ID (%d) is not a recipe." msgstr "L'ID spécifié (%d) n'est pas une recette." -#: includes/class.cooked-shortcodes.php:1166 +#: includes/class.cooked-shortcodes.php:1198 #, php-format msgid "No post found with ID %d." msgstr "Aucun article trouvé avec l'ID %d." -#: includes/class.cooked-shortcodes.php:1175 +#: includes/class.cooked-shortcodes.php:1207 msgid "No related recipes found." msgstr "Aucune recette associée trouvée." -#: includes/class.cooked-shortcodes.php:1178 -msgid "This may be because there are no other recipes in the current language" -" with matching attributes." -msgstr "Cela peut être dû à l'absence d'autres recettes dans la langue actuell" -"e avec des attributs correspondants." +#: includes/class.cooked-shortcodes.php:1210 +msgid "This may be because there are no other recipes in the current language with matching attributes." +msgstr "Cela peut être dû à l'absence d'autres recettes dans la langue actuelle avec des attributs correspondants." -#: includes/class.cooked-shortcodes.php:1180 -msgid "Try adjusting the matching criteria or ensure you have other published" -" recipes with shared categories, tags, or ingredients." -msgstr "Ajustez les critères de correspondance ou assurez-vous d'avoir d'autre" -"s recettes publiées avec des catégories, étiquettes ou ingrédients com" -"muns." +#: includes/class.cooked-shortcodes.php:1212 +msgid "Try adjusting the matching criteria or ensure you have other published recipes with shared categories, tags, or ingredients." +msgstr "Ajustez les critères de correspondance ou assurez-vous d'avoir d'autres recettes publiées avec des catégories, étiquettes ou ingrédients communs." #: includes/class.cooked-updates.php:150 msgid "Flush rewrite rules" @@ -2848,28 +2659,23 @@ msgstr "Vider les règles de réécriture" #: includes/class.cooked-updates.php:151 msgid "Refreshes permalink rules for recipe and profile URLs." -msgstr "Actualise les règles de permaliens pour les URLs de recettes et de pro" -"fils." +msgstr "Actualise les règles de permaliens pour les URLs de recettes et de profils." #: includes/class.cooked-updates.php:154 msgid "Fix recipe line endings" msgstr "Corriger les fins de ligne des recettes" #: includes/class.cooked-updates.php:155 -msgid "Normalizes line endings in recipe content for exporter/importer compat" -"ibility." -msgstr "Normalise les fins de ligne du contenu des recettes pour la compatibil" -"ité export/import." +msgid "Normalizes line endings in recipe content for exporter/importer compatibility." +msgstr "Normalise les fins de ligne du contenu des recettes pour la compatibilité export/import." #: includes/class.cooked-updates.php:158 msgid "Purge legacy related recipes cache" msgstr "Purger l'ancien cache des recettes associées" #: includes/class.cooked-updates.php:159 -msgid "Removes old transients and options from the previous related-recipes c" -"ache." -msgstr "Supprime les anciens transients et options de l'ancien cache des recet" -"tes associées." +msgid "Removes old transients and options from the previous related-recipes cache." +msgstr "Supprime les anciens transients et options de l'ancien cache des recettes associées." #: includes/class.cooked-updates.php:162 msgid "Remove recipes from user meta" @@ -2877,8 +2683,7 @@ msgstr "Supprimer les recettes des métadonnées utilisateur" #: includes/class.cooked-updates.php:163 msgid "Removes the legacy \"recipes\" key from all users' cooked_user_meta." -msgstr "Supprime l'ancienne clé « recipes » des cooked_user_meta de tous les u" -"tilisateurs." +msgstr "Supprime l'ancienne clé « recipes » des cooked_user_meta de tous les utilisateurs." #: includes/class.cooked-updates.php:196 msgid "Tool name is required." @@ -2901,12 +2706,8 @@ msgstr "Importation Cooked" #. translators: referring to "Cooked Pro" #: templates/admin/pro.php:14 #, php-format -msgid "The %s upgrade adds loads of new features like ratings, favorites, use" -"r profiles, automatic nutrition information and more. Check out the li" -"st below for all of the details." -msgstr "La mise à niveau %s ajoute de nombreuses nouvelles fonctionnalités : n" -"otes, favoris, profils utilisateur, informations nutritionnelles autom" -"atiques, etc. Consultez la liste ci-dessous pour tous les détails." +msgid "The %s upgrade adds loads of new features like ratings, favorites, user profiles, automatic nutrition information and more. Check out the list below for all of the details." +msgstr "La mise à niveau %s ajoute de nombreuses nouvelles fonctionnalités : notes, favoris, profils utilisateur, informations nutritionnelles automatiques, etc. Consultez la liste ci-dessous pour tous les détails." #: templates/admin/pro.php:35 msgid "Auto Nutrition Facts" @@ -2920,14 +2721,8 @@ msgstr "Utilisez le code promo %1$s pour %2$s de réduction !" #: templates/admin/welcome.php:16 #, php-format -msgid "If this is your first time using %1$s, head over to the %2$s page for " -"some initial configuration. You can also check out the %3$s if you get" -" stuck or contact me on %4$s. If you just recently updated, you can fi" -"nd out what's new below." -msgstr "Si c'est votre première utilisation de %1$s, rendez-vous sur la page %" -"2$s pour la configuration initiale. Consultez aussi la %3$s en cas de " -"blocage ou contactez-moi sur %4$s. Si vous venez de mettre à jour, déc" -"ouvrez les nouveautés ci-dessous." +msgid "If this is your first time using %1$s, head over to the %2$s page for some initial configuration. You can also check out the %3$s if you get stuck or contact me on %4$s. If you just recently updated, you can find out what's new below." +msgstr "Si c'est votre première utilisation de %1$s, rendez-vous sur la page %2$s pour la configuration initiale. Consultez aussi la %3$s en cas de blocage ou contactez-moi sur %4$s. Si vous venez de mettre à jour, découvrez les nouveautés ci-dessous." #: templates/admin/welcome.php:20 #: templates/admin/welcome.php:32 @@ -2937,3 +2732,265 @@ msgstr "Discord" #: templates/front/recipe-list.php:39 msgid "View all recipes" msgstr "Voir toutes les recettes" + +#. Description of the plugin +#: cooked.php +msgid "A recipe plugin for WordPress." +msgstr "Une extension de recettes pour WordPress." + +#. Author of the plugin +#: cooked.php +msgid "Gora Tech" +msgstr "Gora Tech" + +#. Author URI of the plugin +#: cooked.php +msgid "https://goratech.dev" +msgstr "https://goratech.dev" + +#: includes/class.cooked-import.php:220 +msgid "Download sample CSV files:" +msgstr "Télécharger des fichiers CSV d’exemple :" + +#: includes/class.cooked-import.php:221 +msgid "Small (1 recipe)" +msgstr "Petit (1 recette)" + +#: includes/class.cooked-import.php:222 +msgid "Medium (3 recipes)" +msgstr "Moyen (3 recettes)" + +#: includes/class.cooked-import.php:223 +msgid "Large (10 recipes)" +msgstr "Grand (10 recettes)" + +#: includes/class.cooked-measurements.php:29 +msgctxt "Grams Abbreviation (Singular)" +msgid "g" +msgstr "g" + +#: includes/class.cooked-measurements.php:30 +msgctxt "Grams Abbreviation (Plural)" +msgid "g" +msgstr "g" + +#: includes/class.cooked-measurements.php:37 +msgctxt "Kilograms Abbreviation (Singular)" +msgid "kg" +msgstr "kg" + +#: includes/class.cooked-measurements.php:38 +msgctxt "Kilograms Abbreviation (Plural)" +msgid "kg" +msgstr "kg" + +#: includes/class.cooked-recipes.php:935 +#: includes/class.cooked-recipes.php:945 +msgid "Default" +msgstr "Par défaut" + +#: includes/class.cooked-recipes.php:936 +#: includes/class.cooked-recipes.php:946 +msgid "Metric" +msgstr "Métrique" + +#: includes/class.cooked-recipes.php:937 +#: includes/class.cooked-recipes.php:947 +msgid "Imperial" +msgstr "Impérial" + +#: includes/class.cooked-recipes.php:941 +msgid "Units" +msgstr "Unités" + +#: includes/class.cooked-recipes.php:943 +msgid "Measurement System" +msgstr "Système de mesure" + +#: includes/class.cooked-settings.php:453 +msgid "Enable \"Measurement System Switcher\"" +msgstr "Activer le « sélecteur de système de mesure »" + +#: includes/class.cooked-settings.php:453 +msgid "Shows the Metric/Imperial toggle on recipes." +msgstr "Affiche la bascule Métrique/Impérial sur les recettes." + +#. translators: %s: recipe archive URL, e.g. https://example.com/recipe-archive +#: includes/class.cooked-settings.php:457 +#, php-format +msgid "Prevents the recipe archive from being displayed at %s." +msgstr "Empêche l’affichage de l’archive des recettes à l’adresse %s." + +#. translators: referring to "Cooked Pro" +#: templates/admin/pro.php:10 +#, php-format +msgid "Ready for %s?" +msgstr "Prêt pour %s ?" + +#: templates/admin/pro.php:23 +msgid "Premium Support" +msgstr "Support premium" + +#: templates/admin/pro.php:24 +msgid "User Profiles" +msgstr "Profils utilisateurs" + +#: templates/admin/pro.php:25 +msgid "User Ratings" +msgstr "Notes des utilisateurs" + +#: templates/admin/pro.php:26 +msgid "User Favorites" +msgstr "Favoris des utilisateurs" + +#: templates/admin/pro.php:27 +msgid "Ingredient Links" +msgstr "Liens d’ingrédients" + +#: templates/admin/pro.php:30 +msgid "Social Sharing" +msgstr "Partage social" + +#: templates/admin/pro.php:31 +msgid "Recipe Submissions" +msgstr "Soumissions de recettes" + +#: templates/admin/pro.php:32 +msgid "Modern Grid Layout" +msgstr "Mise en page grille moderne" + +#: templates/admin/pro.php:33 +msgid "Full-Width Layout" +msgstr "Mise en page pleine largeur" + +#: templates/admin/pro.php:34 +msgid "Pagination Options" +msgstr "Options de pagination" + +#: templates/admin/pro.php:38 +msgid "Compact List Layout" +msgstr "Mise en page liste compacte" + +#: templates/admin/pro.php:39 +msgid "Fitness Layout" +msgstr "Mise en page Fitness" + +#: templates/admin/pro.php:40 +msgid "Cuisines" +msgstr "Cuisines" + +#: templates/admin/pro.php:41 +msgid "Cooking Methods" +msgstr "Méthodes de cuisson" + +#: templates/admin/pro.php:42 +msgid "Tags" +msgstr "Étiquettes" + +#. translators: referring to "Cooked Pro" +#: templates/admin/pro.php:48 +#, php-format +msgid "Get %s" +msgstr "Obtenir %s" + +#: templates/admin/settings.php:6 +msgid "Update Settings" +msgstr "Mettre à jour les paramètres" + +#: includes/class.cooked-recipe-meta.php:118 +#: templates/admin/settings.php:10 +#: templates/admin/welcome.php:33 +msgid "Cooked Settings" +msgstr "Paramètres Cooked" + +#. translators: referring to "Cooked" +#: templates/admin/welcome.php:10 +#, php-format +msgid "Thanks for using %s!" +msgstr "Merci d'utiliser %s !" + +#: templates/admin/welcome.php:19 +msgid "documentation" +msgstr "documentation" + +#: templates/admin/welcome.php:29 +msgid "Quick Links" +msgstr "Liens rapides" + +#: templates/admin/welcome.php:31 +msgid "Documentation" +msgstr "Documentation" + +#: templates/admin/welcome.php:34 +msgid "Create a Recipe" +msgstr "Créer une recette" + +#. translators: referring to the author (ex: Recipes by John Smith) +#: templates/front/recipe-list.php:37 +#, php-format +msgid "Recipes by %s" +msgstr "Recettes par %s" + +#: includes/class.cooked-admin-enqueues.php:141 +#: includes/class.cooked-recipe-meta.php:922 +#: includes/class.cooked-recipe-meta.php:1002 +#: includes/class.cooked-recipe-meta.php:1040 +msgid "Add Video" +msgstr "Ajouter une vidéo" + +#: includes/class.cooked-admin-enqueues.php:142 +#: includes/class.cooked-recipe-meta.php:922 +msgid "Change Video" +msgstr "Changer la vidéo" + +#: includes/class.cooked-admin-enqueues.php:143 +msgid "Use this Video" +msgstr "Utiliser cette vidéo" + +#: includes/class.cooked-pixwell.php:58 +msgid "Pixwell's dark mode toggle is enabled on your site. To keep recipe styles in sync when visitors use it, go to" +msgstr "La bascule de mode sombre de Pixwell est activée sur votre site. Pour garder les styles de recettes synchronisés lorsque les visiteurs l’utilisent, allez dans" + +#: includes/class.cooked-pixwell.php:59 +msgid "Cooked → Settings → Design" +msgstr "Cooked → Paramètres → Design" + +#: includes/class.cooked-pixwell.php:60 +msgid " and set Dark Mode to Auto." +msgstr " et définissez le mode sombre sur Auto." + +#: includes/class.cooked-pixwell.php:77 +msgid "Pixwell's dark mode toggle is enabled. Choose Auto so Cooked follows it when visitors switch themes." +msgstr "La bascule de mode sombre de Pixwell est activée. Choisissez Auto pour que Cooked la suive lorsque les visiteurs changent de thème." + +#: includes/class.cooked-settings.php:338 +msgid "When enabled, the website logo will appear at the top of the recipe print screen." +msgstr "Lorsque cette option est activée, le logo du site apparaît en haut de l'écran d'impression de la recette." + +#: includes/class.cooked-settings.php:344 +msgid "Show Website Logo" +msgstr "Afficher le logo du site" + +#: includes/class.cooked-settings.php:473 +msgid "Use Auto if your theme has a visitor dark mode toggle. Cooked will then match that choice. Otherwise leave this Off." +msgstr "Utilisez Auto si votre thème propose une bascule de mode sombre pour les visiteurs. Cooked suivra alors ce choix. Sinon, laissez cette option sur Désactivé." + +#: includes/class.cooked-settings.php:480 +msgid "Off" +msgstr "Désactivé" + +#: includes/class.cooked-settings.php:481 +msgid "On" +msgstr "Activé" + +#: includes/class.cooked-settings.php:482 +msgid "Auto (match theme dark mode)" +msgstr "Auto (suivre le mode sombre du thème)" + +#: includes/class.cooked-settings.php:500 +msgid "Default Recipe Image" +msgstr "Image de recette par défaut" + +#: includes/class.cooked-settings.php:501 +msgid "Used as the featured image for recipes that do not have one set." +msgstr "Utilisée comme image mise en avant pour les recettes qui n’en ont pas." diff --git a/languages/cooked.po b/languages/cooked.po index 467386c..bb298cf 100644 --- a/languages/cooked.po +++ b/languages/cooked.po @@ -37,13 +37,15 @@ msgstr "" #: includes/class.cooked-admin-enqueues.php:138 #: includes/class.cooked-recipe-meta.php:912 -#: includes/class.cooked-recipe-meta.php:968 -#: includes/class.cooked-recipe-meta.php:1012 +#: includes/class.cooked-recipe-meta.php:979 +#: includes/class.cooked-recipe-meta.php:1030 +#: includes/class.cooked-settings.php:802 msgid "Add Image" msgstr "" #: includes/class.cooked-admin-enqueues.php:139 #: includes/class.cooked-recipe-meta.php:912 +#: includes/class.cooked-settings.php:802 msgid "Change Image" msgstr "" @@ -51,42 +53,42 @@ msgstr "" msgid "Use this Image" msgstr "" -#: includes/class.cooked-admin-enqueues.php:141 -#: includes/class.cooked-recipe-meta.php:1244 +#: includes/class.cooked-admin-enqueues.php:144 +#: includes/class.cooked-recipe-meta.php:1269 msgid "Add to Gallery" msgstr "" -#: includes/class.cooked-admin-enqueues.php:142 +#: includes/class.cooked-admin-enqueues.php:145 msgid "Edit Gallery Item" msgstr "" -#: includes/class.cooked-admin-enqueues.php:143 +#: includes/class.cooked-admin-enqueues.php:146 msgid "Update Gallery Item" msgstr "" -#: includes/class.cooked-admin-enqueues.php:144 +#: includes/class.cooked-admin-enqueues.php:147 msgid "Saved" msgstr "" -#: includes/class.cooked-admin-enqueues.php:145 +#: includes/class.cooked-admin-enqueues.php:148 msgid "Applied" msgstr "" -#: includes/class.cooked-admin-enqueues.php:146 +#: includes/class.cooked-admin-enqueues.php:149 msgid "Are you sure you want to apply this new template to all of your recipes?" msgstr "" -#: includes/class.cooked-admin-enqueues.php:147 +#: includes/class.cooked-admin-enqueues.php:150 msgid "Are you sure you want to reset this recipe template to the Cooked plugin default?" msgstr "" #. translators: confirmation for migrating all ### recipes, where ### displays the total number for the migration. -#: includes/class.cooked-admin-enqueues.php:149 +#: includes/class.cooked-admin-enqueues.php:152 #, php-format msgid "Please confirm that you are ready to migrate all %s recipes." msgstr "" -#: includes/class.cooked-admin-enqueues.php:150 +#: includes/class.cooked-admin-enqueues.php:153 msgid "Please confirm that you are ready to import all recipes." msgstr "" @@ -107,7 +109,6 @@ msgstr "" #. translators: referring to the bottom of the Settings page. #: includes/class.cooked-admin-menus.php:45 #: includes/class.cooked-admin-menus.php:65 -#: includes/class.cooked-recipe-meta.php:118 #: includes/class.cooked-shortcodes.php:167 #: templates/admin/welcome.php:18 msgid "Settings" @@ -143,9 +144,9 @@ msgstr "" #: includes/class.cooked-functions.php:134 #: includes/class.cooked-recipe-meta.php:177 #: includes/class.cooked-recipe-meta.php:415 -#: includes/class.cooked-recipe-meta.php:1322 -#: includes/class.cooked-recipes.php:788 -#: includes/class.cooked-recipes.php:820 +#: includes/class.cooked-recipe-meta.php:1347 +#: includes/class.cooked-recipes.php:740 +#: includes/class.cooked-recipes.php:772 msgid "Ingredients" msgstr "" @@ -154,14 +155,14 @@ msgstr "" #: includes/class.cooked-functions.php:135 #: includes/class.cooked-recipe-meta.php:177 #: includes/class.cooked-recipe-meta.php:421 -#: includes/class.cooked-recipe-meta.php:1353 -#: includes/class.cooked-recipes.php:792 -#: includes/class.cooked-recipes.php:821 +#: includes/class.cooked-recipe-meta.php:1378 +#: includes/class.cooked-recipes.php:744 +#: includes/class.cooked-recipes.php:773 msgid "Directions" msgstr "" #: includes/class.cooked-enqueues.php:56 -#: includes/class.cooked-recipe-meta.php:1568 +#: includes/class.cooked-recipe-meta.php:1593 msgid "Timer" msgstr "" @@ -189,8 +190,8 @@ msgid "Information" msgstr "" #: includes/class.cooked-functions.php:132 -#: includes/class.cooked-recipe-meta.php:1513 -#: includes/class.cooked-settings.php:233 +#: includes/class.cooked-recipe-meta.php:1538 +#: includes/class.cooked-settings.php:327 msgid "Excerpt" msgstr "" @@ -200,9 +201,9 @@ msgstr "" #: includes/class.cooked-functions.php:136 #: includes/class.cooked-import.php:161 -#: includes/class.cooked-recipe-meta.php:1537 -#: includes/class.cooked-recipes.php:795 -#: includes/class.cooked-settings.php:234 +#: includes/class.cooked-recipe-meta.php:1562 +#: includes/class.cooked-recipes.php:747 +#: includes/class.cooked-settings.php:328 #: includes/class.cooked-shortcodes.php:836 msgid "Notes" msgstr "" @@ -300,7 +301,7 @@ msgstr "" #: includes/class.cooked-import.php:211 #: includes/class.cooked-import.php:234 -#: includes/class.cooked-settings.php:625 +#: includes/class.cooked-settings.php:729 msgid "reload" msgstr "" @@ -587,8 +588,8 @@ msgid "cans" msgstr "" #: includes/class.cooked-measurements.php:217 -#: includes/class.cooked-recipes.php:1051 -#: includes/class.cooked-settings.php:238 +#: includes/class.cooked-recipes.php:1003 +#: includes/class.cooked-settings.php:332 msgid "Servings" msgstr "" @@ -860,7 +861,7 @@ msgid "Photo" msgstr "" #: includes/class.cooked-post-types.php:433 -#: includes/class.cooked-settings.php:159 +#: includes/class.cooked-settings.php:253 msgid "Recipe Archive" msgstr "" @@ -926,7 +927,7 @@ msgid "Layout" msgstr "" #: includes/class.cooked-recipe-meta.php:433 -#: includes/class.cooked-recipe-meta.php:1434 +#: includes/class.cooked-recipe-meta.php:1459 msgid "Gallery" msgstr "" @@ -997,13 +998,13 @@ msgid "This description is used for SEO purposes and is optional. By default, Co msgstr "" #: includes/class.cooked-recipe-meta.php:574 -#: includes/class.cooked-settings.php:232 +#: includes/class.cooked-settings.php:326 msgid "Difficulty Level" msgstr "" #: includes/class.cooked-recipe-meta.php:583 -#: includes/class.cooked-recipe-meta.php:1296 -#: includes/class.cooked-settings.php:235 +#: includes/class.cooked-recipe-meta.php:1321 +#: includes/class.cooked-settings.php:329 #: includes/class.cooked-shortcodes.php:509 #: includes/class.cooked-shortcodes.php:732 msgid "Prep Time" @@ -1016,16 +1017,16 @@ msgid "minutes" msgstr "" #: includes/class.cooked-recipe-meta.php:588 -#: includes/class.cooked-recipe-meta.php:1297 -#: includes/class.cooked-settings.php:236 +#: includes/class.cooked-recipe-meta.php:1322 +#: includes/class.cooked-settings.php:330 #: includes/class.cooked-shortcodes.php:510 #: includes/class.cooked-shortcodes.php:741 msgid "Cook Time" msgstr "" #: includes/class.cooked-recipe-meta.php:593 -#: includes/class.cooked-recipe-meta.php:1298 -#: includes/class.cooked-settings.php:237 +#: includes/class.cooked-recipe-meta.php:1323 +#: includes/class.cooked-settings.php:331 #: includes/class.cooked-shortcodes.php:511 #: includes/class.cooked-shortcodes.php:752 #: includes/class.cooked-shortcodes.php:759 @@ -1040,17 +1041,17 @@ msgstr "" msgid "The notes are displayed in the recipe." msgstr "" -#: includes/class.cooked-admin-enqueues.php:178 +#: includes/class.cooked-admin-enqueues.php:181 #: includes/class.cooked-recipe-meta.php:626 msgid "Amount" msgstr "" -#: includes/class.cooked-admin-enqueues.php:179 +#: includes/class.cooked-admin-enqueues.php:182 #: includes/class.cooked-recipe-meta.php:627 msgid "Measurement" msgstr "" -#: includes/class.cooked-admin-enqueues.php:180 +#: includes/class.cooked-admin-enqueues.php:183 #: includes/class.cooked-recipe-meta.php:628 msgid "Item" msgstr "" @@ -1063,8 +1064,8 @@ msgstr "" #: includes/class.cooked-recipe-meta.php:699 #: includes/class.cooked-recipe-meta.php:855 -#: includes/class.cooked-recipe-meta.php:928 -#: includes/class.cooked-recipe-meta.php:1025 +#: includes/class.cooked-recipe-meta.php:939 +#: includes/class.cooked-recipe-meta.php:1050 msgid "Section Heading" msgstr "" @@ -1073,335 +1074,335 @@ msgid "Add Ingredient" msgstr "" #: includes/class.cooked-recipe-meta.php:795 -#: includes/class.cooked-recipe-meta.php:1001 +#: includes/class.cooked-recipe-meta.php:1019 msgid "Add Section Heading" msgstr "" -#: includes/class.cooked-recipe-meta.php:1000 +#: includes/class.cooked-recipe-meta.php:1018 msgid "Add Direction" msgstr "" -#: includes/class.cooked-recipe-meta.php:1060 +#: includes/class.cooked-recipe-meta.php:1085 msgid "Nutrition Information" msgstr "" -#: includes/class.cooked-recipe-meta.php:1098 +#: includes/class.cooked-recipe-meta.php:1123 #: includes/class.cooked-shortcodes.php:1123 msgid "Nutrition Facts" msgstr "" -#: includes/class.cooked-recipe-meta.php:1116 +#: includes/class.cooked-recipe-meta.php:1141 #: includes/class.cooked-shortcodes.php:1091 msgid "Amount per serving" msgstr "" -#: includes/class.cooked-recipe-meta.php:1126 +#: includes/class.cooked-recipe-meta.php:1151 #: includes/class.cooked-shortcodes.php:1101 msgid "% Daily Value *" msgstr "" -#: includes/class.cooked-recipe-meta.php:1145 +#: includes/class.cooked-recipe-meta.php:1170 #: includes/class.cooked-shortcodes.php:1033 msgid "Includes" msgstr "" -#: includes/class.cooked-recipe-meta.php:1177 +#: includes/class.cooked-recipe-meta.php:1202 #: includes/class.cooked-shortcodes.php:1127 msgid "The % Daily Value (DV) tells you how much a nutrient in a serving of food contributes to a daily diet. 2,000 calories a day is used for general nutrition advice." msgstr "" -#: includes/class.cooked-recipe-meta.php:1193 +#: includes/class.cooked-recipe-meta.php:1218 msgid "Recipe Gallery Type" msgstr "" -#: includes/class.cooked-recipe-meta.php:1206 +#: includes/class.cooked-recipe-meta.php:1231 msgid "Choose one..." msgstr "" #. translators: a title for the video section of the recipe editor, where users can paste a YouToub or Vimeo URL into the field below. -#: includes/class.cooked-recipe-meta.php:1220 +#: includes/class.cooked-recipe-meta.php:1245 #, php-format msgid "%1$s or %2$s Video" msgstr "" #. translators: a message describing how to display a video from YouTube or Vimeo. -#: includes/class.cooked-recipe-meta.php:1224 +#: includes/class.cooked-recipe-meta.php:1249 #, php-format msgid "If you would like to display a video as the first item in your gallery, you can paste a valid %1$s or %2$s URL below." msgstr "" -#: includes/class.cooked-recipe-meta.php:1229 +#: includes/class.cooked-recipe-meta.php:1254 msgid "Gallery Items" msgstr "" -#: includes/class.cooked-recipe-meta.php:1260 +#: includes/class.cooked-recipe-meta.php:1285 msgid "Recipe Information" msgstr "" -#: includes/class.cooked-recipe-meta.php:1261 +#: includes/class.cooked-recipe-meta.php:1286 msgid "This will display the recipe author, cooking times, etc." msgstr "" #. translators: "include and exclude" section title #. translators: "left and right" section title -#: includes/class.cooked-recipe-meta.php:1270 -#: includes/class.cooked-recipe-meta.php:1280 +#: includes/class.cooked-recipe-meta.php:1295 +#: includes/class.cooked-recipe-meta.php:1305 #, php-format msgid "\"%1$s\" and \"%2$s\"" msgstr "" -#: includes/class.cooked-recipe-meta.php:1272 +#: includes/class.cooked-recipe-meta.php:1297 msgid "This will allow you to include or exclude content from the shortcode output." msgstr "" -#: includes/class.cooked-recipe-meta.php:1281 +#: includes/class.cooked-recipe-meta.php:1306 msgid "Used like \"include\", but will position the content to the left or right." msgstr "" #: includes/class.cooked-recipe-meta.php:361 -#: includes/class.cooked-recipe-meta.php:1291 -#: includes/class.cooked-recipe-meta.php:1337 -#: includes/class.cooked-recipe-meta.php:1368 +#: includes/class.cooked-recipe-meta.php:1316 +#: includes/class.cooked-recipe-meta.php:1362 #: includes/class.cooked-recipe-meta.php:1393 -#: includes/class.cooked-recipe-meta.php:1417 -#: includes/class.cooked-recipe-meta.php:1477 -#: includes/class.cooked-recipe-meta.php:1522 -#: includes/class.cooked-recipe-meta.php:1552 -#: includes/class.cooked-recipe-meta.php:1597 -#: includes/class.cooked-recipe-meta.php:1720 +#: includes/class.cooked-recipe-meta.php:1418 +#: includes/class.cooked-recipe-meta.php:1442 +#: includes/class.cooked-recipe-meta.php:1502 +#: includes/class.cooked-recipe-meta.php:1547 +#: includes/class.cooked-recipe-meta.php:1577 +#: includes/class.cooked-recipe-meta.php:1622 +#: includes/class.cooked-recipe-meta.php:1745 msgid "Available Variables" msgstr "" -#: includes/class.cooked-recipe-meta.php:1295 -#: includes/class.cooked-settings.php:230 +#: includes/class.cooked-recipe-meta.php:1320 +#: includes/class.cooked-settings.php:324 #: includes/class.cooked-shortcodes.php:506 #: includes/class.cooked-shortcodes.php:684 msgid "Author" msgstr "" -#: includes/class.cooked-recipe-meta.php:1299 +#: includes/class.cooked-recipe-meta.php:1324 #: includes/class.cooked-shortcodes.php:507 #: includes/class.cooked-shortcodes.php:695 msgid "Difficulty" msgstr "" -#: includes/class.cooked-recipe-meta.php:1300 +#: includes/class.cooked-recipe-meta.php:1325 msgid "Servings Switcher" msgstr "" -#: includes/class.cooked-recipe-meta.php:1301 -#: includes/class.cooked-settings.php:231 +#: includes/class.cooked-recipe-meta.php:1326 +#: includes/class.cooked-settings.php:325 #: includes/class.cooked-shortcodes.php:779 #: includes/class.cooked-shortcodes.php:782 #: includes/class.cooked-taxonomies.php:39 msgid "Category" msgstr "" -#: includes/class.cooked-recipe-meta.php:1302 +#: includes/class.cooked-recipe-meta.php:1327 msgid "Print Mode" msgstr "" -#: includes/class.cooked-recipe-meta.php:1303 +#: includes/class.cooked-recipe-meta.php:1328 msgid "Full-Screen Mode" msgstr "" -#: includes/class.cooked-recipe-meta.php:1323 +#: includes/class.cooked-recipe-meta.php:1348 msgid "This will display the list of ingredients, added via the \"Ingredients\" tab." msgstr "" -#: includes/class.cooked-recipe-meta.php:1329 +#: includes/class.cooked-recipe-meta.php:1354 msgid "This will allow you to hide or show the checkboxes:" msgstr "" -#: includes/class.cooked-recipe-meta.php:1339 +#: includes/class.cooked-recipe-meta.php:1364 msgid "Show checkboxes" msgstr "" -#: includes/class.cooked-recipe-meta.php:1340 +#: includes/class.cooked-recipe-meta.php:1365 msgid "Hide checkboxes" msgstr "" -#: includes/class.cooked-recipe-meta.php:1354 +#: includes/class.cooked-recipe-meta.php:1379 msgid "This will display the list of directions, added via the \"Directions\" tab." msgstr "" -#: includes/class.cooked-recipe-meta.php:1360 +#: includes/class.cooked-recipe-meta.php:1385 msgid "This will allow you to hide or show the numbers:" msgstr "" -#: includes/class.cooked-recipe-meta.php:1370 +#: includes/class.cooked-recipe-meta.php:1395 msgid "Show numbers" msgstr "" -#: includes/class.cooked-recipe-meta.php:1371 +#: includes/class.cooked-recipe-meta.php:1396 msgid "Hide numbers" msgstr "" -#: includes/class.cooked-recipe-meta.php:1384 +#: includes/class.cooked-recipe-meta.php:1409 msgid "Featured Image" msgstr "" -#: includes/class.cooked-recipe-meta.php:1385 +#: includes/class.cooked-recipe-meta.php:1410 msgid "This will display the featured image, if one is set." msgstr "" -#: includes/class.cooked-recipe-meta.php:1395 -#: includes/class.cooked-recipe-meta.php:1419 -#: includes/class.cooked-recipe-meta.php:1524 +#: includes/class.cooked-recipe-meta.php:1420 +#: includes/class.cooked-recipe-meta.php:1444 +#: includes/class.cooked-recipe-meta.php:1549 msgid "None" msgstr "" -#: includes/class.cooked-recipe-meta.php:1408 +#: includes/class.cooked-recipe-meta.php:1433 msgid "Nutrition Label" msgstr "" -#: includes/class.cooked-recipe-meta.php:1409 +#: includes/class.cooked-recipe-meta.php:1434 msgid "This will display the Nutrition Facts label, if data is present." msgstr "" -#: includes/class.cooked-recipe-meta.php:1435 +#: includes/class.cooked-recipe-meta.php:1460 msgid "This will display the gallery, if one is set or created from the \"Gallery\" tab." msgstr "" -#: includes/class.cooked-recipe-meta.php:1443 +#: includes/class.cooked-recipe-meta.php:1468 msgid "Set the width of the gallery." msgstr "" -#: includes/class.cooked-recipe-meta.php:1450 +#: includes/class.cooked-recipe-meta.php:1475 msgid "Set the image size ratio." msgstr "" -#: includes/class.cooked-recipe-meta.php:1460 +#: includes/class.cooked-recipe-meta.php:1485 msgid "Set the navigation style." msgstr "" -#: includes/class.cooked-recipe-meta.php:1467 +#: includes/class.cooked-recipe-meta.php:1492 msgid "Enable or disable \"Full-Screen\" mode." msgstr "" #. translators: related to the width of slideshows: "80% or 300px" section title -#: includes/class.cooked-recipe-meta.php:1482 +#: includes/class.cooked-recipe-meta.php:1507 #, php-format msgid "ex: \"%1$s\" or \"%2$s\"" msgstr "" #. translators: related to the image ratio for slideshows: "ex: 800/600" section title -#: includes/class.cooked-recipe-meta.php:1487 +#: includes/class.cooked-recipe-meta.php:1512 #, php-format msgid "ex: \"%s\"" msgstr "" #. translators: related to the navigation style for slideshows: "dots, thumbs or false" section title -#: includes/class.cooked-recipe-meta.php:1492 +#: includes/class.cooked-recipe-meta.php:1517 #, php-format msgid "\"%1$s\", \"%2$s\", or \"%3$s\"" msgstr "" #. translators: related to allowing full screen for slideshows: "true or false" section title -#: includes/class.cooked-recipe-meta.php:1497 +#: includes/class.cooked-recipe-meta.php:1522 #, php-format msgid "\"%1$s\" or \"%2$s\"" msgstr "" -#: includes/class.cooked-recipe-meta.php:1514 +#: includes/class.cooked-recipe-meta.php:1539 msgid "This will display the excerpt, if one is available from the \"Layout & Content\" tab." msgstr "" -#: includes/class.cooked-recipe-meta.php:1538 +#: includes/class.cooked-recipe-meta.php:1563 msgid "This will display the notes, if one is available from the \"Layout & Content\" tab." msgstr "" -#: includes/class.cooked-recipe-meta.php:1544 +#: includes/class.cooked-recipe-meta.php:1569 msgid "This will allow you to hide or show the header for the notes section:" msgstr "" -#: includes/class.cooked-recipe-meta.php:1554 +#: includes/class.cooked-recipe-meta.php:1579 msgid "Show header" msgstr "" -#: includes/class.cooked-recipe-meta.php:1555 +#: includes/class.cooked-recipe-meta.php:1580 msgid "Hide header" msgstr "" -#: includes/class.cooked-recipe-meta.php:1569 +#: includes/class.cooked-recipe-meta.php:1594 msgid "This will display a special link to start a cooking timer." msgstr "" #. translators: "seconds, minutes and hours" section title -#: includes/class.cooked-recipe-meta.php:1578 +#: includes/class.cooked-recipe-meta.php:1603 #, php-format msgid "\"%1$s\", \"%2$s\" and \"%3$s\"" msgstr "" -#: includes/class.cooked-recipe-meta.php:1580 +#: includes/class.cooked-recipe-meta.php:1605 msgid "Use just one or a combination of all three to set the timer length" msgstr "" -#: includes/class.cooked-recipe-meta.php:1587 +#: includes/class.cooked-recipe-meta.php:1612 msgid "Add a short description for this timer, if applicable." msgstr "" -#: includes/class.cooked-recipe-meta.php:1599 +#: includes/class.cooked-recipe-meta.php:1624 msgid "Time in seconds" msgstr "" -#: includes/class.cooked-recipe-meta.php:1600 +#: includes/class.cooked-recipe-meta.php:1625 msgid "Time in minutes" msgstr "" -#: includes/class.cooked-recipe-meta.php:1601 +#: includes/class.cooked-recipe-meta.php:1626 msgid "Time in hours" msgstr "" -#: includes/class.cooked-recipe-meta.php:1602 +#: includes/class.cooked-recipe-meta.php:1627 msgid "Timer Description" msgstr "" #. translators: stating the recipe author with a "By" in front of it. (ex: "By John Smith") #. translators: referring to the author (ex: By John Smith) -#: includes/class.cooked-recipes.php:268 -#: includes/class.cooked-recipes.php:322 +#: includes/class.cooked-recipes.php:298 +#: includes/class.cooked-recipes.php:352 #: templates/front/recipe-single.php:47 #, php-format msgid "By %s" msgstr "" #. translators: For showing "All" of a taxonomy (ex: "All Burgers") -#: includes/class.cooked-recipes.php:493 +#: includes/class.cooked-recipes.php:445 #, php-format msgid "All %s" msgstr "" -#: includes/class.cooked-recipes.php:877 +#: includes/class.cooked-recipes.php:829 msgid "Beginner" msgstr "" -#: includes/class.cooked-recipes.php:878 +#: includes/class.cooked-recipes.php:830 msgid "Intermediate" msgstr "" -#: includes/class.cooked-recipes.php:879 +#: includes/class.cooked-recipes.php:831 msgid "Advanced" msgstr "" -#: includes/class.cooked-recipes.php:905 +#: includes/class.cooked-recipes.php:857 msgid "Cooked Gallery" msgstr "" -#: includes/class.cooked-recipes.php:909 +#: includes/class.cooked-recipes.php:861 msgid "Envira Gallery" msgstr "" -#: includes/class.cooked-recipes.php:913 +#: includes/class.cooked-recipes.php:865 msgid "Soliloquy Slider" msgstr "" -#: includes/class.cooked-recipes.php:917 +#: includes/class.cooked-recipes.php:869 msgid "Slider Revolution" msgstr "" #. translators: singular and plural quarter "serving" size -#: includes/class.cooked-recipes.php:1018 +#: includes/class.cooked-recipes.php:970 #, php-format msgid "Quarter (%s Serving)" msgid_plural "Quarter (%s Servings)" @@ -1409,7 +1410,7 @@ msgstr[0] "" msgstr[1] "" #. translators: singular and plural quarter "serving" size -#: includes/class.cooked-recipes.php:1021 +#: includes/class.cooked-recipes.php:973 #, php-format msgid "Half (%s Serving)" msgid_plural "Half (%s Servings)" @@ -1417,7 +1418,7 @@ msgstr[0] "" msgstr[1] "" #. translators: singular and plural quarter "serving" size -#: includes/class.cooked-recipes.php:1024 +#: includes/class.cooked-recipes.php:976 #, php-format msgid "Default (%s Serving)" msgid_plural "Default (%s Servings)" @@ -1425,25 +1426,25 @@ msgstr[0] "" msgstr[1] "" #. translators: singular and plural quarter "serving" size -#: includes/class.cooked-recipes.php:1027 +#: includes/class.cooked-recipes.php:979 #, php-format msgid "Double (%s Servings)" msgstr "" #. translators: singular and plural quarter "serving" size -#: includes/class.cooked-recipes.php:1030 +#: includes/class.cooked-recipes.php:982 #, php-format msgid "Triple (%s Servings)" msgstr "" -#: includes/class.cooked-recipes.php:1044 +#: includes/class.cooked-recipes.php:996 #: includes/class.cooked-shortcodes.php:508 msgid "Yields" msgstr "" #. translators: singular and plural "serving" sizes -#: includes/class.cooked-recipes.php:1048 -#: includes/class.cooked-recipes.php:1059 +#: includes/class.cooked-recipes.php:1000 +#: includes/class.cooked-recipes.php:1011 #, php-format msgid "%s Serving" msgid_plural "%s Servings" @@ -1451,51 +1452,51 @@ msgstr[0] "" msgstr[1] "" #. translators: singular and plural "steps" -#: includes/class.cooked-recipes.php:1249 +#: includes/class.cooked-recipes.php:1202 #: includes/class.cooked-seo.php:83 #, php-format msgid "Step %d" msgstr "" -#: includes/class.cooked-recipes.php:1309 +#: includes/class.cooked-recipes.php:1262 msgid "Browse" msgstr "" -#: includes/class.cooked-recipes.php:1327 -#: includes/class.cooked-settings.php:157 +#: includes/class.cooked-recipes.php:1280 +#: includes/class.cooked-settings.php:251 msgid "No categories" msgstr "" -#: includes/class.cooked-recipes.php:1330 -#: includes/class.cooked-settings.php:206 +#: includes/class.cooked-recipes.php:1283 +#: includes/class.cooked-settings.php:300 #: includes/class.cooked-taxonomies.php:38 #: includes/class.cooked-taxonomies.php:48 msgid "Categories" msgstr "" -#: includes/class.cooked-recipes.php:1332 +#: includes/class.cooked-recipes.php:1285 #: includes/class.cooked-taxonomies.php:41 #: includes/widgets/recipe-categories.php:63 msgid "All Categories" msgstr "" -#: includes/class.cooked-recipes.php:1403 +#: includes/class.cooked-recipes.php:1356 msgid "Find a recipe..." msgstr "" -#: includes/class.cooked-recipes.php:1418 +#: includes/class.cooked-recipes.php:1371 msgid "Newest first" msgstr "" -#: includes/class.cooked-recipes.php:1422 +#: includes/class.cooked-recipes.php:1375 msgid "Oldest first" msgstr "" -#: includes/class.cooked-recipes.php:1426 +#: includes/class.cooked-recipes.php:1379 msgid "Alphabetical (A-Z)" msgstr "" -#: includes/class.cooked-recipes.php:1430 +#: includes/class.cooked-recipes.php:1383 msgid "Alphabetical (Z-A)" msgstr "" @@ -1503,309 +1504,301 @@ msgstr "" msgid "Recipe Editor" msgstr "" -#: includes/class.cooked-settings.php:98 +#: includes/class.cooked-settings.php:110 msgid "Cooked settings has been updated!" msgstr "" -#: includes/class.cooked-settings.php:157 +#: includes/class.cooked-settings.php:251 msgid "No default" msgstr "" -#: includes/class.cooked-settings.php:179 +#: includes/class.cooked-settings.php:273 msgid "General" msgstr "" -#: includes/class.cooked-settings.php:119 -#: includes/class.cooked-settings.php:183 +#: includes/class.cooked-settings.php:131 +#: includes/class.cooked-settings.php:277 msgid "Browse/Search Recipes Page" msgstr "" #. translators: a description on how to add the [cooked-browse] shortcode to a page -#: includes/class.cooked-settings.php:185 +#: includes/class.cooked-settings.php:279 #, php-format msgid "Create a page with the %s shortcode on it, then choose it from this dropdown." msgstr "" -#: includes/class.cooked-settings.php:191 +#: includes/class.cooked-settings.php:285 msgid "Recipes Per Page" msgstr "" #. translators: a description on how to choose the default number of recipes per page. -#: includes/class.cooked-settings.php:193 +#: includes/class.cooked-settings.php:287 #, php-format msgid "Choose the default (set via the %s panel) or choose a different number here." msgstr "" #. translators: a description on how to choose the default number of recipes per page. -#: includes/class.cooked-settings.php:193 +#: includes/class.cooked-settings.php:287 msgid "Settings > Reading" msgstr "" -#: includes/class.cooked-settings.php:199 +#: includes/class.cooked-settings.php:293 msgid "Recipe Taxonomies" msgstr "" -#: includes/class.cooked-settings.php:200 +#: includes/class.cooked-settings.php:294 msgid "Choose which taxonomies you want to enable for your recipes." msgstr "" -#: includes/class.cooked-settings.php:211 +#: includes/class.cooked-settings.php:305 msgid "Global Recipe Toggles" msgstr "" -#: includes/class.cooked-settings.php:212 +#: includes/class.cooked-settings.php:306 msgid "You can quickly hide or show different recipe elements (site-wide) with these checkboxes." msgstr "" -#: includes/class.cooked-settings.php:256 +#: includes/class.cooked-settings.php:349 msgid "Carbs Format" msgstr "" -#: includes/class.cooked-settings.php:257 +#: includes/class.cooked-settings.php:350 msgid "You can display carbs as \"Total\" or \"Net\"." msgstr "" -#: includes/class.cooked-settings.php:263 +#: includes/class.cooked-settings.php:356 msgid "Total Carbs" msgstr "" -#: includes/class.cooked-settings.php:264 +#: includes/class.cooked-settings.php:357 msgid "Net Carbs" msgstr "" -#: includes/class.cooked-settings.php:269 +#: includes/class.cooked-settings.php:362 msgid "Author Name Format" msgstr "" -#: includes/class.cooked-settings.php:270 +#: includes/class.cooked-settings.php:363 msgid "You can show the full author's name or just a part of it." msgstr "" -#: includes/class.cooked-settings.php:276 +#: includes/class.cooked-settings.php:369 msgid "Full name" msgstr "" -#: includes/class.cooked-settings.php:277 +#: includes/class.cooked-settings.php:370 msgid "Full first name w/last name initial" msgstr "" -#: includes/class.cooked-settings.php:278 +#: includes/class.cooked-settings.php:371 msgid "First name initial w/full last name" msgstr "" -#: includes/class.cooked-settings.php:279 +#: includes/class.cooked-settings.php:372 msgid "First name only" msgstr "" -#: includes/class.cooked-settings.php:284 +#: includes/class.cooked-settings.php:377 msgid "Author Links" msgstr "" -#: includes/class.cooked-settings.php:285 +#: includes/class.cooked-settings.php:378 msgid "If you do not want the author names to link to the author recipe listings, you can disable them here." msgstr "" -#: includes/class.cooked-settings.php:292 +#: includes/class.cooked-settings.php:385 msgid "Disable Author Links" msgstr "" -#: includes/class.cooked-settings.php:297 +#: includes/class.cooked-settings.php:390 msgid "Default Category" msgstr "" #. translators: a description on how to set the default recipe category for the [cooked-browse] shortcode. -#: includes/class.cooked-settings.php:299 +#: includes/class.cooked-settings.php:392 #, php-format msgid "Optionally set the default recipe category for your %s shortcode display." msgstr "" -#: includes/class.cooked-settings.php:305 +#: includes/class.cooked-settings.php:398 msgid "Default Sort Order" msgstr "" #. translators: a description on how to set the default sort order for the [cooked-browse] shortcode. -#: includes/class.cooked-settings.php:307 +#: includes/class.cooked-settings.php:400 #, php-format msgid "Set the default sort order for your %s shortcode display." msgstr "" -#: includes/class.cooked-settings.php:313 +#: includes/class.cooked-settings.php:406 msgid "Newest First" msgstr "" -#: includes/class.cooked-settings.php:314 +#: includes/class.cooked-settings.php:407 msgid "Oldest First" msgstr "" -#: includes/class.cooked-settings.php:315 +#: includes/class.cooked-settings.php:408 msgid "Alphabetical" msgstr "" -#: includes/class.cooked-settings.php:316 +#: includes/class.cooked-settings.php:409 msgid "Alphabetical (reversed)" msgstr "" -#: includes/class.cooked-settings.php:339 +#: includes/class.cooked-settings.php:432 msgid "WP Editor Roles" msgstr "" -#: includes/class.cooked-settings.php:340 +#: includes/class.cooked-settings.php:433 msgid "Choose which user roles can use the WP Editor for the Excerpt, Directions & Notes fields." msgstr "" -#: includes/class.cooked-settings.php:346 +#: includes/class.cooked-settings.php:439 msgid "Advanced Settings" msgstr "" #. translators: an option to only show recipes with the [cooked-recipe] shortcode. -#: includes/class.cooked-settings.php:356 +#: includes/class.cooked-settings.php:449 msgid "Disable Public Recipes" msgstr "" #. translators: an option to only show recipes with the [cooked-recipe] shortcode. -#: includes/class.cooked-settings.php:356 +#: includes/class.cooked-settings.php:449 #, php-format msgid "Only show recipes using the %s shortcode." msgstr "" #. translators: an option to disable "meta" tags. -#: includes/class.cooked-settings.php:358 +#: includes/class.cooked-settings.php:451 #, php-format msgid "Disable %s Tags" msgstr "" #. translators: an option to disable "meta" tags. -#: includes/class.cooked-settings.php:358 +#: includes/class.cooked-settings.php:451 msgid "Prevents duplicates when tags already exist." msgstr "" -#: includes/class.cooked-settings.php:359 +#: includes/class.cooked-settings.php:452 msgid "Disable \"Servings Switcher\"" msgstr "" -#: includes/class.cooked-settings.php:359 +#: includes/class.cooked-settings.php:452 msgid "Removes the servings dropdown on recipes." msgstr "" -#: includes/class.cooked-settings.php:361 +#: includes/class.cooked-settings.php:454 msgid "Disable Recipe Schema Output" msgstr "" -#: includes/class.cooked-settings.php:361 +#: includes/class.cooked-settings.php:454 msgid "You should only do this if you're using something else to output schema information." msgstr "" -#: includes/class.cooked-settings.php:362 +#: includes/class.cooked-settings.php:455 msgid "Disable Recipe Archive Page" msgstr "" -#: includes/class.cooked-settings.php:373 +#: includes/class.cooked-settings.php:466 msgid "Design" msgstr "" -#: includes/class.cooked-settings.php:377 +#: includes/class.cooked-settings.php:470 msgid "Dark Mode" msgstr "" -#: includes/class.cooked-settings.php:378 -msgid "If your site has a dark background, you should enable \"Dark Mode\" so that Cooked can match this style." -msgstr "" - -#: includes/class.cooked-settings.php:384 -msgid "Enable \"Dark Mode\"" -msgstr "" - -#: includes/class.cooked-settings.php:389 +#: includes/class.cooked-settings.php:487 msgid "Author Images" msgstr "" -#: includes/class.cooked-settings.php:390 +#: includes/class.cooked-settings.php:488 msgid "If you do not want to display the author images (avatars), you can disable them here." msgstr "" -#: includes/class.cooked-settings.php:397 +#: includes/class.cooked-settings.php:495 msgid "Hide Author Images" msgstr "" -#: includes/class.cooked-settings.php:402 +#: includes/class.cooked-settings.php:506 msgid "Main Color" msgstr "" -#: includes/class.cooked-settings.php:403 +#: includes/class.cooked-settings.php:507 msgid "Used on buttons, cooking timer, etc." msgstr "" -#: includes/class.cooked-settings.php:409 +#: includes/class.cooked-settings.php:513 msgid "Main Color (on hover)" msgstr "" -#: includes/class.cooked-settings.php:410 +#: includes/class.cooked-settings.php:514 msgid "Used when hovering over buttons." msgstr "" -#: includes/class.cooked-settings.php:416 +#: includes/class.cooked-settings.php:520 msgid "First Responsive Breakpoint" msgstr "" -#: includes/class.cooked-settings.php:417 +#: includes/class.cooked-settings.php:521 msgid "Set the first responsive breakpoint. Best for large tablets." msgstr "" -#: includes/class.cooked-settings.php:423 +#: includes/class.cooked-settings.php:527 msgid "Second Responsive Breakpoint" msgstr "" -#: includes/class.cooked-settings.php:424 +#: includes/class.cooked-settings.php:528 msgid "Set the second responsive breakpoint. Best for small tablets." msgstr "" -#: includes/class.cooked-settings.php:430 +#: includes/class.cooked-settings.php:534 msgid "Third Responsive Breakpoint" msgstr "" -#: includes/class.cooked-settings.php:431 +#: includes/class.cooked-settings.php:535 msgid "Set the third responsive breakpoint. Best for phones and other small devices." msgstr "" -#: includes/class.cooked-settings.php:439 +#: includes/class.cooked-settings.php:543 msgid "Permalinks" msgstr "" -#: includes/class.cooked-settings.php:443 +#: includes/class.cooked-settings.php:547 msgid "Recipe Permalink" msgstr "" -#: includes/class.cooked-settings.php:446 +#: includes/class.cooked-settings.php:550 msgid "recipe-name" msgstr "" -#: includes/class.cooked-settings.php:450 +#: includes/class.cooked-settings.php:554 msgid "Recipe Author Permalink" msgstr "" -#: includes/class.cooked-settings.php:453 +#: includes/class.cooked-settings.php:557 msgid "author-name" msgstr "" -#: includes/class.cooked-settings.php:457 +#: includes/class.cooked-settings.php:561 msgid "Recipe Category Permalink" msgstr "" -#: includes/class.cooked-settings.php:460 +#: includes/class.cooked-settings.php:564 msgid "recipe-category-name" msgstr "" #. translators: posts_per_page default -#: includes/class.cooked-settings.php:471 +#: includes/class.cooked-settings.php:575 #, php-format msgid "WordPress Default %s" msgstr "" -#: includes/class.cooked-settings.php:476 +#: includes/class.cooked-settings.php:580 msgid "Show All (no pagination)" msgstr "" -#: includes/class.cooked-settings.php:620 +#: includes/class.cooked-settings.php:724 msgid "Begin Migration" msgstr "" @@ -2067,6 +2060,7 @@ msgstr "" msgid "Update Settings" msgstr "" +#: includes/class.cooked-recipe-meta.php:118 #: templates/admin/settings.php:10 #: templates/admin/welcome.php:33 msgid "Cooked Settings" @@ -2116,8 +2110,8 @@ msgstr "" #: includes/class.cooked-recipe-meta.php:703 #: includes/class.cooked-recipe-meta.php:859 -#: includes/class.cooked-recipe-meta.php:932 -#: includes/class.cooked-recipe-meta.php:1029 +#: includes/class.cooked-recipe-meta.php:943 +#: includes/class.cooked-recipe-meta.php:1054 msgid "Heading Element:" msgstr "" @@ -2134,40 +2128,40 @@ msgstr "" msgid "deciliters" msgstr "" -#: includes/class.cooked-settings.php:321 +#: includes/class.cooked-settings.php:414 msgid "Section Heading Default HTML Tag" msgstr "" #. translators: a description on how to set the default sort order for the [cooked-browse] shortcode. -#: includes/class.cooked-settings.php:323 +#: includes/class.cooked-settings.php:416 msgid "Set the default HTML tag for your section headings." msgstr "" -#: includes/class.cooked-settings.php:329 +#: includes/class.cooked-settings.php:422 msgid "div" msgstr "" -#: includes/class.cooked-settings.php:330 +#: includes/class.cooked-settings.php:423 msgid "h2" msgstr "" -#: includes/class.cooked-settings.php:331 +#: includes/class.cooked-settings.php:424 msgid "h3" msgstr "" -#: includes/class.cooked-settings.php:332 +#: includes/class.cooked-settings.php:425 msgid "h4" msgstr "" -#: includes/class.cooked-settings.php:333 +#: includes/class.cooked-settings.php:426 msgid "h5" msgstr "" -#: includes/class.cooked-settings.php:334 +#: includes/class.cooked-settings.php:427 msgid "h6" msgstr "" -#: includes/class.cooked-recipes.php:1405 +#: includes/class.cooked-recipes.php:1358 msgid "Search" msgstr "" @@ -2175,11 +2169,11 @@ msgstr "" msgid "Fullscreen" msgstr "" -#: includes/class.cooked-settings.php:156 +#: includes/class.cooked-settings.php:250 msgid "Choose a page..." msgstr "" -#: includes/class.cooked-settings.php:156 +#: includes/class.cooked-settings.php:250 msgid "No pages" msgstr "" @@ -2204,21 +2198,21 @@ msgstr "" msgid "Error importing WP Recipe Maker recipe." msgstr "" -#: includes/class.cooked-settings.php:117 +#: includes/class.cooked-settings.php:129 msgid "Cooked Plugin Setup" msgstr "" -#: includes/class.cooked-settings.php:118 +#: includes/class.cooked-settings.php:130 #, php-format msgid "To display your recipes properly, please set up your %s." msgstr "" #. translators: a description on how to add the [cooked-browse] shortcode to a page -#: includes/class.cooked-settings.php:185 +#: includes/class.cooked-settings.php:279 msgid "Note: This setting is required for the plugin to function properly." msgstr "" -#: includes/class.cooked-settings.php:285 +#: includes/class.cooked-settings.php:378 msgid "Note: Author links require the Browse/Search Recipes Page to be set up correctly to function properly." msgstr "" @@ -2234,32 +2228,32 @@ msgstr "" msgid "ex. Apple Sauce, Tofu, etc." msgstr "" -#: includes/class.cooked-recipes.php:1191 -#: includes/class.cooked-recipes.php:1205 +#: includes/class.cooked-recipes.php:1143 +#: includes/class.cooked-recipes.php:1157 msgid "or" msgstr "" -#: includes/class.cooked-recipe-meta.php:1615 +#: includes/class.cooked-recipe-meta.php:1640 msgid "Next & Previous Recipe Navigation" msgstr "" -#: includes/class.cooked-recipe-meta.php:1616 +#: includes/class.cooked-recipe-meta.php:1641 msgid "This will display navigation links to the next and previous recipes." msgstr "" -#: includes/class.cooked-recipe-meta.php:1620 +#: includes/class.cooked-recipe-meta.php:1645 msgid "This shortcode automatically displays the previous and next recipe links based on the current recipe page. No parameters are required." msgstr "" -#: includes/class.cooked-recipe-meta.php:1625 +#: includes/class.cooked-recipe-meta.php:1650 msgid "Usage" msgstr "" -#: includes/class.cooked-recipe-meta.php:1627 +#: includes/class.cooked-recipe-meta.php:1652 msgid "Simply add the shortcode to your recipe template or content area. The navigation will automatically show the previous and next recipes based on recipe ID order." msgstr "" -#: includes/class.cooked-recipe-meta.php:1640 +#: includes/class.cooked-recipe-meta.php:1665 #: includes/class.cooked-related-recipes.php:34 msgid "Related Recipes" msgstr "" @@ -2286,41 +2280,41 @@ msgstr "" msgid "Create translations of your browse page in %s for full multilingual support." msgstr "" -#: includes/class.cooked-recipe-meta.php:1649 +#: includes/class.cooked-recipe-meta.php:1674 msgid "Specify a recipe ID. If not provided, uses the current recipe." msgstr "" -#: includes/class.cooked-recipe-meta.php:1656 +#: includes/class.cooked-recipe-meta.php:1681 msgid "Set the heading text for the related recipes section." msgstr "" -#: includes/class.cooked-recipe-meta.php:1683 +#: includes/class.cooked-recipe-meta.php:1708 msgid "Hide recipe card images." msgstr "" -#: includes/class.cooked-recipe-meta.php:1690 +#: includes/class.cooked-recipe-meta.php:1715 msgid "Hide recipe card excerpts." msgstr "" -#: includes/class.cooked-recipe-meta.php:1700 +#: includes/class.cooked-recipe-meta.php:1725 msgid "Hide recipe card authors." msgstr "" #: includes/class.cooked-recipe-meta.php:363 -#: includes/class.cooked-recipe-meta.php:1722 +#: includes/class.cooked-recipe-meta.php:1747 msgid "Recipe ID" msgstr "" -#: includes/class.cooked-admin-enqueues.php:174 -#: includes/class.cooked-recipe-meta.php:1723 +#: includes/class.cooked-admin-enqueues.php:177 +#: includes/class.cooked-recipe-meta.php:1748 msgid "Section heading" msgstr "" -#: includes/class.cooked-recipe-meta.php:1724 +#: includes/class.cooked-recipe-meta.php:1749 msgid "Number of recipes" msgstr "" -#: includes/class.cooked-recipe-meta.php:1725 +#: includes/class.cooked-recipe-meta.php:1750 msgid "Grid columns" msgstr "" @@ -2328,15 +2322,15 @@ msgstr "" #: includes/class.cooked-recipe-meta.php:367 #: includes/class.cooked-recipe-meta.php:368 #: includes/class.cooked-recipe-meta.php:369 -#: includes/class.cooked-recipe-meta.php:1726 -#: includes/class.cooked-recipe-meta.php:1727 -#: includes/class.cooked-recipe-meta.php:1728 -#: includes/class.cooked-recipe-meta.php:1729 +#: includes/class.cooked-recipe-meta.php:1751 +#: includes/class.cooked-recipe-meta.php:1752 +#: includes/class.cooked-recipe-meta.php:1753 +#: includes/class.cooked-recipe-meta.php:1754 msgid "true/false" msgstr "" #: includes/class.cooked-recipe-meta.php:371 -#: includes/class.cooked-recipe-meta.php:1731 +#: includes/class.cooked-recipe-meta.php:1756 msgid "Example" msgstr "" @@ -2366,27 +2360,27 @@ msgstr "" msgid "Try adjusting the matching criteria or ensure you have other published recipes with shared categories, tags, or ingredients." msgstr "" -#: includes/class.cooked-recipe-meta.php:1641 +#: includes/class.cooked-recipe-meta.php:1666 msgid "Displays a grid of related recipes based on shared terms in any of the recipe taxonomies (categories, cuisines, cooking methods, tags, diets), shown in random order. No cache or pre-calculation." msgstr "" -#: includes/class.cooked-recipe-meta.php:1666 +#: includes/class.cooked-recipe-meta.php:1691 msgid "Number of recipes to display (default: 4)." msgstr "" -#: includes/class.cooked-recipe-meta.php:1673 +#: includes/class.cooked-recipe-meta.php:1698 msgid "Number of columns in the grid (default: 2)." msgstr "" -#: includes/class.cooked-recipe-meta.php:1707 +#: includes/class.cooked-recipe-meta.php:1732 msgid "Toggle which taxonomies are used: match_categories, match_cuisines, match_cooking_methods, match_tags, match_diets (default: true)." msgstr "" -#: includes/class.cooked-recipe-meta.php:1714 +#: includes/class.cooked-recipe-meta.php:1739 msgid "Matching options:" msgstr "" -#: includes/class.cooked-recipe-meta.php:1715 +#: includes/class.cooked-recipe-meta.php:1740 msgid "Set to false to exclude a taxonomy from related recipes, e.g. match_cuisines=\"false\" to ignore cuisines." msgstr "" @@ -2448,69 +2442,69 @@ msgstr "" msgid "Tool method %s does not exist." msgstr "" -#: includes/class.cooked-admin-enqueues.php:151 +#: includes/class.cooked-admin-enqueues.php:154 msgid "Are you sure you want to import recipes from this CSV file?" msgstr "" -#: includes/class.cooked-admin-enqueues.php:152 +#: includes/class.cooked-admin-enqueues.php:155 msgid "Please select a CSV file." msgstr "" -#: includes/class.cooked-admin-enqueues.php:153 +#: includes/class.cooked-admin-enqueues.php:156 msgid "Please select a valid CSV file." msgstr "" -#: includes/class.cooked-admin-enqueues.php:154 +#: includes/class.cooked-admin-enqueues.php:157 msgid "Uploading..." msgstr "" -#: includes/class.cooked-admin-enqueues.php:155 +#: includes/class.cooked-admin-enqueues.php:158 msgid "Processing..." msgstr "" -#: includes/class.cooked-admin-enqueues.php:156 +#: includes/class.cooked-admin-enqueues.php:159 msgid "recipes imported" msgstr "" -#: includes/class.cooked-admin-enqueues.php:157 +#: includes/class.cooked-admin-enqueues.php:160 msgid "Errors:" msgstr "" -#: includes/class.cooked-admin-enqueues.php:158 +#: includes/class.cooked-admin-enqueues.php:161 msgid "Import failed." msgstr "" -#: includes/class.cooked-admin-enqueues.php:159 +#: includes/class.cooked-admin-enqueues.php:162 msgid "Failed to process CSV file." msgstr "" -#: includes/class.cooked-admin-enqueues.php:160 +#: includes/class.cooked-admin-enqueues.php:163 msgid "Failed to upload CSV file." msgstr "" -#: includes/class.cooked-admin-enqueues.php:161 +#: includes/class.cooked-admin-enqueues.php:164 #: includes/class.cooked-ajax.php:398 msgid "File upload failed." msgstr "" -#: includes/class.cooked-admin-enqueues.php:162 +#: includes/class.cooked-admin-enqueues.php:165 msgid "Something went wrong" msgstr "" -#: includes/class.cooked-admin-enqueues.php:163 +#: includes/class.cooked-admin-enqueues.php:166 msgid "hrs" msgstr "" -#: includes/class.cooked-admin-enqueues.php:164 +#: includes/class.cooked-admin-enqueues.php:167 msgid "mins" msgstr "" -#: includes/class.cooked-admin-enqueues.php:165 +#: includes/class.cooked-admin-enqueues.php:168 msgid "Pre-calculate related recipes for all published recipes? This may take a while on large sites." msgstr "" #. translators: 1: date and time, 2: number of recipes -#: includes/class.cooked-admin-enqueues.php:167 +#: includes/class.cooked-admin-enqueues.php:170 #, php-format msgid "Last: %1$s · %2$s recipes" msgstr "" @@ -2634,15 +2628,15 @@ msgstr "" msgid "Restricted diet type (Schema.org RestrictedDiet), separated by comma" msgstr "" -#: includes/class.cooked-admin-enqueues.php:170 +#: includes/class.cooked-admin-enqueues.php:173 msgid "Bulk Add Ingredients" msgstr "" -#: includes/class.cooked-admin-enqueues.php:171 +#: includes/class.cooked-admin-enqueues.php:174 msgid "Bulk Add Directions" msgstr "" -#: includes/class.cooked-admin-enqueues.php:172 +#: includes/class.cooked-admin-enqueues.php:175 msgid "" "2 cups flour\n" "1 tsp salt\n" @@ -2650,26 +2644,26 @@ msgid "" "3 large eggs" msgstr "" -#: includes/class.cooked-admin-enqueues.php:173 +#: includes/class.cooked-admin-enqueues.php:176 msgid "" "Preheat oven to 350°F.\n" "Mix dry ingredients together.\n" "Add wet ingredients and stir." msgstr "" -#: includes/class.cooked-admin-enqueues.php:175 +#: includes/class.cooked-admin-enqueues.php:178 msgid "Parsing..." msgstr "" -#: includes/class.cooked-admin-enqueues.php:176 +#: includes/class.cooked-admin-enqueues.php:179 msgid "Add Ingredients" msgstr "" -#: includes/class.cooked-admin-enqueues.php:177 +#: includes/class.cooked-admin-enqueues.php:180 msgid "Add Directions" msgstr "" -#: includes/class.cooked-admin-enqueues.php:181 +#: includes/class.cooked-admin-enqueues.php:184 msgid "Heading text" msgstr "" @@ -2698,7 +2692,7 @@ msgid "Cancel" msgstr "" #: includes/class.cooked-recipe-meta.php:797 -#: includes/class.cooked-recipe-meta.php:1003 +#: includes/class.cooked-recipe-meta.php:1021 msgid "Bulk Add" msgstr "" @@ -2715,70 +2709,70 @@ msgid "Show Allergens on Recipe Cards" msgstr "" #: includes/class.cooked-allergens.php:111 -#: includes/class.cooked-allergens.php:290 -#: includes/class.cooked-allergens.php:314 -#: includes/class.cooked-allergens.php:333 +#: includes/class.cooked-allergens.php:321 +#: includes/class.cooked-allergens.php:345 +#: includes/class.cooked-allergens.php:364 msgid "Allergens" msgstr "" -#: includes/class.cooked-allergens.php:158 +#: includes/class.cooked-allergens.php:189 msgid "Celery" msgstr "" -#: includes/class.cooked-allergens.php:162 +#: includes/class.cooked-allergens.php:193 msgid "Crustacean shellfish" msgstr "" -#: includes/class.cooked-allergens.php:166 +#: includes/class.cooked-allergens.php:197 msgid "Eggs" msgstr "" -#: includes/class.cooked-allergens.php:170 +#: includes/class.cooked-allergens.php:201 msgid "Fish" msgstr "" -#: includes/class.cooked-allergens.php:174 +#: includes/class.cooked-allergens.php:205 msgid "Lupin" msgstr "" -#: includes/class.cooked-allergens.php:178 +#: includes/class.cooked-allergens.php:209 msgid "Milk" msgstr "" -#: includes/class.cooked-allergens.php:182 +#: includes/class.cooked-allergens.php:213 msgid "Molluscs" msgstr "" -#: includes/class.cooked-allergens.php:186 +#: includes/class.cooked-allergens.php:217 msgid "Mustard" msgstr "" -#: includes/class.cooked-allergens.php:190 +#: includes/class.cooked-allergens.php:221 msgid "Peanuts" msgstr "" -#: includes/class.cooked-allergens.php:194 +#: includes/class.cooked-allergens.php:225 msgid "Sesame" msgstr "" -#: includes/class.cooked-allergens.php:198 +#: includes/class.cooked-allergens.php:229 msgid "Soybeans" msgstr "" -#: includes/class.cooked-allergens.php:202 +#: includes/class.cooked-allergens.php:233 msgid "Sulphur dioxide and sulphites" msgstr "" -#: includes/class.cooked-allergens.php:206 +#: includes/class.cooked-allergens.php:237 msgid "Tree nuts" msgstr "" -#: includes/class.cooked-allergens.php:210 +#: includes/class.cooked-allergens.php:241 msgid "Wheat" msgstr "" #. translators: %s: allergen name -#: includes/class.cooked-allergens.php:272 +#: includes/class.cooked-allergens.php:303 #, php-format msgid "Contains %s" msgstr "" @@ -2865,22 +2859,10 @@ msgstr "" msgid "modern, modern-centered" msgstr "" -#: includes/class.cooked-settings.php:243 +#: includes/class.cooked-settings.php:337 msgid "Print View" msgstr "" -#: includes/class.cooked-settings.php:244 -msgid "When enabled, the active theme's header and/or footer appear on the recipe print screen." -msgstr "" - -#: includes/class.cooked-settings.php:250 -msgid "Site Header" -msgstr "" - -#: includes/class.cooked-settings.php:251 -msgid "Site Footer" -msgstr "" - #: includes/class.cooked-import.php:220 msgid "Download sample CSV files:" msgstr "" @@ -2897,39 +2879,103 @@ msgstr "" msgid "Large (10 recipes)" msgstr "" -#: includes/class.cooked-recipes.php:983 -#: includes/class.cooked-recipes.php:993 +#: includes/class.cooked-recipes.php:935 +#: includes/class.cooked-recipes.php:945 msgid "Default" msgstr "" -#: includes/class.cooked-recipes.php:984 -#: includes/class.cooked-recipes.php:994 +#: includes/class.cooked-recipes.php:936 +#: includes/class.cooked-recipes.php:946 msgid "Metric" msgstr "" -#: includes/class.cooked-recipes.php:985 -#: includes/class.cooked-recipes.php:995 +#: includes/class.cooked-recipes.php:937 +#: includes/class.cooked-recipes.php:947 msgid "Imperial" msgstr "" -#: includes/class.cooked-recipes.php:989 +#: includes/class.cooked-recipes.php:941 msgid "Units" msgstr "" -#: includes/class.cooked-recipes.php:991 +#: includes/class.cooked-recipes.php:943 msgid "Measurement System" msgstr "" -#: includes/class.cooked-settings.php:360 +#: includes/class.cooked-settings.php:453 msgid "Enable \"Measurement System Switcher\"" msgstr "" -#: includes/class.cooked-settings.php:360 +#: includes/class.cooked-settings.php:453 msgid "Shows the Metric/Imperial toggle on recipes." msgstr "" #. translators: %s: recipe archive URL, e.g. https://example.com/recipe-archive -#: includes/class.cooked-settings.php:364 +#: includes/class.cooked-settings.php:457 #, php-format msgid "Prevents the recipe archive from being displayed at %s." msgstr "" + +#: includes/class.cooked-admin-enqueues.php:141 +#: includes/class.cooked-recipe-meta.php:922 +#: includes/class.cooked-recipe-meta.php:1002 +#: includes/class.cooked-recipe-meta.php:1040 +msgid "Add Video" +msgstr "" + +#: includes/class.cooked-admin-enqueues.php:142 +#: includes/class.cooked-recipe-meta.php:922 +msgid "Change Video" +msgstr "" + +#: includes/class.cooked-admin-enqueues.php:143 +msgid "Use this Video" +msgstr "" + +#: includes/class.cooked-pixwell.php:58 +msgid "Pixwell's dark mode toggle is enabled on your site. To keep recipe styles in sync when visitors use it, go to" +msgstr "" + +#: includes/class.cooked-pixwell.php:59 +msgid "Cooked → Settings → Design" +msgstr "" + +#: includes/class.cooked-pixwell.php:60 +msgid " and set Dark Mode to Auto." +msgstr "" + +#: includes/class.cooked-pixwell.php:77 +msgid "Pixwell's dark mode toggle is enabled. Choose Auto so Cooked follows it when visitors switch themes." +msgstr "" + +#: includes/class.cooked-settings.php:338 +msgid "When enabled, the website logo will appear at the top of the recipe print screen." +msgstr "" + +#: includes/class.cooked-settings.php:344 +msgid "Show Website Logo" +msgstr "" + +#: includes/class.cooked-settings.php:473 +msgid "Use Auto if your theme has a visitor dark mode toggle. Cooked will then match that choice. Otherwise leave this Off." +msgstr "" + +#: includes/class.cooked-settings.php:480 +msgid "Off" +msgstr "" + +#: includes/class.cooked-settings.php:481 +msgid "On" +msgstr "" + +#: includes/class.cooked-settings.php:482 +msgid "Auto (match theme dark mode)" +msgstr "" + +#: includes/class.cooked-settings.php:500 +msgid "Default Recipe Image" +msgstr "" + +#: includes/class.cooked-settings.php:501 +msgid "Used as the featured image for recipes that do not have one set." +msgstr "" diff --git a/languages/cooked.pot b/languages/cooked.pot index 1d765e7..7ad0fb9 100644 --- a/languages/cooked.pot +++ b/languages/cooked.pot @@ -2,14 +2,14 @@ # This file is distributed under the GPLv2 or later. msgid "" msgstr "" -"Project-Id-Version: Cooked - Recipe Management 1.15.0\n" +"Project-Id-Version: Cooked - Recipe Management 1.16.0\n" "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/cooked\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"POT-Creation-Date: 2026-06-20T16:38:21-04:00\n" +"POT-Creation-Date: 2026-08-11T20:41:45-04:00\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "X-Generator: WP-CLI 2.12.0\n" "X-Domain: cooked\n" @@ -45,13 +45,15 @@ msgstr "" #: includes/class.cooked-admin-enqueues.php:138 #: includes/class.cooked-recipe-meta.php:912 -#: includes/class.cooked-recipe-meta.php:968 -#: includes/class.cooked-recipe-meta.php:1012 +#: includes/class.cooked-recipe-meta.php:979 +#: includes/class.cooked-recipe-meta.php:1030 +#: includes/class.cooked-settings.php:802 msgid "Add Image" msgstr "" #: includes/class.cooked-admin-enqueues.php:139 #: includes/class.cooked-recipe-meta.php:912 +#: includes/class.cooked-settings.php:802 msgid "Change Image" msgstr "" @@ -60,120 +62,136 @@ msgid "Use this Image" msgstr "" #: includes/class.cooked-admin-enqueues.php:141 -#: includes/class.cooked-recipe-meta.php:1244 -msgid "Add to Gallery" +#: includes/class.cooked-recipe-meta.php:922 +#: includes/class.cooked-recipe-meta.php:1002 +#: includes/class.cooked-recipe-meta.php:1040 +msgid "Add Video" msgstr "" #: includes/class.cooked-admin-enqueues.php:142 -msgid "Edit Gallery Item" +#: includes/class.cooked-recipe-meta.php:922 +msgid "Change Video" msgstr "" #: includes/class.cooked-admin-enqueues.php:143 -msgid "Update Gallery Item" +msgid "Use this Video" msgstr "" #: includes/class.cooked-admin-enqueues.php:144 -msgid "Saved" +#: includes/class.cooked-recipe-meta.php:1269 +msgid "Add to Gallery" msgstr "" #: includes/class.cooked-admin-enqueues.php:145 -msgid "Applied" +msgid "Edit Gallery Item" msgstr "" #: includes/class.cooked-admin-enqueues.php:146 -msgid "Are you sure you want to apply this new template to all of your recipes?" +msgid "Update Gallery Item" msgstr "" #: includes/class.cooked-admin-enqueues.php:147 +msgid "Saved" +msgstr "" + +#: includes/class.cooked-admin-enqueues.php:148 +msgid "Applied" +msgstr "" + +#: includes/class.cooked-admin-enqueues.php:149 +msgid "Are you sure you want to apply this new template to all of your recipes?" +msgstr "" + +#: includes/class.cooked-admin-enqueues.php:150 msgid "Are you sure you want to reset this recipe template to the Cooked plugin default?" msgstr "" #. translators: confirmation for migrating all ### recipes, where ### displays the total number for the migration. -#: includes/class.cooked-admin-enqueues.php:149 +#: includes/class.cooked-admin-enqueues.php:152 #, php-format msgid "Please confirm that you are ready to migrate all %s recipes." msgstr "" -#: includes/class.cooked-admin-enqueues.php:150 +#: includes/class.cooked-admin-enqueues.php:153 msgid "Please confirm that you are ready to import all recipes." msgstr "" -#: includes/class.cooked-admin-enqueues.php:151 +#: includes/class.cooked-admin-enqueues.php:154 msgid "Are you sure you want to import recipes from this CSV file?" msgstr "" -#: includes/class.cooked-admin-enqueues.php:152 +#: includes/class.cooked-admin-enqueues.php:155 msgid "Please select a CSV file." msgstr "" -#: includes/class.cooked-admin-enqueues.php:153 +#: includes/class.cooked-admin-enqueues.php:156 msgid "Please select a valid CSV file." msgstr "" -#: includes/class.cooked-admin-enqueues.php:154 +#: includes/class.cooked-admin-enqueues.php:157 msgid "Uploading..." msgstr "" -#: includes/class.cooked-admin-enqueues.php:155 +#: includes/class.cooked-admin-enqueues.php:158 msgid "Processing..." msgstr "" -#: includes/class.cooked-admin-enqueues.php:156 +#: includes/class.cooked-admin-enqueues.php:159 msgid "recipes imported" msgstr "" -#: includes/class.cooked-admin-enqueues.php:157 +#: includes/class.cooked-admin-enqueues.php:160 msgid "Errors:" msgstr "" -#: includes/class.cooked-admin-enqueues.php:158 +#: includes/class.cooked-admin-enqueues.php:161 msgid "Import failed." msgstr "" -#: includes/class.cooked-admin-enqueues.php:159 +#: includes/class.cooked-admin-enqueues.php:162 msgid "Failed to process CSV file." msgstr "" -#: includes/class.cooked-admin-enqueues.php:160 +#: includes/class.cooked-admin-enqueues.php:163 msgid "Failed to upload CSV file." msgstr "" -#: includes/class.cooked-admin-enqueues.php:161 +#: includes/class.cooked-admin-enqueues.php:164 #: includes/class.cooked-ajax.php:398 msgid "File upload failed." msgstr "" -#: includes/class.cooked-admin-enqueues.php:162 +#: includes/class.cooked-admin-enqueues.php:165 msgid "Something went wrong" msgstr "" -#: includes/class.cooked-admin-enqueues.php:163 +#: includes/class.cooked-admin-enqueues.php:166 msgid "hrs" msgstr "" -#: includes/class.cooked-admin-enqueues.php:164 +#: includes/class.cooked-admin-enqueues.php:167 msgid "mins" msgstr "" -#: includes/class.cooked-admin-enqueues.php:165 +#: includes/class.cooked-admin-enqueues.php:168 msgid "Pre-calculate related recipes for all published recipes? This may take a while on large sites." msgstr "" #. translators: 1: date and time, 2: number of recipes -#: includes/class.cooked-admin-enqueues.php:167 +#: includes/class.cooked-admin-enqueues.php:170 #, php-format msgid "Last: %1$s · %2$s recipes" msgstr "" -#: includes/class.cooked-admin-enqueues.php:170 +#: includes/class.cooked-admin-enqueues.php:173 msgid "Bulk Add Ingredients" msgstr "" -#: includes/class.cooked-admin-enqueues.php:171 +#: includes/class.cooked-admin-enqueues.php:174 msgid "Bulk Add Directions" msgstr "" -#: includes/class.cooked-admin-enqueues.php:172 +#: includes/class.cooked-admin-enqueues.php:175 msgid "" "2 cups flour\n" "1 tsp salt\n" @@ -181,46 +199,46 @@ msgid "" "3 large eggs" msgstr "" -#: includes/class.cooked-admin-enqueues.php:173 +#: includes/class.cooked-admin-enqueues.php:176 msgid "" "Preheat oven to 350°F.\n" "Mix dry ingredients together.\n" "Add wet ingredients and stir." msgstr "" -#: includes/class.cooked-admin-enqueues.php:174 -#: includes/class.cooked-recipe-meta.php:1723 +#: includes/class.cooked-admin-enqueues.php:177 +#: includes/class.cooked-recipe-meta.php:1748 msgid "Section heading" msgstr "" -#: includes/class.cooked-admin-enqueues.php:175 +#: includes/class.cooked-admin-enqueues.php:178 msgid "Parsing..." msgstr "" -#: includes/class.cooked-admin-enqueues.php:176 +#: includes/class.cooked-admin-enqueues.php:179 msgid "Add Ingredients" msgstr "" -#: includes/class.cooked-admin-enqueues.php:177 +#: includes/class.cooked-admin-enqueues.php:180 msgid "Add Directions" msgstr "" -#: includes/class.cooked-admin-enqueues.php:178 +#: includes/class.cooked-admin-enqueues.php:181 #: includes/class.cooked-recipe-meta.php:626 msgid "Amount" msgstr "" -#: includes/class.cooked-admin-enqueues.php:179 +#: includes/class.cooked-admin-enqueues.php:182 #: includes/class.cooked-recipe-meta.php:627 msgid "Measurement" msgstr "" -#: includes/class.cooked-admin-enqueues.php:180 +#: includes/class.cooked-admin-enqueues.php:183 #: includes/class.cooked-recipe-meta.php:628 msgid "Item" msgstr "" -#: includes/class.cooked-admin-enqueues.php:181 +#: includes/class.cooked-admin-enqueues.php:184 msgid "Heading text" msgstr "" @@ -241,7 +259,6 @@ msgstr "" #. translators: referring to the bottom of the Settings page. #: includes/class.cooked-admin-menus.php:45 #: includes/class.cooked-admin-menus.php:65 -#: includes/class.cooked-recipe-meta.php:118 #: includes/class.cooked-shortcodes.php:167 #: templates/admin/welcome.php:18 msgid "Settings" @@ -277,9 +294,9 @@ msgstr "" #: includes/class.cooked-functions.php:134 #: includes/class.cooked-recipe-meta.php:177 #: includes/class.cooked-recipe-meta.php:415 -#: includes/class.cooked-recipe-meta.php:1322 -#: includes/class.cooked-recipes.php:788 -#: includes/class.cooked-recipes.php:820 +#: includes/class.cooked-recipe-meta.php:1347 +#: includes/class.cooked-recipes.php:740 +#: includes/class.cooked-recipes.php:772 msgid "Ingredients" msgstr "" @@ -288,9 +305,9 @@ msgstr "" #: includes/class.cooked-functions.php:135 #: includes/class.cooked-recipe-meta.php:177 #: includes/class.cooked-recipe-meta.php:421 -#: includes/class.cooked-recipe-meta.php:1353 -#: includes/class.cooked-recipes.php:792 -#: includes/class.cooked-recipes.php:821 +#: includes/class.cooked-recipe-meta.php:1378 +#: includes/class.cooked-recipes.php:744 +#: includes/class.cooked-recipes.php:773 msgid "Directions" msgstr "" @@ -342,70 +359,70 @@ msgid "Show Allergens on Recipe Cards" msgstr "" #: includes/class.cooked-allergens.php:111 -#: includes/class.cooked-allergens.php:290 -#: includes/class.cooked-allergens.php:314 -#: includes/class.cooked-allergens.php:333 +#: includes/class.cooked-allergens.php:321 +#: includes/class.cooked-allergens.php:345 +#: includes/class.cooked-allergens.php:364 msgid "Allergens" msgstr "" -#: includes/class.cooked-allergens.php:158 +#: includes/class.cooked-allergens.php:189 msgid "Celery" msgstr "" -#: includes/class.cooked-allergens.php:162 +#: includes/class.cooked-allergens.php:193 msgid "Crustacean shellfish" msgstr "" -#: includes/class.cooked-allergens.php:166 +#: includes/class.cooked-allergens.php:197 msgid "Eggs" msgstr "" -#: includes/class.cooked-allergens.php:170 +#: includes/class.cooked-allergens.php:201 msgid "Fish" msgstr "" -#: includes/class.cooked-allergens.php:174 +#: includes/class.cooked-allergens.php:205 msgid "Lupin" msgstr "" -#: includes/class.cooked-allergens.php:178 +#: includes/class.cooked-allergens.php:209 msgid "Milk" msgstr "" -#: includes/class.cooked-allergens.php:182 +#: includes/class.cooked-allergens.php:213 msgid "Molluscs" msgstr "" -#: includes/class.cooked-allergens.php:186 +#: includes/class.cooked-allergens.php:217 msgid "Mustard" msgstr "" -#: includes/class.cooked-allergens.php:190 +#: includes/class.cooked-allergens.php:221 msgid "Peanuts" msgstr "" -#: includes/class.cooked-allergens.php:194 +#: includes/class.cooked-allergens.php:225 msgid "Sesame" msgstr "" -#: includes/class.cooked-allergens.php:198 +#: includes/class.cooked-allergens.php:229 msgid "Soybeans" msgstr "" -#: includes/class.cooked-allergens.php:202 +#: includes/class.cooked-allergens.php:233 msgid "Sulphur dioxide and sulphites" msgstr "" -#: includes/class.cooked-allergens.php:206 +#: includes/class.cooked-allergens.php:237 msgid "Tree nuts" msgstr "" -#: includes/class.cooked-allergens.php:210 +#: includes/class.cooked-allergens.php:241 msgid "Wheat" msgstr "" #. translators: %s: allergen name -#: includes/class.cooked-allergens.php:272 +#: includes/class.cooked-allergens.php:303 #, php-format msgid "Contains %s" msgstr "" @@ -462,7 +479,7 @@ msgid "Error importing WP Delicious recipe." msgstr "" #: includes/class.cooked-enqueues.php:56 -#: includes/class.cooked-recipe-meta.php:1568 +#: includes/class.cooked-recipe-meta.php:1593 msgid "Timer" msgstr "" @@ -490,8 +507,8 @@ msgid "Information" msgstr "" #: includes/class.cooked-functions.php:132 -#: includes/class.cooked-recipe-meta.php:1513 -#: includes/class.cooked-settings.php:233 +#: includes/class.cooked-recipe-meta.php:1538 +#: includes/class.cooked-settings.php:327 msgid "Excerpt" msgstr "" @@ -501,9 +518,9 @@ msgstr "" #: includes/class.cooked-functions.php:136 #: includes/class.cooked-import.php:161 -#: includes/class.cooked-recipe-meta.php:1537 -#: includes/class.cooked-recipes.php:795 -#: includes/class.cooked-settings.php:234 +#: includes/class.cooked-recipe-meta.php:1562 +#: includes/class.cooked-recipes.php:747 +#: includes/class.cooked-settings.php:328 #: includes/class.cooked-shortcodes.php:836 msgid "Notes" msgstr "" @@ -678,7 +695,7 @@ msgstr "" #: includes/class.cooked-import.php:211 #: includes/class.cooked-import.php:234 -#: includes/class.cooked-settings.php:625 +#: includes/class.cooked-settings.php:729 msgid "reload" msgstr "" @@ -1010,8 +1027,8 @@ msgid "cans" msgstr "" #: includes/class.cooked-measurements.php:217 -#: includes/class.cooked-recipes.php:1051 -#: includes/class.cooked-settings.php:238 +#: includes/class.cooked-recipes.php:1003 +#: includes/class.cooked-settings.php:332 msgid "Servings" msgstr "" @@ -1292,6 +1309,22 @@ msgstr "" msgid "Create translations of your browse page in %s for full multilingual support." msgstr "" +#: includes/class.cooked-pixwell.php:58 +msgid "Pixwell's dark mode toggle is enabled on your site. To keep recipe styles in sync when visitors use it, go to" +msgstr "" + +#: includes/class.cooked-pixwell.php:59 +msgid "Cooked → Settings → Design" +msgstr "" + +#: includes/class.cooked-pixwell.php:60 +msgid " and set Dark Mode to Auto." +msgstr "" + +#: includes/class.cooked-pixwell.php:77 +msgid "Pixwell's dark mode toggle is enabled. Choose Auto so Cooked follows it when visitors switch themes." +msgstr "" + #: includes/class.cooked-plugin-extra.php:31 msgid "Required by Cooked Pro" msgstr "" @@ -1301,7 +1334,7 @@ msgid "Photo" msgstr "" #: includes/class.cooked-post-types.php:433 -#: includes/class.cooked-settings.php:159 +#: includes/class.cooked-settings.php:253 msgid "Recipe Archive" msgstr "" @@ -1358,6 +1391,12 @@ msgstr "" msgid "Error importing WP Recipe Maker recipe." msgstr "" +#: includes/class.cooked-recipe-meta.php:118 +#: templates/admin/settings.php:10 +#: templates/admin/welcome.php:33 +msgid "Cooked Settings" +msgstr "" + #: includes/class.cooked-recipe-meta.php:217 #, php-format msgid "This recipe is set up to include itself in the Recipe Template (containing shortcode %s), which can break the page. Remove the embed that references this same recipe." @@ -1420,21 +1459,21 @@ msgid "Hide the recipe title." msgstr "" #: includes/class.cooked-recipe-meta.php:361 -#: includes/class.cooked-recipe-meta.php:1291 -#: includes/class.cooked-recipe-meta.php:1337 -#: includes/class.cooked-recipe-meta.php:1368 +#: includes/class.cooked-recipe-meta.php:1316 +#: includes/class.cooked-recipe-meta.php:1362 #: includes/class.cooked-recipe-meta.php:1393 -#: includes/class.cooked-recipe-meta.php:1417 -#: includes/class.cooked-recipe-meta.php:1477 -#: includes/class.cooked-recipe-meta.php:1522 -#: includes/class.cooked-recipe-meta.php:1552 -#: includes/class.cooked-recipe-meta.php:1597 -#: includes/class.cooked-recipe-meta.php:1720 +#: includes/class.cooked-recipe-meta.php:1418 +#: includes/class.cooked-recipe-meta.php:1442 +#: includes/class.cooked-recipe-meta.php:1502 +#: includes/class.cooked-recipe-meta.php:1547 +#: includes/class.cooked-recipe-meta.php:1577 +#: includes/class.cooked-recipe-meta.php:1622 +#: includes/class.cooked-recipe-meta.php:1745 msgid "Available Variables" msgstr "" #: includes/class.cooked-recipe-meta.php:363 -#: includes/class.cooked-recipe-meta.php:1722 +#: includes/class.cooked-recipe-meta.php:1747 msgid "Recipe ID" msgstr "" @@ -1450,15 +1489,15 @@ msgstr "" #: includes/class.cooked-recipe-meta.php:367 #: includes/class.cooked-recipe-meta.php:368 #: includes/class.cooked-recipe-meta.php:369 -#: includes/class.cooked-recipe-meta.php:1726 -#: includes/class.cooked-recipe-meta.php:1727 -#: includes/class.cooked-recipe-meta.php:1728 -#: includes/class.cooked-recipe-meta.php:1729 +#: includes/class.cooked-recipe-meta.php:1751 +#: includes/class.cooked-recipe-meta.php:1752 +#: includes/class.cooked-recipe-meta.php:1753 +#: includes/class.cooked-recipe-meta.php:1754 msgid "true/false" msgstr "" #: includes/class.cooked-recipe-meta.php:371 -#: includes/class.cooked-recipe-meta.php:1731 +#: includes/class.cooked-recipe-meta.php:1756 msgid "Example" msgstr "" @@ -1467,7 +1506,7 @@ msgid "Layout" msgstr "" #: includes/class.cooked-recipe-meta.php:433 -#: includes/class.cooked-recipe-meta.php:1434 +#: includes/class.cooked-recipe-meta.php:1459 msgid "Gallery" msgstr "" @@ -1538,13 +1577,13 @@ msgid "This description is used for SEO purposes and is optional. By default, Co msgstr "" #: includes/class.cooked-recipe-meta.php:574 -#: includes/class.cooked-settings.php:232 +#: includes/class.cooked-settings.php:326 msgid "Difficulty Level" msgstr "" #: includes/class.cooked-recipe-meta.php:583 -#: includes/class.cooked-recipe-meta.php:1296 -#: includes/class.cooked-settings.php:235 +#: includes/class.cooked-recipe-meta.php:1321 +#: includes/class.cooked-settings.php:329 #: includes/class.cooked-shortcodes.php:509 #: includes/class.cooked-shortcodes.php:732 msgid "Prep Time" @@ -1557,16 +1596,16 @@ msgid "minutes" msgstr "" #: includes/class.cooked-recipe-meta.php:588 -#: includes/class.cooked-recipe-meta.php:1297 -#: includes/class.cooked-settings.php:236 +#: includes/class.cooked-recipe-meta.php:1322 +#: includes/class.cooked-settings.php:330 #: includes/class.cooked-shortcodes.php:510 #: includes/class.cooked-shortcodes.php:741 msgid "Cook Time" msgstr "" #: includes/class.cooked-recipe-meta.php:593 -#: includes/class.cooked-recipe-meta.php:1298 -#: includes/class.cooked-settings.php:237 +#: includes/class.cooked-recipe-meta.php:1323 +#: includes/class.cooked-settings.php:331 #: includes/class.cooked-shortcodes.php:511 #: includes/class.cooked-shortcodes.php:752 #: includes/class.cooked-shortcodes.php:759 @@ -1601,15 +1640,15 @@ msgstr "" #: includes/class.cooked-recipe-meta.php:699 #: includes/class.cooked-recipe-meta.php:855 -#: includes/class.cooked-recipe-meta.php:928 -#: includes/class.cooked-recipe-meta.php:1025 +#: includes/class.cooked-recipe-meta.php:939 +#: includes/class.cooked-recipe-meta.php:1050 msgid "Section Heading" msgstr "" #: includes/class.cooked-recipe-meta.php:703 #: includes/class.cooked-recipe-meta.php:859 -#: includes/class.cooked-recipe-meta.php:932 -#: includes/class.cooked-recipe-meta.php:1029 +#: includes/class.cooked-recipe-meta.php:943 +#: includes/class.cooked-recipe-meta.php:1054 msgid "Heading Element:" msgstr "" @@ -1618,426 +1657,426 @@ msgid "Add Ingredient" msgstr "" #: includes/class.cooked-recipe-meta.php:795 -#: includes/class.cooked-recipe-meta.php:1001 +#: includes/class.cooked-recipe-meta.php:1019 msgid "Add Section Heading" msgstr "" #: includes/class.cooked-recipe-meta.php:797 -#: includes/class.cooked-recipe-meta.php:1003 +#: includes/class.cooked-recipe-meta.php:1021 msgid "Bulk Add" msgstr "" -#: includes/class.cooked-recipe-meta.php:1000 +#: includes/class.cooked-recipe-meta.php:1018 msgid "Add Direction" msgstr "" -#: includes/class.cooked-recipe-meta.php:1060 +#: includes/class.cooked-recipe-meta.php:1085 msgid "Nutrition Information" msgstr "" -#: includes/class.cooked-recipe-meta.php:1098 +#: includes/class.cooked-recipe-meta.php:1123 #: includes/class.cooked-shortcodes.php:1123 msgid "Nutrition Facts" msgstr "" -#: includes/class.cooked-recipe-meta.php:1116 +#: includes/class.cooked-recipe-meta.php:1141 #: includes/class.cooked-shortcodes.php:1091 msgid "Amount per serving" msgstr "" -#: includes/class.cooked-recipe-meta.php:1126 +#: includes/class.cooked-recipe-meta.php:1151 #: includes/class.cooked-shortcodes.php:1101 msgid "% Daily Value *" msgstr "" -#: includes/class.cooked-recipe-meta.php:1145 +#: includes/class.cooked-recipe-meta.php:1170 #: includes/class.cooked-shortcodes.php:1033 msgid "Includes" msgstr "" -#: includes/class.cooked-recipe-meta.php:1177 +#: includes/class.cooked-recipe-meta.php:1202 #: includes/class.cooked-shortcodes.php:1127 msgid "The % Daily Value (DV) tells you how much a nutrient in a serving of food contributes to a daily diet. 2,000 calories a day is used for general nutrition advice." msgstr "" -#: includes/class.cooked-recipe-meta.php:1193 +#: includes/class.cooked-recipe-meta.php:1218 msgid "Recipe Gallery Type" msgstr "" -#: includes/class.cooked-recipe-meta.php:1206 +#: includes/class.cooked-recipe-meta.php:1231 msgid "Choose one..." msgstr "" #. translators: a title for the video section of the recipe editor, where users can paste a YouToub or Vimeo URL into the field below. -#: includes/class.cooked-recipe-meta.php:1220 +#: includes/class.cooked-recipe-meta.php:1245 #, php-format msgid "%1$s or %2$s Video" msgstr "" #. translators: a message describing how to display a video from YouTube or Vimeo. -#: includes/class.cooked-recipe-meta.php:1224 +#: includes/class.cooked-recipe-meta.php:1249 #, php-format msgid "If you would like to display a video as the first item in your gallery, you can paste a valid %1$s or %2$s URL below." msgstr "" -#: includes/class.cooked-recipe-meta.php:1229 +#: includes/class.cooked-recipe-meta.php:1254 msgid "Gallery Items" msgstr "" -#: includes/class.cooked-recipe-meta.php:1260 +#: includes/class.cooked-recipe-meta.php:1285 msgid "Recipe Information" msgstr "" -#: includes/class.cooked-recipe-meta.php:1261 +#: includes/class.cooked-recipe-meta.php:1286 msgid "This will display the recipe author, cooking times, etc." msgstr "" #. translators: "include and exclude" section title #. translators: "left and right" section title -#: includes/class.cooked-recipe-meta.php:1270 -#: includes/class.cooked-recipe-meta.php:1280 +#: includes/class.cooked-recipe-meta.php:1295 +#: includes/class.cooked-recipe-meta.php:1305 #, php-format msgid "\"%1$s\" and \"%2$s\"" msgstr "" -#: includes/class.cooked-recipe-meta.php:1272 +#: includes/class.cooked-recipe-meta.php:1297 msgid "This will allow you to include or exclude content from the shortcode output." msgstr "" -#: includes/class.cooked-recipe-meta.php:1281 +#: includes/class.cooked-recipe-meta.php:1306 msgid "Used like \"include\", but will position the content to the left or right." msgstr "" -#: includes/class.cooked-recipe-meta.php:1295 -#: includes/class.cooked-settings.php:230 +#: includes/class.cooked-recipe-meta.php:1320 +#: includes/class.cooked-settings.php:324 #: includes/class.cooked-shortcodes.php:506 #: includes/class.cooked-shortcodes.php:684 msgid "Author" msgstr "" -#: includes/class.cooked-recipe-meta.php:1299 +#: includes/class.cooked-recipe-meta.php:1324 #: includes/class.cooked-shortcodes.php:507 #: includes/class.cooked-shortcodes.php:695 msgid "Difficulty" msgstr "" -#: includes/class.cooked-recipe-meta.php:1300 +#: includes/class.cooked-recipe-meta.php:1325 msgid "Servings Switcher" msgstr "" -#: includes/class.cooked-recipe-meta.php:1301 -#: includes/class.cooked-settings.php:231 +#: includes/class.cooked-recipe-meta.php:1326 +#: includes/class.cooked-settings.php:325 #: includes/class.cooked-shortcodes.php:779 #: includes/class.cooked-shortcodes.php:782 #: includes/class.cooked-taxonomies.php:39 msgid "Category" msgstr "" -#: includes/class.cooked-recipe-meta.php:1302 +#: includes/class.cooked-recipe-meta.php:1327 msgid "Print Mode" msgstr "" -#: includes/class.cooked-recipe-meta.php:1303 +#: includes/class.cooked-recipe-meta.php:1328 msgid "Full-Screen Mode" msgstr "" -#: includes/class.cooked-recipe-meta.php:1323 +#: includes/class.cooked-recipe-meta.php:1348 msgid "This will display the list of ingredients, added via the \"Ingredients\" tab." msgstr "" -#: includes/class.cooked-recipe-meta.php:1329 +#: includes/class.cooked-recipe-meta.php:1354 msgid "This will allow you to hide or show the checkboxes:" msgstr "" -#: includes/class.cooked-recipe-meta.php:1339 +#: includes/class.cooked-recipe-meta.php:1364 msgid "Show checkboxes" msgstr "" -#: includes/class.cooked-recipe-meta.php:1340 +#: includes/class.cooked-recipe-meta.php:1365 msgid "Hide checkboxes" msgstr "" -#: includes/class.cooked-recipe-meta.php:1354 +#: includes/class.cooked-recipe-meta.php:1379 msgid "This will display the list of directions, added via the \"Directions\" tab." msgstr "" -#: includes/class.cooked-recipe-meta.php:1360 +#: includes/class.cooked-recipe-meta.php:1385 msgid "This will allow you to hide or show the numbers:" msgstr "" -#: includes/class.cooked-recipe-meta.php:1370 +#: includes/class.cooked-recipe-meta.php:1395 msgid "Show numbers" msgstr "" -#: includes/class.cooked-recipe-meta.php:1371 +#: includes/class.cooked-recipe-meta.php:1396 msgid "Hide numbers" msgstr "" -#: includes/class.cooked-recipe-meta.php:1384 +#: includes/class.cooked-recipe-meta.php:1409 msgid "Featured Image" msgstr "" -#: includes/class.cooked-recipe-meta.php:1385 +#: includes/class.cooked-recipe-meta.php:1410 msgid "This will display the featured image, if one is set." msgstr "" -#: includes/class.cooked-recipe-meta.php:1395 -#: includes/class.cooked-recipe-meta.php:1419 -#: includes/class.cooked-recipe-meta.php:1524 +#: includes/class.cooked-recipe-meta.php:1420 +#: includes/class.cooked-recipe-meta.php:1444 +#: includes/class.cooked-recipe-meta.php:1549 msgid "None" msgstr "" -#: includes/class.cooked-recipe-meta.php:1408 +#: includes/class.cooked-recipe-meta.php:1433 msgid "Nutrition Label" msgstr "" -#: includes/class.cooked-recipe-meta.php:1409 +#: includes/class.cooked-recipe-meta.php:1434 msgid "This will display the Nutrition Facts label, if data is present." msgstr "" -#: includes/class.cooked-recipe-meta.php:1435 +#: includes/class.cooked-recipe-meta.php:1460 msgid "This will display the gallery, if one is set or created from the \"Gallery\" tab." msgstr "" -#: includes/class.cooked-recipe-meta.php:1443 +#: includes/class.cooked-recipe-meta.php:1468 msgid "Set the width of the gallery." msgstr "" -#: includes/class.cooked-recipe-meta.php:1450 +#: includes/class.cooked-recipe-meta.php:1475 msgid "Set the image size ratio." msgstr "" -#: includes/class.cooked-recipe-meta.php:1460 +#: includes/class.cooked-recipe-meta.php:1485 msgid "Set the navigation style." msgstr "" -#: includes/class.cooked-recipe-meta.php:1467 +#: includes/class.cooked-recipe-meta.php:1492 msgid "Enable or disable \"Full-Screen\" mode." msgstr "" #. translators: related to the width of slideshows: "80% or 300px" section title -#: includes/class.cooked-recipe-meta.php:1482 +#: includes/class.cooked-recipe-meta.php:1507 #, php-format msgid "ex: \"%1$s\" or \"%2$s\"" msgstr "" #. translators: related to the image ratio for slideshows: "ex: 800/600" section title -#: includes/class.cooked-recipe-meta.php:1487 +#: includes/class.cooked-recipe-meta.php:1512 #, php-format msgid "ex: \"%s\"" msgstr "" #. translators: related to the navigation style for slideshows: "dots, thumbs or false" section title -#: includes/class.cooked-recipe-meta.php:1492 +#: includes/class.cooked-recipe-meta.php:1517 #, php-format msgid "\"%1$s\", \"%2$s\", or \"%3$s\"" msgstr "" #. translators: related to allowing full screen for slideshows: "true or false" section title -#: includes/class.cooked-recipe-meta.php:1497 +#: includes/class.cooked-recipe-meta.php:1522 #, php-format msgid "\"%1$s\" or \"%2$s\"" msgstr "" -#: includes/class.cooked-recipe-meta.php:1514 +#: includes/class.cooked-recipe-meta.php:1539 msgid "This will display the excerpt, if one is available from the \"Layout & Content\" tab." msgstr "" -#: includes/class.cooked-recipe-meta.php:1538 +#: includes/class.cooked-recipe-meta.php:1563 msgid "This will display the notes, if one is available from the \"Layout & Content\" tab." msgstr "" -#: includes/class.cooked-recipe-meta.php:1544 +#: includes/class.cooked-recipe-meta.php:1569 msgid "This will allow you to hide or show the header for the notes section:" msgstr "" -#: includes/class.cooked-recipe-meta.php:1554 +#: includes/class.cooked-recipe-meta.php:1579 msgid "Show header" msgstr "" -#: includes/class.cooked-recipe-meta.php:1555 +#: includes/class.cooked-recipe-meta.php:1580 msgid "Hide header" msgstr "" -#: includes/class.cooked-recipe-meta.php:1569 +#: includes/class.cooked-recipe-meta.php:1594 msgid "This will display a special link to start a cooking timer." msgstr "" #. translators: "seconds, minutes and hours" section title -#: includes/class.cooked-recipe-meta.php:1578 +#: includes/class.cooked-recipe-meta.php:1603 #, php-format msgid "\"%1$s\", \"%2$s\" and \"%3$s\"" msgstr "" -#: includes/class.cooked-recipe-meta.php:1580 +#: includes/class.cooked-recipe-meta.php:1605 msgid "Use just one or a combination of all three to set the timer length" msgstr "" -#: includes/class.cooked-recipe-meta.php:1587 +#: includes/class.cooked-recipe-meta.php:1612 msgid "Add a short description for this timer, if applicable." msgstr "" -#: includes/class.cooked-recipe-meta.php:1599 +#: includes/class.cooked-recipe-meta.php:1624 msgid "Time in seconds" msgstr "" -#: includes/class.cooked-recipe-meta.php:1600 +#: includes/class.cooked-recipe-meta.php:1625 msgid "Time in minutes" msgstr "" -#: includes/class.cooked-recipe-meta.php:1601 +#: includes/class.cooked-recipe-meta.php:1626 msgid "Time in hours" msgstr "" -#: includes/class.cooked-recipe-meta.php:1602 +#: includes/class.cooked-recipe-meta.php:1627 msgid "Timer Description" msgstr "" -#: includes/class.cooked-recipe-meta.php:1615 +#: includes/class.cooked-recipe-meta.php:1640 msgid "Next & Previous Recipe Navigation" msgstr "" -#: includes/class.cooked-recipe-meta.php:1616 +#: includes/class.cooked-recipe-meta.php:1641 msgid "This will display navigation links to the next and previous recipes." msgstr "" -#: includes/class.cooked-recipe-meta.php:1620 +#: includes/class.cooked-recipe-meta.php:1645 msgid "This shortcode automatically displays the previous and next recipe links based on the current recipe page. No parameters are required." msgstr "" -#: includes/class.cooked-recipe-meta.php:1625 +#: includes/class.cooked-recipe-meta.php:1650 msgid "Usage" msgstr "" -#: includes/class.cooked-recipe-meta.php:1627 +#: includes/class.cooked-recipe-meta.php:1652 msgid "Simply add the shortcode to your recipe template or content area. The navigation will automatically show the previous and next recipes based on recipe ID order." msgstr "" -#: includes/class.cooked-recipe-meta.php:1640 +#: includes/class.cooked-recipe-meta.php:1665 #: includes/class.cooked-related-recipes.php:34 msgid "Related Recipes" msgstr "" -#: includes/class.cooked-recipe-meta.php:1641 +#: includes/class.cooked-recipe-meta.php:1666 msgid "Displays a grid of related recipes based on shared terms in any of the recipe taxonomies (categories, cuisines, cooking methods, tags, diets), shown in random order. No cache or pre-calculation." msgstr "" -#: includes/class.cooked-recipe-meta.php:1649 +#: includes/class.cooked-recipe-meta.php:1674 msgid "Specify a recipe ID. If not provided, uses the current recipe." msgstr "" -#: includes/class.cooked-recipe-meta.php:1656 +#: includes/class.cooked-recipe-meta.php:1681 msgid "Set the heading text for the related recipes section." msgstr "" -#: includes/class.cooked-recipe-meta.php:1666 +#: includes/class.cooked-recipe-meta.php:1691 msgid "Number of recipes to display (default: 4)." msgstr "" -#: includes/class.cooked-recipe-meta.php:1673 +#: includes/class.cooked-recipe-meta.php:1698 msgid "Number of columns in the grid (default: 2)." msgstr "" -#: includes/class.cooked-recipe-meta.php:1683 +#: includes/class.cooked-recipe-meta.php:1708 msgid "Hide recipe card images." msgstr "" -#: includes/class.cooked-recipe-meta.php:1690 +#: includes/class.cooked-recipe-meta.php:1715 msgid "Hide recipe card excerpts." msgstr "" -#: includes/class.cooked-recipe-meta.php:1700 +#: includes/class.cooked-recipe-meta.php:1725 msgid "Hide recipe card authors." msgstr "" -#: includes/class.cooked-recipe-meta.php:1707 +#: includes/class.cooked-recipe-meta.php:1732 msgid "Toggle which taxonomies are used: match_categories, match_cuisines, match_cooking_methods, match_tags, match_diets (default: true)." msgstr "" -#: includes/class.cooked-recipe-meta.php:1714 +#: includes/class.cooked-recipe-meta.php:1739 msgid "Matching options:" msgstr "" -#: includes/class.cooked-recipe-meta.php:1715 +#: includes/class.cooked-recipe-meta.php:1740 msgid "Set to false to exclude a taxonomy from related recipes, e.g. match_cuisines=\"false\" to ignore cuisines." msgstr "" -#: includes/class.cooked-recipe-meta.php:1724 +#: includes/class.cooked-recipe-meta.php:1749 msgid "Number of recipes" msgstr "" -#: includes/class.cooked-recipe-meta.php:1725 +#: includes/class.cooked-recipe-meta.php:1750 msgid "Grid columns" msgstr "" #. translators: stating the recipe author with a "By" in front of it. (ex: "By John Smith") #. translators: referring to the author (ex: By John Smith) -#: includes/class.cooked-recipes.php:268 -#: includes/class.cooked-recipes.php:322 +#: includes/class.cooked-recipes.php:298 +#: includes/class.cooked-recipes.php:352 #: templates/front/recipe-single.php:47 #, php-format msgid "By %s" msgstr "" #. translators: For showing "All" of a taxonomy (ex: "All Burgers") -#: includes/class.cooked-recipes.php:493 +#: includes/class.cooked-recipes.php:445 #, php-format msgid "All %s" msgstr "" -#: includes/class.cooked-recipes.php:877 +#: includes/class.cooked-recipes.php:829 msgid "Beginner" msgstr "" -#: includes/class.cooked-recipes.php:878 +#: includes/class.cooked-recipes.php:830 msgid "Intermediate" msgstr "" -#: includes/class.cooked-recipes.php:879 +#: includes/class.cooked-recipes.php:831 msgid "Advanced" msgstr "" -#: includes/class.cooked-recipes.php:905 +#: includes/class.cooked-recipes.php:857 msgid "Cooked Gallery" msgstr "" -#: includes/class.cooked-recipes.php:909 +#: includes/class.cooked-recipes.php:861 msgid "Envira Gallery" msgstr "" -#: includes/class.cooked-recipes.php:913 +#: includes/class.cooked-recipes.php:865 msgid "Soliloquy Slider" msgstr "" -#: includes/class.cooked-recipes.php:917 +#: includes/class.cooked-recipes.php:869 msgid "Slider Revolution" msgstr "" -#: includes/class.cooked-recipes.php:983 -#: includes/class.cooked-recipes.php:993 +#: includes/class.cooked-recipes.php:935 +#: includes/class.cooked-recipes.php:945 msgid "Default" msgstr "" -#: includes/class.cooked-recipes.php:984 -#: includes/class.cooked-recipes.php:994 +#: includes/class.cooked-recipes.php:936 +#: includes/class.cooked-recipes.php:946 msgid "Metric" msgstr "" -#: includes/class.cooked-recipes.php:985 -#: includes/class.cooked-recipes.php:995 +#: includes/class.cooked-recipes.php:937 +#: includes/class.cooked-recipes.php:947 msgid "Imperial" msgstr "" -#: includes/class.cooked-recipes.php:989 +#: includes/class.cooked-recipes.php:941 msgid "Units" msgstr "" -#: includes/class.cooked-recipes.php:991 +#: includes/class.cooked-recipes.php:943 msgid "Measurement System" msgstr "" #. translators: singular and plural quarter "serving" size -#: includes/class.cooked-recipes.php:1018 +#: includes/class.cooked-recipes.php:970 #, php-format msgid "Quarter (%s Serving)" msgid_plural "Quarter (%s Servings)" @@ -2045,7 +2084,7 @@ msgstr[0] "" msgstr[1] "" #. translators: singular and plural quarter "serving" size -#: includes/class.cooked-recipes.php:1021 +#: includes/class.cooked-recipes.php:973 #, php-format msgid "Half (%s Serving)" msgid_plural "Half (%s Servings)" @@ -2053,7 +2092,7 @@ msgstr[0] "" msgstr[1] "" #. translators: singular and plural quarter "serving" size -#: includes/class.cooked-recipes.php:1024 +#: includes/class.cooked-recipes.php:976 #, php-format msgid "Default (%s Serving)" msgid_plural "Default (%s Servings)" @@ -2061,86 +2100,86 @@ msgstr[0] "" msgstr[1] "" #. translators: singular and plural quarter "serving" size -#: includes/class.cooked-recipes.php:1027 +#: includes/class.cooked-recipes.php:979 #, php-format msgid "Double (%s Servings)" msgstr "" #. translators: singular and plural quarter "serving" size -#: includes/class.cooked-recipes.php:1030 +#: includes/class.cooked-recipes.php:982 #, php-format msgid "Triple (%s Servings)" msgstr "" -#: includes/class.cooked-recipes.php:1044 +#: includes/class.cooked-recipes.php:996 #: includes/class.cooked-shortcodes.php:508 msgid "Yields" msgstr "" #. translators: singular and plural "serving" sizes -#: includes/class.cooked-recipes.php:1048 -#: includes/class.cooked-recipes.php:1059 +#: includes/class.cooked-recipes.php:1000 +#: includes/class.cooked-recipes.php:1011 #, php-format msgid "%s Serving" msgid_plural "%s Servings" msgstr[0] "" msgstr[1] "" -#: includes/class.cooked-recipes.php:1191 -#: includes/class.cooked-recipes.php:1205 +#: includes/class.cooked-recipes.php:1143 +#: includes/class.cooked-recipes.php:1157 msgid "or" msgstr "" #. translators: singular and plural "steps" -#: includes/class.cooked-recipes.php:1249 +#: includes/class.cooked-recipes.php:1202 #: includes/class.cooked-seo.php:83 #, php-format msgid "Step %d" msgstr "" -#: includes/class.cooked-recipes.php:1309 +#: includes/class.cooked-recipes.php:1262 msgid "Browse" msgstr "" -#: includes/class.cooked-recipes.php:1327 -#: includes/class.cooked-settings.php:157 +#: includes/class.cooked-recipes.php:1280 +#: includes/class.cooked-settings.php:251 msgid "No categories" msgstr "" -#: includes/class.cooked-recipes.php:1330 -#: includes/class.cooked-settings.php:206 +#: includes/class.cooked-recipes.php:1283 +#: includes/class.cooked-settings.php:300 #: includes/class.cooked-taxonomies.php:38 #: includes/class.cooked-taxonomies.php:48 msgid "Categories" msgstr "" -#: includes/class.cooked-recipes.php:1332 +#: includes/class.cooked-recipes.php:1285 #: includes/class.cooked-taxonomies.php:41 #: includes/widgets/recipe-categories.php:63 msgid "All Categories" msgstr "" -#: includes/class.cooked-recipes.php:1403 +#: includes/class.cooked-recipes.php:1356 msgid "Find a recipe..." msgstr "" -#: includes/class.cooked-recipes.php:1405 +#: includes/class.cooked-recipes.php:1358 msgid "Search" msgstr "" -#: includes/class.cooked-recipes.php:1418 +#: includes/class.cooked-recipes.php:1371 msgid "Newest first" msgstr "" -#: includes/class.cooked-recipes.php:1422 +#: includes/class.cooked-recipes.php:1375 msgid "Oldest first" msgstr "" -#: includes/class.cooked-recipes.php:1426 +#: includes/class.cooked-recipes.php:1379 msgid "Alphabetical (A-Z)" msgstr "" -#: includes/class.cooked-recipes.php:1430 +#: includes/class.cooked-recipes.php:1383 msgid "Alphabetical (Z-A)" msgstr "" @@ -2148,398 +2187,410 @@ msgstr "" msgid "Recipe Editor" msgstr "" -#: includes/class.cooked-settings.php:98 +#: includes/class.cooked-settings.php:110 msgid "Cooked settings has been updated!" msgstr "" -#: includes/class.cooked-settings.php:117 +#: includes/class.cooked-settings.php:129 msgid "Cooked Plugin Setup" msgstr "" -#: includes/class.cooked-settings.php:118 +#: includes/class.cooked-settings.php:130 #, php-format msgid "To display your recipes properly, please set up your %s." msgstr "" -#: includes/class.cooked-settings.php:119 -#: includes/class.cooked-settings.php:183 +#: includes/class.cooked-settings.php:131 +#: includes/class.cooked-settings.php:277 msgid "Browse/Search Recipes Page" msgstr "" -#: includes/class.cooked-settings.php:156 +#: includes/class.cooked-settings.php:250 msgid "Choose a page..." msgstr "" -#: includes/class.cooked-settings.php:156 +#: includes/class.cooked-settings.php:250 msgid "No pages" msgstr "" -#: includes/class.cooked-settings.php:157 +#: includes/class.cooked-settings.php:251 msgid "No default" msgstr "" -#: includes/class.cooked-settings.php:179 +#: includes/class.cooked-settings.php:273 msgid "General" msgstr "" #. translators: a description on how to add the [cooked-browse] shortcode to a page -#: includes/class.cooked-settings.php:185 +#: includes/class.cooked-settings.php:279 #, php-format msgid "Create a page with the %s shortcode on it, then choose it from this dropdown." msgstr "" #. translators: a description on how to add the [cooked-browse] shortcode to a page -#: includes/class.cooked-settings.php:185 +#: includes/class.cooked-settings.php:279 msgid "Note: This setting is required for the plugin to function properly." msgstr "" -#: includes/class.cooked-settings.php:191 +#: includes/class.cooked-settings.php:285 msgid "Recipes Per Page" msgstr "" #. translators: a description on how to choose the default number of recipes per page. -#: includes/class.cooked-settings.php:193 +#: includes/class.cooked-settings.php:287 #, php-format msgid "Choose the default (set via the %s panel) or choose a different number here." msgstr "" #. translators: a description on how to choose the default number of recipes per page. -#: includes/class.cooked-settings.php:193 +#: includes/class.cooked-settings.php:287 msgid "Settings > Reading" msgstr "" -#: includes/class.cooked-settings.php:199 +#: includes/class.cooked-settings.php:293 msgid "Recipe Taxonomies" msgstr "" -#: includes/class.cooked-settings.php:200 +#: includes/class.cooked-settings.php:294 msgid "Choose which taxonomies you want to enable for your recipes." msgstr "" -#: includes/class.cooked-settings.php:211 +#: includes/class.cooked-settings.php:305 msgid "Global Recipe Toggles" msgstr "" -#: includes/class.cooked-settings.php:212 +#: includes/class.cooked-settings.php:306 msgid "You can quickly hide or show different recipe elements (site-wide) with these checkboxes." msgstr "" -#: includes/class.cooked-settings.php:243 +#: includes/class.cooked-settings.php:337 msgid "Print View" msgstr "" -#: includes/class.cooked-settings.php:244 -msgid "When enabled, the active theme's header and/or footer appear on the recipe print screen." -msgstr "" - -#: includes/class.cooked-settings.php:250 -msgid "Site Header" +#: includes/class.cooked-settings.php:338 +msgid "When enabled, the website logo will appear at the top of the recipe print screen." msgstr "" -#: includes/class.cooked-settings.php:251 -msgid "Site Footer" +#: includes/class.cooked-settings.php:344 +msgid "Show Website Logo" msgstr "" -#: includes/class.cooked-settings.php:256 +#: includes/class.cooked-settings.php:349 msgid "Carbs Format" msgstr "" -#: includes/class.cooked-settings.php:257 +#: includes/class.cooked-settings.php:350 msgid "You can display carbs as \"Total\" or \"Net\"." msgstr "" -#: includes/class.cooked-settings.php:263 +#: includes/class.cooked-settings.php:356 msgid "Total Carbs" msgstr "" -#: includes/class.cooked-settings.php:264 +#: includes/class.cooked-settings.php:357 msgid "Net Carbs" msgstr "" -#: includes/class.cooked-settings.php:269 +#: includes/class.cooked-settings.php:362 msgid "Author Name Format" msgstr "" -#: includes/class.cooked-settings.php:270 +#: includes/class.cooked-settings.php:363 msgid "You can show the full author's name or just a part of it." msgstr "" -#: includes/class.cooked-settings.php:276 +#: includes/class.cooked-settings.php:369 msgid "Full name" msgstr "" -#: includes/class.cooked-settings.php:277 +#: includes/class.cooked-settings.php:370 msgid "Full first name w/last name initial" msgstr "" -#: includes/class.cooked-settings.php:278 +#: includes/class.cooked-settings.php:371 msgid "First name initial w/full last name" msgstr "" -#: includes/class.cooked-settings.php:279 +#: includes/class.cooked-settings.php:372 msgid "First name only" msgstr "" -#: includes/class.cooked-settings.php:284 +#: includes/class.cooked-settings.php:377 msgid "Author Links" msgstr "" -#: includes/class.cooked-settings.php:285 +#: includes/class.cooked-settings.php:378 msgid "If you do not want the author names to link to the author recipe listings, you can disable them here." msgstr "" -#: includes/class.cooked-settings.php:285 +#: includes/class.cooked-settings.php:378 msgid "Note: Author links require the Browse/Search Recipes Page to be set up correctly to function properly." msgstr "" -#: includes/class.cooked-settings.php:292 +#: includes/class.cooked-settings.php:385 msgid "Disable Author Links" msgstr "" -#: includes/class.cooked-settings.php:297 +#: includes/class.cooked-settings.php:390 msgid "Default Category" msgstr "" #. translators: a description on how to set the default recipe category for the [cooked-browse] shortcode. -#: includes/class.cooked-settings.php:299 +#: includes/class.cooked-settings.php:392 #, php-format msgid "Optionally set the default recipe category for your %s shortcode display." msgstr "" -#: includes/class.cooked-settings.php:305 +#: includes/class.cooked-settings.php:398 msgid "Default Sort Order" msgstr "" #. translators: a description on how to set the default sort order for the [cooked-browse] shortcode. -#: includes/class.cooked-settings.php:307 +#: includes/class.cooked-settings.php:400 #, php-format msgid "Set the default sort order for your %s shortcode display." msgstr "" -#: includes/class.cooked-settings.php:313 +#: includes/class.cooked-settings.php:406 msgid "Newest First" msgstr "" -#: includes/class.cooked-settings.php:314 +#: includes/class.cooked-settings.php:407 msgid "Oldest First" msgstr "" -#: includes/class.cooked-settings.php:315 +#: includes/class.cooked-settings.php:408 msgid "Alphabetical" msgstr "" -#: includes/class.cooked-settings.php:316 +#: includes/class.cooked-settings.php:409 msgid "Alphabetical (reversed)" msgstr "" -#: includes/class.cooked-settings.php:321 +#: includes/class.cooked-settings.php:414 msgid "Section Heading Default HTML Tag" msgstr "" #. translators: a description on how to set the default sort order for the [cooked-browse] shortcode. -#: includes/class.cooked-settings.php:323 +#: includes/class.cooked-settings.php:416 msgid "Set the default HTML tag for your section headings." msgstr "" -#: includes/class.cooked-settings.php:329 +#: includes/class.cooked-settings.php:422 msgid "div" msgstr "" -#: includes/class.cooked-settings.php:330 +#: includes/class.cooked-settings.php:423 msgid "h2" msgstr "" -#: includes/class.cooked-settings.php:331 +#: includes/class.cooked-settings.php:424 msgid "h3" msgstr "" -#: includes/class.cooked-settings.php:332 +#: includes/class.cooked-settings.php:425 msgid "h4" msgstr "" -#: includes/class.cooked-settings.php:333 +#: includes/class.cooked-settings.php:426 msgid "h5" msgstr "" -#: includes/class.cooked-settings.php:334 +#: includes/class.cooked-settings.php:427 msgid "h6" msgstr "" -#: includes/class.cooked-settings.php:339 +#: includes/class.cooked-settings.php:432 msgid "WP Editor Roles" msgstr "" -#: includes/class.cooked-settings.php:340 +#: includes/class.cooked-settings.php:433 msgid "Choose which user roles can use the WP Editor for the Excerpt, Directions & Notes fields." msgstr "" -#: includes/class.cooked-settings.php:346 +#: includes/class.cooked-settings.php:439 msgid "Advanced Settings" msgstr "" #. translators: an option to only show recipes with the [cooked-recipe] shortcode. -#: includes/class.cooked-settings.php:356 +#: includes/class.cooked-settings.php:449 msgid "Disable Public Recipes" msgstr "" #. translators: an option to only show recipes with the [cooked-recipe] shortcode. -#: includes/class.cooked-settings.php:356 +#: includes/class.cooked-settings.php:449 #, php-format msgid "Only show recipes using the %s shortcode." msgstr "" #. translators: an option to disable "meta" tags. -#: includes/class.cooked-settings.php:358 +#: includes/class.cooked-settings.php:451 #, php-format msgid "Disable %s Tags" msgstr "" #. translators: an option to disable "meta" tags. -#: includes/class.cooked-settings.php:358 +#: includes/class.cooked-settings.php:451 msgid "Prevents duplicates when tags already exist." msgstr "" -#: includes/class.cooked-settings.php:359 +#: includes/class.cooked-settings.php:452 msgid "Disable \"Servings Switcher\"" msgstr "" -#: includes/class.cooked-settings.php:359 +#: includes/class.cooked-settings.php:452 msgid "Removes the servings dropdown on recipes." msgstr "" -#: includes/class.cooked-settings.php:360 +#: includes/class.cooked-settings.php:453 msgid "Enable \"Measurement System Switcher\"" msgstr "" -#: includes/class.cooked-settings.php:360 +#: includes/class.cooked-settings.php:453 msgid "Shows the Metric/Imperial toggle on recipes." msgstr "" -#: includes/class.cooked-settings.php:361 +#: includes/class.cooked-settings.php:454 msgid "Disable Recipe Schema Output" msgstr "" -#: includes/class.cooked-settings.php:361 +#: includes/class.cooked-settings.php:454 msgid "You should only do this if you're using something else to output schema information." msgstr "" -#: includes/class.cooked-settings.php:362 +#: includes/class.cooked-settings.php:455 msgid "Disable Recipe Archive Page" msgstr "" #. translators: %s: recipe archive URL, e.g. https://example.com/recipe-archive -#: includes/class.cooked-settings.php:364 +#: includes/class.cooked-settings.php:457 #, php-format msgid "Prevents the recipe archive from being displayed at %s." msgstr "" -#: includes/class.cooked-settings.php:373 +#: includes/class.cooked-settings.php:466 msgid "Design" msgstr "" -#: includes/class.cooked-settings.php:377 +#: includes/class.cooked-settings.php:470 msgid "Dark Mode" msgstr "" -#: includes/class.cooked-settings.php:378 -msgid "If your site has a dark background, you should enable \"Dark Mode\" so that Cooked can match this style." +#: includes/class.cooked-settings.php:473 +msgid "Use Auto if your theme has a visitor dark mode toggle. Cooked will then match that choice. Otherwise leave this Off." +msgstr "" + +#: includes/class.cooked-settings.php:480 +msgid "Off" +msgstr "" + +#: includes/class.cooked-settings.php:481 +msgid "On" msgstr "" -#: includes/class.cooked-settings.php:384 -msgid "Enable \"Dark Mode\"" +#: includes/class.cooked-settings.php:482 +msgid "Auto (match theme dark mode)" msgstr "" -#: includes/class.cooked-settings.php:389 +#: includes/class.cooked-settings.php:487 msgid "Author Images" msgstr "" -#: includes/class.cooked-settings.php:390 +#: includes/class.cooked-settings.php:488 msgid "If you do not want to display the author images (avatars), you can disable them here." msgstr "" -#: includes/class.cooked-settings.php:397 +#: includes/class.cooked-settings.php:495 msgid "Hide Author Images" msgstr "" -#: includes/class.cooked-settings.php:402 +#: includes/class.cooked-settings.php:500 +msgid "Default Recipe Image" +msgstr "" + +#: includes/class.cooked-settings.php:501 +msgid "Used as the featured image for recipes that do not have one set." +msgstr "" + +#: includes/class.cooked-settings.php:506 msgid "Main Color" msgstr "" -#: includes/class.cooked-settings.php:403 +#: includes/class.cooked-settings.php:507 msgid "Used on buttons, cooking timer, etc." msgstr "" -#: includes/class.cooked-settings.php:409 +#: includes/class.cooked-settings.php:513 msgid "Main Color (on hover)" msgstr "" -#: includes/class.cooked-settings.php:410 +#: includes/class.cooked-settings.php:514 msgid "Used when hovering over buttons." msgstr "" -#: includes/class.cooked-settings.php:416 +#: includes/class.cooked-settings.php:520 msgid "First Responsive Breakpoint" msgstr "" -#: includes/class.cooked-settings.php:417 +#: includes/class.cooked-settings.php:521 msgid "Set the first responsive breakpoint. Best for large tablets." msgstr "" -#: includes/class.cooked-settings.php:423 +#: includes/class.cooked-settings.php:527 msgid "Second Responsive Breakpoint" msgstr "" -#: includes/class.cooked-settings.php:424 +#: includes/class.cooked-settings.php:528 msgid "Set the second responsive breakpoint. Best for small tablets." msgstr "" -#: includes/class.cooked-settings.php:430 +#: includes/class.cooked-settings.php:534 msgid "Third Responsive Breakpoint" msgstr "" -#: includes/class.cooked-settings.php:431 +#: includes/class.cooked-settings.php:535 msgid "Set the third responsive breakpoint. Best for phones and other small devices." msgstr "" -#: includes/class.cooked-settings.php:439 +#: includes/class.cooked-settings.php:543 msgid "Permalinks" msgstr "" -#: includes/class.cooked-settings.php:443 +#: includes/class.cooked-settings.php:547 msgid "Recipe Permalink" msgstr "" -#: includes/class.cooked-settings.php:446 +#: includes/class.cooked-settings.php:550 msgid "recipe-name" msgstr "" -#: includes/class.cooked-settings.php:450 +#: includes/class.cooked-settings.php:554 msgid "Recipe Author Permalink" msgstr "" -#: includes/class.cooked-settings.php:453 +#: includes/class.cooked-settings.php:557 msgid "author-name" msgstr "" -#: includes/class.cooked-settings.php:457 +#: includes/class.cooked-settings.php:561 msgid "Recipe Category Permalink" msgstr "" -#: includes/class.cooked-settings.php:460 +#: includes/class.cooked-settings.php:564 msgid "recipe-category-name" msgstr "" #. translators: posts_per_page default -#: includes/class.cooked-settings.php:471 +#: includes/class.cooked-settings.php:575 #, php-format msgid "WordPress Default %s" msgstr "" -#: includes/class.cooked-settings.php:476 +#: includes/class.cooked-settings.php:580 msgid "Show All (no pagination)" msgstr "" -#: includes/class.cooked-settings.php:620 +#: includes/class.cooked-settings.php:724 msgid "Begin Migration" msgstr "" @@ -2890,11 +2941,6 @@ msgstr "" msgid "Update Settings" msgstr "" -#: templates/admin/settings.php:10 -#: templates/admin/welcome.php:33 -msgid "Cooked Settings" -msgstr "" - #. translators: referring to "Cooked" #: templates/admin/welcome.php:10 #, php-format diff --git a/package.json b/package.json index 8db94cd..66f88a2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "cooked", - "version": "1.15.0", + "version": "1.16.0", "description": "Cooked is the absolute best way to create & display recipes with WordPress. SEO optimized (rich snippets), galleries, cooking timers, printable recipes and much more.", "main": "index.js", "engines": { @@ -20,9 +20,9 @@ "destroy:ddev": "ddev delete -O && rm -rf wordpress && rm -rf .ddev", "init:ddev": "if [ -f wordpress/wp-load.php ]; then echo 'DDEV project is already initialized. Use \"run launch:ddev\" to start it or \"run destroy:ddev\" then \"run init:ddev\" to start fresh.'; exit 0; fi && ddev config --project-type=wordpress --project-name=cooked --php-version=7.4 --docroot=wordpress && printf 'services:\\n web:\\n volumes:\\n - ../:/var/www/html/wordpress/wp-content/plugins/cooked:rw\\n' > .ddev/docker-compose.cooked.yaml && mkdir -p wordpress/wp-content/plugins && ddev start && ddev wp core download && ddev wp core install --url=cooked.ddev.site --title=Cooked --admin_user=admin --admin_password=password --admin_email=admin@example.com && ddev wp plugin activate cooked && echo \"Admin username: admin, Admin password: password\" && echo \"Admin URL: cooked.ddev.site/wp-admin/\"", "launch:ddev": "ddev launch wp-admin/", - "i18n:make-pot": "ddev wp i18n make-pot wordpress/wp-content/plugins/cooked/ wordpress/wp-content/plugins/cooked/languages/cooked.pot;", - "i18n:update-po": "ddev wp i18n update-po wordpress/wp-content/plugins/cooked/languages/cooked.pot wordpress/wp-content/plugins/cooked/languages/cooked.po;", - "i18n:make-mo": "ddev wp i18n make-mo wordpress/wp-content/plugins/cooked/languages/cooked.po wordpress/wp-content/plugins/cooked/languages/cooked.mo;", + "i18n:make-pot": "if [ -d .ddev ]; then ddev wp i18n make-pot wordpress/wp-content/plugins/cooked/ wordpress/wp-content/plugins/cooked/languages/cooked.pot; else wp-env run cli wp i18n make-pot wp-content/plugins/cooked/ wp-content/plugins/cooked/languages/cooked.pot; fi", + "i18n:update-po": "if [ -d .ddev ]; then ddev wp i18n update-po wordpress/wp-content/plugins/cooked/languages/cooked.pot wordpress/wp-content/plugins/cooked/languages/cooked.po; else wp-env run cli wp i18n update-po wp-content/plugins/cooked/languages/cooked.pot wp-content/plugins/cooked/languages/cooked.po; fi", + "i18n:make-mo": "if [ -d .ddev ]; then ddev wp i18n make-mo wordpress/wp-content/plugins/cooked/languages/cooked.po wordpress/wp-content/plugins/cooked/languages/cooked.mo; else wp-env run cli wp i18n make-mo wp-content/plugins/cooked/languages/cooked.po wp-content/plugins/cooked/languages/cooked.mo; fi", "i18n": "bun run i18n:make-pot && bun run i18n:update-po && bun run i18n:make-mo", "lint": "./vendor/bin/phpcs --standard=phpcs.xml .", "lint-fix": "./vendor/bin/phpcbf --standard=phpcs.xml .", @@ -54,17 +54,17 @@ }, "homepage": "https://github.com/XjSv/Cooked#readme", "devDependencies": { - "@playwright/test": "^1.61.0", - "@types/node": "^25.9.4", - "@wordpress/e2e-test-utils-playwright": "^1.48.1", + "@playwright/test": "^1.62.1", + "@types/node": "^26.2.0", + "@wordpress/e2e-test-utils-playwright": "^1.52.0", "gulp": "^5.0.1", "gulp-clean-css": "^4.3.0", "gulp-rename": "^2.1.0", "gulp-sass": "^6.0.1", "gulp-uglify": "^3.0.2", - "playwright": "^1.61.0", - "sass": "^1.101.0", - "@wordpress/env": "^11.8.1", - "bestzip": "^3.0.1" + "playwright": "^1.62.1", + "sass": "^1.102.0", + "@wordpress/env": "^11.12.0", + "bestzip": "^3.0.2" } } diff --git a/phpcs.xml b/phpcs.xml index 50c6dc3..12fad7d 100644 --- a/phpcs.xml +++ b/phpcs.xml @@ -55,6 +55,7 @@ --> + @@ -86,6 +87,10 @@ *.php + + includes/ + + @@ -106,5 +111,4 @@ - - \ No newline at end of file + diff --git a/phpunit.xml b/phpunit.xml index e60e097..4cd4c0a 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -5,6 +5,7 @@ bootstrap="tests/phpunit/bootstrap.php" backupGlobals="false" colors="true" + testdox="true" cacheResultFile="tests/phpunit/.cache/result" > @@ -12,4 +13,4 @@ tests/phpunit - \ No newline at end of file + diff --git a/readme.txt b/readme.txt index a946a4d..471650f 100644 --- a/readme.txt +++ b/readme.txt @@ -3,7 +3,7 @@ Contributors: xjsv, boxystudio Tags: recipe, recipes, food, cooking, nutrition Requires at least: 5.0.0 Tested up to: 7.0 -Stable tag: 1.15.0 +Stable tag: 1.6.0 Requires PHP: 7.4 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html @@ -81,16 +81,27 @@ Please report security bugs found in the source code of the Cooked plugin throug == Upgrade Notice == -Version 1.15.0 adds metric/imperial measurement system switcher, allergen support, and other improvements. +Version 1.16.0 adds video clips to recipe direction steps, Off/On/Auto Dark Mode, a default recipe image option, and other improvements. == Changelog == += 1.16.0 = +* **NEW:** Added video clips to recipe direction steps. Attach a video to any direction step using the WordPress Media Library, with square preview thumbnails in the admin and 16:9 responsive video output on the frontend. +* **TWEAK:** Responsive admin layout improvements. +* **TWEAK:** Increased direction textarea height. +* **TWEAK:** Meta box title changed from "Settings" to "Cooked Settings". +* **NEW:** Dark Mode setting now supports Off, On, and Auto. Auto follows theme dark mode toggles, with dedicated Pixwell compatibility (admin notice and settings tip when Pixwell's dark mode is enabled). +* **FIX:** Fixed the Recipe Category widget "Hide Empty" option, and Recipe Search widget "Hide Browse" / "Hide Sorting" options not saving. +* **FIX:** Fixed settings "Save" button alignment. +* **NEW:** Added a Default Recipe Image option in settings, used as the featured image for recipes that do not have one set. +* **NEW:** Added a "Show Website Logo" option to the Print View settings. When enabled, the site logo (or site name) appears at the top of the recipe print screen. + = 1.15.0 = * **NEW:** Metric/Imperial measurement system switcher. Convert ingredient units between systems with a new toggle alongside the servings switcher. Option available in settings to enable/disable the switcher. * **NEW:** Added allergen support. Mark up to 14 major allergens (FDA + EU) on a recipe via a new sidebar meta box. Allergen icons are shown on recipe cards (option available in settings to enable/disable) and can be added to single recipes via `[cooked-info include="allergens"]`. -* **TWEAK:** Added [cooked-recipe-card] documentation in the recipe "Shortcodes" tab. -* **FIX:** Fix to prevent website from crashing if [cooked-recipe id="3587"] shortcode is used in recipe template with the same ID as the recipe. -* **NEW:** Add a wrapping class to recipe output from the [cooked-recipe] shortcode for easier styling. +* **TWEAK:** Added `[cooked-recipe-card]` documentation in the recipe "Shortcodes" tab. +* **FIX:** Fix to prevent website from crashing if `[cooked-recipe id="3587"]` shortcode is used in recipe template with the same ID as the recipe. +* **NEW:** Add a wrapping class to recipe output from the `[cooked-recipe]` shortcode for easier styling. * **FIX:** Fixed issue with measurement units not translating in nutrient facts. * **FIX:** Fixed invalid recipe schema when servings were left empty, which caused critical errors in Google Search Console. Servings now default to 1 when not set. * **FIX:** Fixed recipe queries ignoring the limit, which could load all recipes and cause performance issues on large sites. diff --git a/templates/front/recipe-print.php b/templates/front/recipe-print.php index afc82c1..1918362 100644 --- a/templates/front/recipe-print.php +++ b/templates/front/recipe-print.php @@ -2,10 +2,10 @@ // Print Screen Enqueues add_action( 'wp_enqueue_scripts', 'cooked_print_enqueues', 99, 1 ); -function cooked_print_enqueues(){ +function cooked_print_enqueues() { $min = COOKED_DEV ? '' : '.min'; - wp_enqueue_style( 'cooked-print', COOKED_URL . 'assets/css/print' . esc_attr( $min ) . '.css', [], COOKED_VERSION, 'screen,print' ); - wp_enqueue_style( 'cooked-icons', COOKED_URL . 'assets/css/icons' . esc_attr( $min ) . '.css', [], COOKED_VERSION, 'screen,print' ); + wp_enqueue_style( 'cooked-print', COOKED_URL . 'assets/css/print' . $min . '.css', [], COOKED_VERSION, 'screen,print' ); + wp_enqueue_style( 'cooked-icons', COOKED_URL . 'assets/css/icons' . $min . '.css', [], COOKED_VERSION, 'screen,print' ); wp_dequeue_style( 'cooked-essentials' ); wp_dequeue_style( 'cooked-styling' ); } @@ -20,6 +20,10 @@ function cooked_print_enqueues(){ $recipe_settings = Cooked_Recipes::get_settings( $post->ID ); +do_action( 'cooked_before_print_recipe' ); + +Cooked_Recipes::print_logo(); + Cooked_Functions::print_options(); echo '

' . esc_html( get_the_title() ) . '

'; @@ -27,7 +31,9 @@ function cooked_print_enqueues(){ Cooked_Functions::print_options_js(); +do_action( 'cooked_after_print_recipe' ); + wp_footer(); ?> - \ No newline at end of file + diff --git a/templates/front/recipe.php b/templates/front/recipe.php index 8f0bb1d..65c99a9 100644 --- a/templates/front/recipe.php +++ b/templates/front/recipe.php @@ -36,4 +36,4 @@ $recipe_content = strip_shortcodes( $recipe_content ); endif; -echo apply_filters( 'cooked_recipe_content', $recipe_content, $recipe_id ); \ No newline at end of file +echo apply_filters( 'cooked_recipe_content', $recipe_content, $recipe_id ); diff --git a/tests/phpunit/RecipeMetaTest.php b/tests/phpunit/RecipeMetaTest.php index 2d46a85..c87cc0e 100644 --- a/tests/phpunit/RecipeMetaTest.php +++ b/tests/phpunit/RecipeMetaTest.php @@ -45,4 +45,24 @@ public function test_meta_cleanup_processes_deeply_nested_arrays() { $result = Cooked_Recipe_Meta::meta_cleanup($input); $this->assertArrayHasKey('ingredients', $result); } + + public function test_meta_cleanup_preserves_direction_video_field() { + $input = [ + 'directions' => [ + ['content' => 'Mix ingredients', 'video' => '42'], + ] + ]; + $result = Cooked_Recipe_Meta::meta_cleanup($input); + $this->assertSame('42', $result['directions'][0]['video']); + } + + public function test_meta_cleanup_sanitizes_direction_video_field() { + $input = [ + 'directions' => [ + ['content' => 'Mix', 'video' => ''], + ] + ]; + $result = Cooked_Recipe_Meta::meta_cleanup($input); + $this->assertStringNotContainsString('', + imgOnerror: '', + svgOnload: '', + iframePayload: '', + eventHandler: '
click me
', + bodyOnload: '', + encodedScript: '<script>window.xssTriggered=true;alert("XSS")</script>', + nestedScript: '</script>', +}; + +// Create a fixture for authentication +const test = base.extend({ + adminContext: async ({ browser }, use) => { + const context = await browser.newContext({ + storageState: getAuthPath('mtresova') + }); + const page = await context.newPage(); + await ensureValidAuth(page, 'mtresova', 'password'); + await use(context); + await page.close(); + await context.close(); + } +}); + +test.describe('XSS Prevention Tests', () => { + // These tests verify that XSS payloads are properly sanitized on save or escaped on output + + test('Recipe title should be escaped against XSS on output', async ({ adminContext }) => { + const adminPage = await adminContext.newPage(); + + // Track if XSS is triggered via alert dialogs + let xssAlertTriggered = false; + adminPage.on('dialog', async (dialog) => { + if (dialog.message().includes('XSS')) { + xssAlertTriggered = true; + } + await dialog.dismiss(); + }); + + await adminPage.goto('/wp-admin/post-new.php?post_type=cp_recipe', { waitUntil: 'networkidle' }); + + const xssTitle = 'Test XSS ' + XSS_PAYLOADS.scriptTag + ' ' + Date.now(); + + // Set recipe title with XSS payload + await adminPage.getByLabel('Recipe title ...').fill(xssTitle); + + // Set minimum required fields + await adminPage.fill('input[name="_recipe_settings[prep_time]"]', '10'); + + // Publish the recipe + await adminPage.getByRole('button', { name: 'Publish', exact: true }).click(); + + await Promise.all([ + adminPage.waitForURL(/post\.php\?post=\d+&action=edit/), + adminPage.waitForSelector('.notice-success', { timeout: 10000 }) + ]); + + // Get the post ID from the URL + const url = adminPage.url(); + const postIdMatch = url.match(/post=(\d+)/); + postId = postIdMatch ? parseInt(postIdMatch[1]) : 0; + expect(postId).toBeTruthy(); + + // View the recipe on the frontend + const frontendPage = await adminContext.newPage(); + + // Track XSS on frontend + let frontendXssTriggered = false; + frontendPage.on('dialog', async (dialog) => { + if (dialog.message().includes('XSS')) { + frontendXssTriggered = true; + } + await dialog.dismiss(); + }); + + await frontendPage.goto('/?post_type=cp_recipe&p=' + postId, { waitUntil: 'networkidle' }); + + // Check that the XSS was not triggered via window variable or dialogs + const xssTriggeredOnPage = await frontendPage.evaluate(() => window.xssTriggered === true); + + expect(xssAlertTriggered).toBe(false); + expect(frontendXssTriggered).toBe(false); + expect(xssTriggeredOnPage).toBe(false); + + // Cleanup + await frontendPage.close(); + + // Delete the recipe + execSync(`wp post delete ${postId} --force`); + }); + + test('Recipe excerpt should be sanitized against XSS', async ({ adminContext }) => { + const adminPage = await adminContext.newPage(); + + let xssAlertTriggered = false; + adminPage.on('dialog', async (dialog) => { + if (dialog.message().includes('XSS')) { + xssAlertTriggered = true; + } + await dialog.dismiss(); + }); + + await adminPage.goto('/wp-admin/post-new.php?post_type=cp_recipe', { waitUntil: 'networkidle' }); + + const title = 'Test Recipe XSS Excerpt: ' + Date.now(); + + // Set recipe title + await adminPage.getByLabel('Recipe title ...').fill(title); + await adminPage.fill('input[name="_recipe_settings[prep_time]"]', '10'); + + // Set excerpt with XSS payloads via TinyMCE + await adminPage.evaluate((payload) => { + const excerptEditor = window.tinyMCE.get('_recipe_settings_excerpt'); + if (excerptEditor) { + excerptEditor.setContent(payload); + } + }, XSS_PAYLOADS.imgOnerror); + + // Publish the recipe + await adminPage.getByRole('button', { name: 'Publish', exact: true }).click(); + + await Promise.all([ + adminPage.waitForURL(/post\.php\?post=\d+&action=edit/), + adminPage.waitForSelector('.notice-success', { timeout: 10000 }) + ]); + + const url = adminPage.url(); + const postIdMatch = url.match(/post=(\d+)/); + postId = postIdMatch ? parseInt(postIdMatch[1]) : 0; + expect(postId).toBeTruthy(); + + // View the recipe on the frontend + const frontendPage = await adminContext.newPage(); + + let frontendXssTriggered = false; + frontendPage.on('dialog', async (dialog) => { + if (dialog.message().includes('XSS')) { + frontendXssTriggered = true; + } + await dialog.dismiss(); + }); + + await frontendPage.goto('/?post_type=cp_recipe&p=' + postId, { waitUntil: 'networkidle' }); + + const xssTriggeredOnPage = await frontendPage.evaluate(() => window.xssTriggered === true); + + expect(xssAlertTriggered).toBe(false); + expect(frontendXssTriggered).toBe(false); + expect(xssTriggeredOnPage).toBe(false); + + // Verify onerror handler is not present + const pageContent = await frontendPage.content(); + expect(pageContent).not.toContain('onerror="window.xssTriggered'); + expect(pageContent).not.toContain("onerror='window.xssTriggered"); + + await frontendPage.close(); + execSync(`wp post delete ${postId} --force`); + }); + + test('Recipe notes should be sanitized against XSS', async ({ adminContext }) => { + const adminPage = await adminContext.newPage(); + + let xssAlertTriggered = false; + adminPage.on('dialog', async (dialog) => { + if (dialog.message().includes('XSS')) { + xssAlertTriggered = true; + } + await dialog.dismiss(); + }); + + await adminPage.goto('/wp-admin/post-new.php?post_type=cp_recipe', { waitUntil: 'networkidle' }); + + const title = 'Test Recipe XSS Notes: ' + Date.now(); + + // Set recipe title + await adminPage.getByLabel('Recipe title ...').fill(title); + await adminPage.fill('input[name="_recipe_settings[prep_time]"]', '10'); + + // Set notes with SVG XSS payload via TinyMCE + await adminPage.evaluate((payload) => { + const notesEditor = window.tinyMCE.get('_recipe_settings_notes'); + if (notesEditor) { + notesEditor.setContent(payload); + } + }, XSS_PAYLOADS.svgOnload); + + // Publish the recipe + await adminPage.getByRole('button', { name: 'Publish', exact: true }).click(); + + await Promise.all([ + adminPage.waitForURL(/post\.php\?post=\d+&action=edit/), + adminPage.waitForSelector('.notice-success', { timeout: 10000 }) + ]); + + const url = adminPage.url(); + const postIdMatch = url.match(/post=(\d+)/); + postId = postIdMatch ? parseInt(postIdMatch[1]) : 0; + expect(postId).toBeTruthy(); + + // View the recipe on the frontend + const frontendPage = await adminContext.newPage(); + + let frontendXssTriggered = false; + frontendPage.on('dialog', async (dialog) => { + if (dialog.message().includes('XSS')) { + frontendXssTriggered = true; + } + await dialog.dismiss(); + }); + + await frontendPage.goto('/?post_type=cp_recipe&p=' + postId, { waitUntil: 'networkidle' }); + + const xssTriggeredOnPage = await frontendPage.evaluate(() => window.xssTriggered === true); + + expect(xssAlertTriggered).toBe(false); + expect(frontendXssTriggered).toBe(false); + expect(xssTriggeredOnPage).toBe(false); + + // Verify onload handler is not present + const pageContent = await frontendPage.content(); + expect(pageContent).not.toContain('onload="window.xssTriggered'); + expect(pageContent).not.toContain("onload='window.xssTriggered"); + + await frontendPage.close(); + execSync(`wp post delete ${postId} --force`); + }); + + test('Recipe directions should be sanitized against XSS', async ({ adminContext }) => { + const adminPage = await adminContext.newPage(); + + let xssAlertTriggered = false; + adminPage.on('dialog', async (dialog) => { + if (dialog.message().includes('XSS')) { + xssAlertTriggered = true; + } + await dialog.dismiss(); + }); + + await adminPage.goto('/wp-admin/post-new.php?post_type=cp_recipe', { waitUntil: 'networkidle' }); + + const title = 'Test Recipe XSS Directions: ' + Date.now(); + + // Set recipe title + await adminPage.getByLabel('Recipe title ...').fill(title); + await adminPage.fill('input[name="_recipe_settings[prep_time]"]', '10'); + + // Set direction content with XSS payload + await adminPage.evaluate((payload) => { + const directionEditors = Object.keys(window.tinyMCE.editors).filter(id => /^direction-\d+-content$/.test(id)); + if (directionEditors.length > 0) { + const directionEditor = window.tinyMCE.get(directionEditors[0]); + if (directionEditor) { + directionEditor.setContent(payload); + } + } + }, XSS_PAYLOADS.eventHandler); + + // Publish the recipe + await adminPage.getByRole('button', { name: 'Publish', exact: true }).click(); + + await Promise.all([ + adminPage.waitForURL(/post\.php\?post=\d+&action=edit/), + adminPage.waitForSelector('.notice-success', { timeout: 10000 }) + ]); + + const url = adminPage.url(); + const postIdMatch = url.match(/post=(\d+)/); + postId = postIdMatch ? parseInt(postIdMatch[1]) : 0; + expect(postId).toBeTruthy(); + + // View the recipe on the frontend + const frontendPage = await adminContext.newPage(); + + let frontendXssTriggered = false; + frontendPage.on('dialog', async (dialog) => { + if (dialog.message().includes('XSS')) { + frontendXssTriggered = true; + } + await dialog.dismiss(); + }); + + await frontendPage.goto('/?post_type=cp_recipe&p=' + postId, { waitUntil: 'networkidle' }); + + const xssTriggeredOnPage = await frontendPage.evaluate(() => window.xssTriggered === true); + + expect(xssAlertTriggered).toBe(false); + expect(frontendXssTriggered).toBe(false); + expect(xssTriggeredOnPage).toBe(false); + + // Verify onclick handler is not present + const pageContent = await frontendPage.content(); + expect(pageContent).not.toContain('onclick="window.xssTriggered'); + expect(pageContent).not.toContain("onclick='window.xssTriggered"); + + await frontendPage.close(); + execSync(`wp post delete ${postId} --force`); + }); + + test('Recipe ingredient names should be sanitized against XSS', async ({ adminContext }) => { + const adminPage = await adminContext.newPage(); + + let xssAlertTriggered = false; + adminPage.on('dialog', async (dialog) => { + if (dialog.message().includes('XSS')) { + xssAlertTriggered = true; + } + await dialog.dismiss(); + }); + + await adminPage.goto('/wp-admin/post-new.php?post_type=cp_recipe', { waitUntil: 'networkidle' }); + + const title = 'Test Recipe XSS Ingredients: ' + Date.now(); + + // Set recipe title + await adminPage.getByLabel('Recipe title ...').fill(title); + await adminPage.fill('input[name="_recipe_settings[prep_time]"]', '10'); + + // Set ingredient with XSS payload + await adminPage.evaluate((payload) => { + const ingredientBlocks = document.querySelectorAll('.cooked-ingredient-block'); + if (ingredientBlocks.length > 0) { + const firstIngredient = ingredientBlocks[0]; + const amountInput = firstIngredient.querySelector('input[data-ingredient-part="amount"]') as HTMLInputElement; + const itemInput = firstIngredient.querySelector('input[data-ingredient-part="name"]') as HTMLInputElement; + + if (amountInput) amountInput.value = '1'; + if (itemInput) itemInput.value = payload; + } + }, XSS_PAYLOADS.scriptTag); + + // Publish the recipe + await adminPage.getByRole('button', { name: 'Publish', exact: true }).click(); + + await Promise.all([ + adminPage.waitForURL(/post\.php\?post=\d+&action=edit/), + adminPage.waitForSelector('.notice-success', { timeout: 10000 }) + ]); + + const url = adminPage.url(); + const postIdMatch = url.match(/post=(\d+)/); + postId = postIdMatch ? parseInt(postIdMatch[1]) : 0; + expect(postId).toBeTruthy(); + + // View the recipe on the frontend + const frontendPage = await adminContext.newPage(); + + let frontendXssTriggered = false; + frontendPage.on('dialog', async (dialog) => { + if (dialog.message().includes('XSS')) { + frontendXssTriggered = true; + } + await dialog.dismiss(); + }); + + await frontendPage.goto('/?post_type=cp_recipe&p=' + postId, { waitUntil: 'networkidle' }); + + const xssTriggeredOnPage = await frontendPage.evaluate(() => window.xssTriggered === true); + + expect(xssAlertTriggered).toBe(false); + expect(frontendXssTriggered).toBe(false); + expect(xssTriggeredOnPage).toBe(false); + + // Verify the script tag is not present as executable + const pageContent = await frontendPage.content(); + expect(pageContent).not.toContain('