PageSourceSearch

https://www.valio.fi/wp-content/plugins/valio-ai-search/build/bloc…/view.js?ver=d706ddc107b4

js valio.fi collected 2026-09-24 17:12:40 UTC 198,442 bytes, 2 lines download raw bytes

1var __evermadeViteAssetBase=document.currentScript&&document.currentScript.tagName.toUpperCase()===`SCRIPT`&&document.currentScript.src||document.baseURI;(function(e,t,n){var r=document.createElement(`style`);r.textContent=`.vl-ai-search-content-results{width:100%}.vl-ai-search-content{color:#003478;padding-block:var(--spacing-64);gap:1.5rem;display:grid}.vl-ai-search-content__header{gap:1.25rem;display:grid}.vl-ai-search-content__header .vl-ai-search-content__title{font-family:var(--font-family-playfair);text-transform:none;letter-spacing:normal;flex-wrap:wrap;align-items:center;gap:.35em;margin:0;font-size:1.5rem;font-weight:500;line-height:1;display:flex}@media (width>=782px){.vl-ai-search-content__header{gap:2.5rem}.vl-ai-search-content__header .vl-ai-search-content__title{font-size:2.625rem}}.vl-ai-search-content__header--desktop{border-bottom:1px solid #6161614d}.vl-ai-search-content__back-to-list{height:3.5rem}.vl-ai-search-content__back-to-list-button{inset-inline:0;z-index:999;text-transform:uppercase;width:fit-content;color:var(--valio-action-blue);background:var(--valio-pure-white);border:2px solid var(--valio-action-blue);border-radius:2rem;align-items:center;gap:.55rem;margin-inline:auto;padding:.25rem 1em;font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .2s,color .2s;display:flex;position:fixed;bottom:1.5rem}.vl-ai-search-content__back-to-list-button svg{flex-shrink:0;transition:transform .2s}.vl-ai-search-content__back-to-list-button:focus-visible,.vl-ai-search-content__back-to-list-button:active{color:var(--valio-pure-white);background-color:var(--valio-action-blue);outline:2px solid var(--valio-action-blue);outline-offset:2px}.vl-ai-search-content__back-to-list-button:focus-visible svg,.vl-ai-search-content__back-to-list-button:active svg{transform:translate(-2px)}@media (hover:hover){.vl-ai-search-content__back-to-list-button:hover{color:var(--valio-pure-white);background-color:var(--valio-action-blue)}.vl-ai-search-content__back-to-list-button:hover svg{transform:translate(-2px)}}.vl-ai-search-content__count-skeleton{border-radius:.2em}.vl-ai-search-content__eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#565656;margin:0;font-size:.75rem;font-weight:800}.vl-ai-search-content__preview-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;display:grid}.vl-ai-search-content__preview-grid article{gap:.6rem;display:grid}.vl-ai-search-content__preview-grid article div{aspect-ratio:4/3;background:linear-gradient(135deg,#eadfd0,#f7efe6);border-radius:1rem}.vl-ai-search-content__preview-grid article h3{margin:0;font-size:1rem}@media (width<=960px){.vl-ai-search-content__preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=640px){.vl-ai-search-content__preview-grid{grid-template-columns:1fr}}.vl-range-slider{--_color-bg-active:var(--valio-action-blue);--_color-bg-inactive:var(--valio-ash-gray);--_color-text-primary:var(--valio-iconic-blue);--_color-text-secondary:#5f6368;--_color-focus-ring:#204dc647;--_thumb-size:1rem;--_track-height:.25rem;--_track-gap:.25rem;flex-direction:column;gap:.75rem;width:100%;max-width:25rem;margin-inline:auto;display:flex}.vl-range-slider__header{justify-content:flex-start;align-items:center;display:flex}.vl-range-slider.hide-label{gap:0}.vl-range-slider__label{color:var(--_color-text-primary);font-size:.875rem;font-weight:700;line-height:1.2}.vl-range-slider__label--visually-hidden,.vl-range-slider.hide-label .vl-range-slider__label{clip:rect(0 0 0 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.vl-range-slider__track-wrapper{flex-direction:column;gap:8px;display:flex}.vl-range-slider__track-container{height:var(--_thumb-size);align-items:center;display:flex;position:relative}.vl-range-slider__input{appearance:none;z-index:2;width:100%;height:var(--_track-height);background:var(--_color-bg-inactive);background-image:linear-gradient(var(--_color-bg-active), var(--_color-bg-active));border-radius:var(--radius-100);cursor:pointer;background-repeat:no-repeat;border:0;outline:none;margin:0;position:relative}
1.vl-range-slider__input::-webkit-slider-thumb{-webkit-appearance:none;width:var(--_thumb-size);height:var(--_thumb-size);background:var(--_color-bg-active);border-radius:var(--radius-100);cursor:grab;border:0;transition:transform .2s,box-shadow .2s}.vl-range-slider__input::-moz-range-thumb{width:var(--_thumb-size);height:var(--_thumb-size);background:var(--_color-bg-active);border-radius:var(--radius-100);cursor:grab;border:0;transition:transform .2s,box-shadow .2s}.vl-range-slider__input:active::-webkit-slider-thumb{cursor:grabbing;transform:scale(1.1)}.vl-range-slider__input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px var(--_color-focus-ring)}.vl-range-slider__steps{z-index:3;height:var(--_track-height);pointer-events:none;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.vl-range-slider__step-tick{width:var(--_track-gap);height:calc(var(--_track-height) + 2px);background-color:var(--valio-pure-white);position:absolute;top:50%;transform:translate(-50%,-50%)}.vl-range-slider__step-tick.is-active{background-color:var(--valio-pure-white)}.vl-range-slider__step-tick.is-current,.vl-range-slider__step-tick:first-child,.vl-range-slider__step-tick:last-child{display:none}.vl-range-slider__labels{width:100%;min-height:20px;position:relative}.vl-range-slider__label-text{color:var(--_color-text-secondary);text-align:center;white-space:nowrap;cursor:pointer;background:0 0;border:none;padding:0;font-size:.75rem;font-weight:500;line-height:1.2;transition:color .2s,transform .2s;position:absolute;top:0;transform:translate(-50%)}.vl-range-slider__label-text:first-child{text-align:left;transform:translate(0)}.vl-range-slider__label-text:last-child{text-align:right;transform:translate(-100%)}.vl-range-slider__label-text:hover{color:var(--_color-bg-active)}.vl-range-slider__label-text:focus-visible{border-radius:var(--radius-6);outline:3px solid var(--_color-focus-ring);outline-offset:var(--spacing-4)}.vl-range-slider__label-text.is-active{color:var(--_color-bg-active)}.vl-accordion-frame{--_inner-element-width:calc(100% - 2.5rem);border-top:1px solid var(--valio-ash-gray);padding-block:var(--spacing-16);overflow-x:clip}.vl-accordion-frame:first-child{border-top:0}.vl-accordion-frame__toggle{justify-content:space-between;align-items:center;gap:var(--spacing-16);width:var(--_inner-element-width);color:var(--valio-iconic-blue);text-align:left;background:var(--valio-pure-white);cursor:pointer;border:0;margin-inline:auto;font-size:.875rem;font-weight:500;line-height:1.2;list-style:none;display:flex}.vl-accordion-frame__toggle::-webkit-details-marker{display:none}.vl-accordion-frame__panel{min-width:0;width:var(--_inner-element-width);margin-inline:auto}.vl-accordion-frame__icon{color:var(--valio-iconic-blue);justify-content:center;align-items:center;transition:transform .16s;display:inline-flex}.vl-accordion-frame.is-open .vl-accordion-frame__icon{visibility:hidden}.vl-accordion-frame.is-open .vl-accordion-frame__toggle{margin-block-end:.625rem}.vl-accordion-frame.is-selected .vl-accordion-frame__label{align-items:center;gap:var(--spacing-8);display:inline-flex}.vl-dropdown-frame{--_toggle-background-color:#ffffff80;--_toggle-text-color:var(--valio-coal-black);--_toggle-border-color:#6161614d;display:inline-flex;position:relative}.vl-dropdown-frame__toggle{letter-spacing:0;color:var(--_toggle-text-color);white-space:nowrap;background:var(--_toggle-background-color);border:1px solid var(--_toggle-border-color);border-radius:var(--radius-100);cursor:pointer;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.9375rem;font-weight:500;line-height:1.1;display:inline-flex}.vl-dropdown-frame.is-selected .vl-dropdown-frame__toggle{--_toggle-background-color:#dbe3f6;--_toggle-text-color:var(--valio-action-blue);--_toggle-border-color:var(--valio-action-blue);gap:0}.vl-dropdown-frame--split .vl-dropdown-frame__main,.vl-dropdown-frame--split .vl-dropdown-frame__arrow{color:var(--_toggle-text-color);background:var(--_toggle-background-color);border:1px solid var(--_toggle-border-color);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.vl-dropdown-frame--split .vl-dropdown-frame__main{letter-spacing:0;white-space:nowrap;border-radius:var(--radius-100) 0 0 var(--radius-100);border-right:none;gap:.5rem;padding:.75rem 0 .75rem 1rem;font-size:.9375rem;font-weight:500;line-height:1.1}.vl-dropdown-frame--split .vl-dropdown-frame__arrow{border-radius:0 var(--radius-100) var(--radius-100) 0;border-left:none;padding:.75rem .875rem}.vl-dropdown-frame--split.is-selected .vl-dropdown-frame__main,.vl-dropdown-frame--split.is-selected .vl-dropdown-frame__arrow{--_toggle-background-color:#dbe3f6;--_toggle-text-color:var(--valio-action-blue);--_toggle-border-color:var(--valio-action-blue)}.vl-dropdown-frame--split.is-selected .vl-dropdown-frame__main{gap:0}.vl-dropdown-frame__label{align-items:center;gap:var(--spacing-6);text-overflow:ellipsis;display:inline-flex;overflow:hidden}.vl-dropdown-frame__count{min-width:1.25rem;height:1.25rem;padding-inline:var(--spacing-6);color:var(--valio-pure-white);background:var(--valio-action-blue);border:1px solid var(--valio-action-blue);border-radius:var(--radius-100);place-items:center;font-size:.75rem;font-weight:800;line-height:1;display:inline-grid}.vl-dropdown-frame__chevron{flex:none;width:1.15rem;height:1.15rem;transform:rotate(90deg)}.vl-dropdown-frame.is-open .vl-dropdown-frame__chevron{transform:rotate(-90deg)}.vl-dropdown-frame__panel{--_panel-available-height:calc(100vh - 6rem);--_panel-left:0;--_panel-max-width:25rem;--_panel-right:auto;z-index:10;top:calc(100% + var(--spacing-12));right:var(--_panel-right);left:var(--_panel-left);gap:var(--spacing-12);width:min(var(--_panel-max-width), 100vw - 3rem);box-sizing:border-box;max-width:min(var(--_panel-max-width), 100vw - 3rem);max-height:var(--_panel-available-height);padding:var(--spacing-16);background:var(--valio-pure-white);border-radius:var(--radius-24);overscroll-behavior:contain;border:1px solid #6161614d;display:grid;position:absolute;overflow-y:auto}.vl-dropdown-frame__panel-header{align-items:center;gap:var(--spacing-16);grid-template-columns:minmax(0,1fr) auto;display:grid}.vl-dropdown-frame__panel-title{color:var(--_toggle-text-color);font-size:.875rem;font-weight:500;line-height:1.25}.vl-dropdown-frame__panel-close{width:2rem;height:2rem;color:var(--_toggle-text-color);border-radius:var(--radius-100);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.vl-dropdown-frame__panel-close svg{width:1.5rem;height:1.5rem;color:var(--_toggle-text-color)}@media (width<=640px){.vl-dropdown-frame,.vl-dropdown-frame__toggle,.vl-dropdown-frame__panel{width:100%}.vl-dropdown-frame__toggle{justify-content:space-between}.vl-dropdown-frame__panel{min-width:0;max-width:100%}}.vl-field-email{width:100%;max-width:22.0625rem;flex-direction:column;margin-block-end:var(--spacing-16);display:flex;position:relative}@media (width<=782px){.vl-field-email{max-width:none}}.vl-field-email__label,.vl-field-email__help-text{font-family:var(--font-family-gotham);font-size:.875rem;font-weight:var(--font-weight-bold);letter-spacing:0;color:var(--valio-iconic-blue);margin-block-end:var(--spacing-8);line-height:1.25;display:block}.vl-field-email__help-text{font-weight:var(--font-weight-normal)}.vl-field-email__input{width:100%;padding:var(--spacing-12);box-sizing:border-box;visibility:visible;background-color:var(--valio-pure-white);border-radius:var(--radius-12,12px);opacity:1;border:1px solid #ccc;font-size:1rem;display:block}
1.vl-field-email__input:focus-visible{outline:2px solid var(--valio-action-blue);outline-offset:2px}.vl-field-email--error .vl-field-email__input{background-color:#fff4f4;border-color:#d12d2f}.vl-field-email__message{margin:var(--spacing-8) 0 0;font-family:var(--font-family-gotham);font-size:.875rem;font-weight:var(--font-weight-normal);letter-spacing:0;color:var(--valio-iconic-blue);line-height:1.25;display:block}.vl-field-email__message--error{color:#bd292a!important;font-size:.75rem!important}.vl-field-email__message--success{color:var(--valio-leaf-green)}.vl-field-email__message--error{margin:0;position:absolute;top:100%;left:0}.vl-multi-select-checkbox{border-width:0;min-width:0;max-width:22.0625rem;margin:0;padding:0}.vl-multi-select-checkbox+.vl-multi-select-checkbox{border-top:1px solid #61616133;margin-block-start:var(--spacing-24);padding-block-start:var(--spacing-24)}.vl-multi-select-checkbox__legend{float:left;width:100%;font-family:var(--font-family-gotham);font-size:.875rem;font-weight:var(--font-weight-bold);letter-spacing:0;color:var(--valio-iconic-blue);text-transform:uppercase;margin-block-end:var(--spacing-24);padding:0;line-height:1.2}.vl-multi-select-checkbox__options{clear:both}.vl-multi-select-checkbox__option{cursor:pointer;margin-block-end:.75rem;display:block;position:relative}.vl-multi-select-checkbox__option:last-child{margin-block-end:0}.vl-multi-select-checkbox__option input{opacity:0;cursor:pointer;width:0;height:0;position:absolute}.vl-multi-select-checkbox__option input:focus-visible+span:before{outline:2px solid var(--valio-action-blue);outline-offset:2px}.vl-multi-select-checkbox__option input:checked+span:before{background-color:var(--valio-blueberry-blue);border-color:var(--valio-blueberry-blue)}.vl-multi-select-checkbox__option input:checked+span:after{display:block}.vl-multi-select-checkbox__option span{font-family:var(--font-family-gotham);letter-spacing:0;color:var(--valio-iconic-blue);margin:0;padding-inline-start:2rem;font-size:.875rem;font-weight:500;line-height:125%;display:block;position:relative}.vl-multi-select-checkbox__option span:before{content:"";background-color:#fff;border:1px solid #61616133;border-radius:6px;width:1.5rem;height:1.5rem;transition:all .2s ease-in-out;position:absolute;top:50%;left:0;transform:translateY(-50%)}.vl-multi-select-checkbox__option span:after{content:"";background-image:url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.3327 4L5.99935 11.3333L2.66602 8' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");background-position:50%;background-repeat:no-repeat;background-size:1rem;width:1rem;height:1rem;display:none;position:absolute;top:50%;left:.25rem;transform:translateY(-50%)}.vl-multi-select-checkbox__option span:hover:before{border-color:var(--valio-blueberry-blue)}.vl-multi-select-checkbox__option.is-disabled{opacity:.5;cursor:default}.vl-multi-select-checkbox__option.is-disabled input{cursor:default}.vl-field-password{width:100%;max-width:22.0625rem;flex-direction:column;margin-block-end:var(--spacing-16);display:flex;position:relative}@media (width<=782px){.vl-field-password{max-width:none}}.vl-field-password__label,.vl-field-password__help-text{font-family:var(--font-family-gotham);font-size:.875rem;font-weight:var(--font-weight-bold);letter-spacing:0;color:var(--valio-iconic-blue);margin-block-end:var(--spacing-8);line-height:1.25;display:block}.vl-field-password__help-text{font-weight:var(--font-weight-normal)}.vl-field-password__input{width:100%;padding:var(--spacing-12);box-sizing:border-box;visibility:visible;background-color:var(--valio-pure-white);border-radius:var(--radius-12,12px);opacity:1;border:1px solid #ccc;font-size:1rem;display:block}.vl-field-password__input:focus-visible{outline:2px solid var(--valio-action-blue);outline-offset:2px}.vl-field-password__input{padding-inline-end:3rem}.vl-field-password--toggle-hidden .vl-field-password__input{padding-inline-end:var(--spacing-12)}.vl-field-password__input-wrapper{position:relative}.vl-field-password--error .vl-field-password__input{background-color:#fff4f4;border-color:#d12d2f}.vl-field-password__toggle{top:50%;right:var(--spacing-16);cursor:pointer;background-color:#0000;background-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.4 17.1975C15.846 18.3376 13.9537 18.9693 12 19C5.63636 19 2 12 2 12C3.13081 9.97167 4.69921 8.19955 6.6 6.80252M10.0909 5.21002C10.7167 5.06904 11.3573 4.99857 12 5.00002C18.3636 5.00002 22 12 22 12C21.4482 12.9937 20.7901 13.9292M13.9273 13.855C13.6776 14.1129 13.3765 14.3198 13.042 14.4632C12.7074 14.6067 12.3463 14.6839 11.9801 14.6901C11.6139 14.6963 11.2501 14.6315 10.9106 14.4994' stroke='%23616161' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M2 2L22 22' stroke='%23616161' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:1.5rem;border:0;width:1.5rem;height:1.5rem;margin:0;padding:0;position:absolute;transform:translateY(-50%)}.vl-field-password__toggle:focus-visible{outline:2px solid var(--valio-action-blue);outline-offset:2px}.vl-field-password__message{margin:var(--spacing-8) 0 0;font-family:var(--font-family-gotham);font-size:.875rem;font-weight:var(--font-weight-normal);letter-spacing:0;color:var(--valio-iconic-blue);line-height:1.25;display:block}.vl-field-password__message--error{color:#bd292a!important;font-size:.75rem!important}.vl-field-password__message--success{color:var(--valio-leaf-green)}.vl-field-password__input-wrapper .vl-field-password__message--error{margin:0;position:absolute;top:100%;left:0}.vl-field-password__forgot-password{margin:var(--spacing-16) 0 0;font-family:var(--font-family-gotham);font-size:.875rem;font-weight:var(--font-weight-bold);letter-spacing:0;color:var(--valio-iconic-blue);cursor:pointer;background-color:#0000;border:0;align-self:flex-end;padding:0;line-height:1.2}.vl-field-password__forgot-password:focus-visible{outline:2px solid var(--valio-action-blue);outline-offset:2px}.vl-field-password__strength{padding-inline:var(--spacing-4);margin-block-start:var(--spacing-12)}.vl-field-password__strength-bar{gap:var(--spacing-4);margin-block-end:var(--spacing-4);display:flex}.vl-field-password__strength-segment{height:var(--spacing-4);border-radius:var(--radius-6,6px);background-color:#d9d9d9;flex:1;transition:background-color .3s}.vl-field-password__strength[data-strength=weak] .vl-field-password__strength-segment:first-child{background-color:var(--valio-strawberry-red)}.vl-field-password__strength[data-strength=medium] .vl-field-password__strength-segment:nth-child(-n+2){background-color:var(--valio-turmeric-yellow)}.vl-field-password__strength[data-strength=strong] .vl-field-password__strength-segment{background-color:var(--valio-leaf-green)}.vl-field-password__strength-text{margin:var(--spacing-16) 0 0;font-family:var(--font-family-gotham);font-size:1rem;font-weight:var(--font-weight-normal);letter-spacing:0;color:var(--valio-iconic-blue);line-height:1.2}.vl-pill-drilldown-multi-select{--_option-background-color:var(--valio-pure-white);
1--_option-text-color:var(--valio-iconic-blue);--_option-border-color:#61616180;--_text-font-size:.875rem;gap:var(--spacing-12) var(--spacing-14);border:none;min-width:0;max-width:100%;margin:0;padding:0;display:flex}.vl-pill-drilldown-multi-select--grid{flex-wrap:wrap}.vl-pill-drilldown-multi-select__item{justify-content:center;align-items:center;gap:var(--spacing-8);font:inherit;font-size:var(--_text-font-size);line-height:inherit;color:var(--_option-text-color);appearance:none;background:var(--_option-background-color);border:1px solid var(--_option-border-color);border-radius:var(--radius-36);cursor:pointer;flex:none;padding:.5rem .75rem;display:inline-flex;position:relative}.vl-pill-drilldown-multi-select__item.is-active{--_option-background-color:#dbe3f6;--_option-text-color:var(--valio-action-blue);--_option-border-color:var(--valio-action-blue)}.vl-pill-drilldown-multi-select__item.is-disabled{--_option-background-color:#f7f3ed33;--_option-text-color:#616161;--_option-border-color:#f7f3ed;cursor:default}.vl-pill-drilldown-multi-select__branch{gap:0;min-inline-size:0;margin:0;padding:0}.vl-pill-drilldown-multi-select__branch-select,.vl-pill-drilldown-multi-select__branch-enter{justify-content:center;align-items:center;gap:var(--spacing-8);min-width:0;font:inherit;font-size:var(--_text-font-size);line-height:inherit;color:inherit;appearance:none;cursor:inherit;background:0 0;border:0;padding-block:.5rem;display:inline-flex}.vl-pill-drilldown-multi-select__branch-select{padding-inline:.75rem .25rem}.vl-pill-drilldown-multi-select__branch-enter{padding-inline:.25rem .75rem}.vl-pill-drilldown-multi-select__input{opacity:0;clip:rect(0 0 0 0);clip-path:inset(50%);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.vl-pill-drilldown-multi-select__label{text-overflow:ellipsis;overflow:hidden}.vl-pill-drilldown-multi-select__back{width:2.55rem;height:2.55rem;padding:0}.vl-pill-drilldown-multi-select__icon{flex:none;width:.875rem;height:.875rem}.vl-pill-drilldown-multi-select__count{min-width:1.25rem;height:1.25rem;padding-inline:var(--spacing-6);font-size:calc(var(--_text-font-size) * .75);color:var(--valio-action-blue);background:var(--valio-pure-white);border:1px solid var(--valio-action-blue);border-radius:var(--radius-100);place-items:center;font-weight:700;line-height:1;display:inline-grid}@keyframes skeleton-loader{0%{background-position:200% 0}to{background-position:-200% 0}}.vl-pill-multi-select{--_option-background-color:var(--valio-pure-white);--_option-text-color:var(--valio-iconic-blue);--_option-border-color:#61616180;gap:var(--spacing-12) var(--spacing-14);border:none;min-width:0;max-width:100%;margin:0;padding:0;display:flex}.vl-pill-multi-select--grid{flex-wrap:wrap}.vl-pill-multi-select--slider{width:100%;min-inline-size:0;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;cursor:grab;touch-action:pan-x;flex-wrap:nowrap;padding-block-end:var(--spacing-2);overflow:auto hidden}.vl-pill-multi-select--slider::-webkit-scrollbar{display:none}.vl-pill-multi-select--slider:active{cursor:grabbing}.vl-pill-multi-select__item{justify-content:center;align-items:center;gap:var(--spacing-8);color:var(--_option-text-color);background:var(--_option-background-color);border:1px solid var(--_option-border-color);border-radius:var(--radius-36);cursor:pointer;flex:none;padding:.5rem .75rem;font-size:.875rem;display:inline-flex;position:relative}.vl-pill-multi-select--natural-white .vl-pill-multi-select__item{--_option-background-color:var(--valio-natural-white);--_option-text-color:var(--valio-iconic-blue);--_option-border-color:#61616180}.vl-pill-multi-select__item.is-active{--_option-background-color:#dbe3f6;--_option-text-color:var(--valio-action-blue);--_option-border-color:var(--valio-action-blue)}.vl-pill-multi-select__item.is-disabled{--_option-background-color:#f7f3ed33;--_option-text-color:#616161;--_option-border-color:#f7f3ed;cursor:default}.vl-pill-multi-select__input{opacity:0;clip:rect(0 0 0 0);clip-path:inset(50%);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.vl-pill-multi-select__label{text-overflow:ellipsis;overflow:hidden}.vl-pill-multi-select__icon{background:var(--valio-mist);border-radius:var(--radius-100);justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.875rem;line-height:1;display:inline-flex;overflow:hidden}.vl-pill-multi-select__icon-image{object-fit:contain;width:100%;height:100%;display:block}.vl-pill-multi-select__count{color:var(--valio-action-blue);border:1px solid var(--valio-action-blue);border-radius:var(--radius-100);background:#dbe3f6;place-items:center;padding:.125em .75em;font-size:.875rem;font-weight:700;display:grid}.vl-pill-multi-select__skeleton{border-radius:var(--radius-36);min-width:5rem}.vl-pill-multi-select-list{border:0;flex-direction:column;gap:.5rem;margin:0 auto;padding:0;display:flex}.vl-pill-multi-select-list__item{width:100%;position:relative}.vl-pill-multi-select-list__input{opacity:0;pointer-events:none;position:absolute}.vl-pill-multi-select-list__label{box-sizing:border-box;width:100%;font-family:var(--font-family-gotham);font-size:.875rem;font-weight:var(--font-weight-bold);color:var(--valio-iconic-blue,#002f6d);cursor:pointer;background:#fff6;border:1px solid #dfe3e6;border-radius:1.5rem;align-items:center;gap:.5rem;padding:.625rem 1rem;line-height:1.25;display:flex}.vl-pill-multi-select-list__input:checked+.vl-pill-multi-select-list__label{background:var(--color-white,#fff)}.vl-pill-multi-select-list__input:focus-visible+.vl-pill-multi-select-list__label{outline:2px solid var(--valio-action-blue,#0046a
1d);outline-offset:2px}.vl-pill-multi-select-list__input:disabled+.vl-pill-multi-select-list__label{cursor:not-allowed;opacity:.5}.vl-pill-multi-select-list__image{flex:0 0 1.5rem;width:1.5rem;height:1.5rem;display:inline-flex}.vl-pill-multi-select-list__image>img{object-fit:contain;width:100%;height:100%}.vl-pill-multi-select-tag-cloud{border:0;flex-wrap:wrap;justify-content:center;gap:.5rem;margin:0 auto;padding:0;display:flex}.vl-pill-multi-select-tag-cloud__item{position:relative}.vl-pill-multi-select-tag-cloud__input{opacity:0;pointer-events:none;position:absolute}.vl-pill-multi-select-tag-cloud__label{font-family:var(--font-family-gotham);font-size:.875rem;font-weight:var(--font-weight-bold);color:var(--valio-iconic-blue,#002f6d);cursor:pointer;background:#fff6;border:1px solid #dfe3e6;border-radius:1.5rem;align-items:center;gap:.5rem;padding:.625rem 1rem;line-height:1.25;display:inline-flex}.vl-pill-multi-select-tag-cloud__input:checked+.vl-pill-multi-select-tag-cloud__label{background:var(--color-white,#fff)}.vl-pill-multi-select-tag-cloud__input:focus-visible+.vl-pill-multi-select-tag-cloud__label{outline:2px solid var(--valio-action-blue,#0046ad);outline-offset:2px}.vl-pill-multi-select-tag-cloud__input:disabled+.vl-pill-multi-select-tag-cloud__label{cursor:not-allowed;opacity:.5}.vl-pill-multi-select-tag-cloud__image{width:1.5rem;height:1.5rem;display:inline-flex}.vl-pill-multi-select-tag-cloud__image>img{object-fit:contain;width:100%;height:100%}.vl-pill-nested-multi-select{--_option-background-color:var(--valio-pure-white);--_option-text-color:var(--valio-iconic-blue);--_option-border-color:#61616180;--_text-font-size:.875rem;gap:var(--spacing-12) var(--spacing-14);border:none;min-width:0;max-width:100%;margin:0;padding:0;display:flex}.vl-pill-nested-multi-select--grid{flex-wrap:wrap}.vl-pill-nested-multi-select--slider{width:100%;min-inline-size:0;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;cursor:grab;touch-action:pan-x;flex-wrap:nowrap;padding-block-end:var(--spacing-2);overflow:auto hidden}.vl-pill-nested-multi-select--slider::-webkit-scrollbar{display:none}.vl-pill-nested-multi-select--slider:active{cursor:grabbing}.vl-pill-nested-multi-select--natural-white .vl-pill-nested-multi-select__item{--_option-background-color:var(--valio-natural-white);--_option-text-color:var(--valio-iconic-blue);--_option-border-color:#61616180}.vl-pill-nested-multi-select__item{justify-content:center;align-items:center;gap:var(--spacing-8);font:inherit;font-size:var(--_text-font-size);line-height:inherit;color:var(--_option-text-color);appearance:none;background:var(--_option-background-color);border:1px solid var(--_option-border-color);border-radius:var(--radius-36);cursor:pointer;flex:none;padding:.5rem .75rem;display:inline-flex;position:relative}.vl-pill-nested-multi-select__item.is-active{--_option-background-color:#dbe3f6;--_option-text-color:var(--valio-action-blue);--_option-border-color:var(--valio-action-blue)}.vl-pill-nested-multi-select__item.is-disabled{--_option-background-color:#f7f3ed33;--_option-text-color:#616161;--_option-border-color:#f7f3ed;cursor:default}.vl-pill-nested-multi-select__branch{gap:0;min-inline-size:0;margin:0;padding:0}.vl-pill-nested-multi-select__branch-select,.vl-pill-nested-multi-select__branch-enter{justify-content:center;align-items:center;gap:var(--spacing-8);min-width:0;font:inherit;font-size:var(--_text-font-size);line-height:inherit;color:inherit;appearance:none;cursor:inherit;background:0 0;border:0;padding-block:.5rem;display:inline-flex}.vl-pill-nested-multi-select__branch-select{padding-inline:.75rem .25rem}.vl-pill-nested-multi-select__branch-enter{padding-inline:.25rem .75rem}.vl-pill-nested-multi-select__input{opacity:0;clip:rect(0 0 0 0);clip-path:inset(50%);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.vl-pill-nested-multi-select__label{text-overflow:ellipsis;overflow:hidden}.vl-pill-nested-multi-select__back{width:2.55rem;height:2.55rem;padding:0}.vl-pill-nested-multi-select__icon{flex:none;width:.875rem;height:.875rem}.vl-pill-nested-multi-select__option-icon{width:1.5rem;height:1.5rem;font-size:var(--_text-font-size);background:var(--valio-mist);border-radius:var(--radius-100);justify-content:center;align-items:center;line-height:1;display:inline-flex;overflow:hidden}.vl-pill-nested-multi-select__icon-image{object-fit:contain;width:100%;height:100%;display:block}.vl-pill-nested-multi-select__count{min-width:1.25rem;height:1.25rem;padding-inline:var(--spacing-6);font-size:calc(var(--_text-font-size) * .75);color:var(--valio-action-blue);background:var(--valio-pure-white);border:1px solid var(--valio-action-blue);border-radius:var(--radius-100);place-items:center;font-weight:700;line-height:1;display:inline-grid}.vl-pill-nested-multi-select__skeleton{border-radius:var(--radius-36);min-width:5rem}.vl-pill-toggle-switch{--_option-background-color:#ffffff80;--_option-text-color:var(--valio-coal-black);--_option-border-color:#6161614d;justify-content:center;align-items:center;gap:var(--spacing-8);letter-spacing:0;color:var(--_option-text-color);white-space:nowrap;background:var(--_option-background-color);border:1px solid var(--_option-border-color);border-radius:var(--radius-36);cursor:pointer;flex:none;padding:.75rem 1rem;font-size:.9375rem;font-weight:500;line-height:1.1;display:inline-flex;position:relative}.vl-pill-toggle-switch.is-active{--_option-background-color:#dbe3f6;--_option-text-color:var(--valio-action-blue);
1--_option-border-color:var(--valio-action-blue)}.vl-pill-toggle-switch.is-disabled{--_option-background-color:#f7f3ed33;--_option-text-color:#616161;--_option-border-color:#6161614d;cursor:default}.vl-pill-toggle-switch__input{opacity:0;clip:rect(0 0 0 0);clip-path:inset(50%);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.vl-pill-toggle-switch__label{text-overflow:ellipsis;overflow:hidden}.vl-pill-toggle-switch-group{gap:var(--spacing-12) var(--spacing-14);border:none;min-width:0;max-width:100%;margin:0;padding:0;display:flex}.vl-pill-toggle-switch-group--grid{flex-wrap:wrap}.vl-pill-toggle-switch-group--slider{width:100%;min-inline-size:0;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;cursor:grab;touch-action:pan-x;flex-wrap:nowrap;padding-block-end:var(--spacing-2);overflow:auto hidden}.vl-pill-toggle-switch-group--slider::-webkit-scrollbar{display:none}.vl-pill-toggle-switch-group--slider:active{cursor:grabbing}.vl-pill-toggle-switch-group--natural-white .vl-pill-toggle-switch:not(.is-active):not(.is-disabled){--_option-background-color:var(--valio-natural-white);--_option-text-color:var(--valio-iconic-blue);--_option-border-color:#61616180}.vl-pill-toggle-switch-group__item{flex:none}:where(.vl-c-btn-circle){--_text-color:var(--valio-pure-white);--_background-color:var(--valio-action-blue);--_border-color:var(--valio-action-blue);letter-spacing:.0088rem;text-transform:uppercase;width:2.875rem;height:auto;color:var(--_text-color);background-color:var(--_background-color);border:1.5px solid var(--_border-color);aspect-ratio:1;cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-self:center;align-items:center;margin:0;padding:0;transition:all .25s cubic-bezier(.19,1,.22,1);display:inline-flex}:where(.vl-c-btn-circle):focus-visible,:where(.vl-c-btn-circle):active{outline:2px solid var(--valio-action-blue);outline-offset:2px;transition:none}@media (hover:hover){:where(.vl-c-btn-circle):hover{--_text-color:var(--valio-pure-white);--_background-color:var(--valio-action-blue);--_border-color:var(--valio-action-blue);filter:brightness(1.1)}:where(.vl-c-btn-circle):hover svg path{stroke:var(--_text-color)}}:where(.vl-c-btn-circle):disabled{opacity:.5;pointer-events:none;color:var(--color-gray-500)}:where(.vl-c-btn-circle):disabled svg path{stroke:var(--color-gray-500)}:where(.vl-c-btn-circle):disabled{pointer-events:none;cursor:default}:where(.vl-c-btn-circle).is-size-sm{width:1.875rem;padding:.25rem}:where(.vl-c-btn-circle--secondary){--_text-color:var(--color-brand);--_background-color:var(--valio-pure-white);--_border-color:var(--valio-pure-white)}:where(.vl-c-btn-circle--tertiary){--_text-color:var(--color-brand);--_background-color:var(--valio-natural-white);--_border-color:#61616180}.vl-c-btn-circle{font-size:.875rem;font-weight:var(--font-weight-medium);line-height:1.1}:where(.vl-c-btn-dashed){color:var(--color-brand);letter-spacing:.0088rem;cursor:pointer;background-color:#0000;border:1px dashed #61616173;border-radius:.5rem;flex-shrink:0;justify-content:center;align-self:center;align-items:center;gap:.375rem;width:100%;height:3.5rem;padding:.875rem 1rem;transition:all .25s cubic-bezier(.19,1,.22,1);display:inline-flex}:where(.vl-c-btn-dashed):focus-visible{outline:2px solid var(--valio-action-blue);outline-offset:2px;transition:none}:where(.vl-c-btn-dashed):hover{border-color:var(--color-brand)}.vl-c-btn-dashed{font-size:1rem;line-height:1.2;font-weight:var(--font-weight-medium)}:where(.vl-c-btn-link){--_text-color:var(--valio-pure-white);--_background-color:var(--valio-action-blue);--_border-color:var(--valio-action-blue);letter-spacing:.0088rem;text-transform:uppercase;border:2px solid var(--_border-color);cursor:pointer;border-radius:1.5rem;flex-shrink:0;align-self:center;align-items:center;gap:.375rem;width:max-content;height:2.4375rem;padding:.75rem 1.375rem;transition:all .25s cubic-bezier(.19,1,.22,1);display:inline-flex}:where(.vl-c-btn-link):focus-visible{outline:2px solid var(--valio-action-blue);outline-offset:2px;transition:none}:where(.vl-c-btn-link):hover,:where(.vl-c-btn-link):active{--_text-color:var(--valio-pure-white);--_background-color:var(--valio-action-blue);--_border-color:var(--valio-action-blue);filter:brightness(1.1)}:where(.vl-c-btn-link):hover svg path,:where(.vl-c-btn-link):active svg path{stroke:var(--_text-color)}:where(.vl-c-btn-link):disabled{opacity:.5;pointer-events:none;color:var(--color-gray-500)}:where(.vl-c-btn-link):disabled svg path{stroke:var(--color-gray-500)}:where(.vl-c-btn-link):disabled{pointer-events:none;cursor:default}:where(.vl-c-btn-link).is-size-sm{padding:.25rem .5rem;font-size:.875rem}.vl-c-btn-link{color:var(--_text-color);background-color:var(--_background-color)}:where(.vl-c-btn-link--secondary){--_text-color:var(--color-brand);--_background-color:var(--valio-pure-white);--_border-color:var(--valio-pure-white)}:where(.vl-c-btn-link--outline){--_text-color:var(--valio-action-blue);--_background-color:var(--valio-pure-white);--_border-color:var(--valio-action-blue)}:where(.vl-c-btn-link--text){--_text-color:var(--valio-action-blue);--_background-color:transparent;--_border-color:transparent;padding:0}:where(.vl-c-btn-link--text):hover,:where(.vl-c-btn-link--text):active{--_text-color:var(--valio-action-blue);--_background-color:transparent;--_border-color:transparent}.vl-c-btn-link{font-size:.875rem;font-weight:var(--font-weight-medium)}:where(.vl-c-btn-pill){--_text-color:var(--valio-pure-white);--_background-color:var(--valio-action-blue);--_border-color:var(--valio-action-blue);letter-spacing:.0088rem;text-transform:uppercase;width:max-content;height:2.4375rem;color:var(--_text-color);background-color:var(--_background-color);border:2px solid var(--_border-color);cursor:pointer;border-radius:1.5rem;flex-shrink:0;align-self:center;align-items:center;gap:.375rem;padding:.75rem 1.375rem;transition:all .25s cubic-bezier(.19,1,.22,1);display:inline-flex}:where(.vl-c-btn-pill):focus-visible{outline:2px solid var(--valio-action-blue);outline-offset:2px;transition:none}:where(.vl-c-btn-pill).is-size-sm{padding:.25rem .5rem;font-size:.875rem}:where(.vl-c-btn-pill):hover,:where(.vl-c-btn-pill):active{--_text-color:var(--valio-pure-white);--_background-color:var(--valio-action-blue);--_border-color:var(--valio-action-blue);filter:brightness(1.1)}:where(.vl-c-btn-pill):hover svg path,:where(.vl-c-btn-pill):active svg path{stroke:var(--_text-color)}:where(.vl-c-btn-pill):disabled{opacity:.7;pointer-events:none;color:#fff;background-color:#204cc5}:where(.vl-c-btn-pill):disabled svg path{stroke:unset}:where(.vl-c-btn-pill):disabled{pointer-events:none;cursor:default}:where(.vl-c-btn-pill--primary-tinted){--_text-color:var(--valio-pure-white);--_background-color:#4d55df;--_border-color:#4d55df}:where(.vl-c-btn-pill--primary-tinted):hover,:where(.vl-c-btn-pill--primary-tinted):active{--_text-color:var(--valio-pure-white);--_background-color:#1e00cf;--_border-color:#1e00cf}:where(.vl-c-btn-pill--secondary){--_text-color:var(--color-brand);--_background-color:var(--valio-pure-white);--_border-color:var(--valio-pure-white)}:where(.vl-c-btn-pill--outline){--_text-color:var(--valio-action-blue);--_background-color:var(--valio-pure-white);--_border-color:var(--valio-action-blue)}:where(.vl-c-btn-pill--outline-tinted){--_text-color:#11181e;--_background-color:transparent;--_border-color:#4d55df}:where(.vl-c-btn-pill--outline-tinted):hover,:where(.vl-c-btn-pill--outline-tinted):active{--_text-color:var(--valio-pure-white);--_background-color:#4d55df;--_border-color:#4d55df}:where(.vl-c-btn-pill--text){--_text-color:var(--valio-action-blue);--_background-color:transparent;--_border-color:transparent;height:fit-content;padding:0}:where(.vl-c-btn-pill--text):hover,:where(.vl-c-btn-pill--text):active{--_text-color:var(--valio-action-blue);--_background-color:transparent;--_border-color:transparent}:where(.vl-c-btn-pill--text):disabled{opacity:1;pointer-events:none;cursor:default;color:var(--color-gray-500);background-color:#0000}:where(.vl-c-btn-pill--text):disabled svg path{stroke:var(--color-gray-500)}.vl-c-btn-pill{font-size:.875rem;font-weight:var(--font-weight-medium);line-height:1}.vl-c-btn-close{background-color:var(--valio-natural-white);cursor:pointer;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;font-size:2rem;line-height:1;transition:all .25s ease-in-out;display:inline-flex}.vl-c-btn-close:focus-visible{outline:2px solid var(--valio-action-blue);outline-offset:2px;transition:none}.vl-c-btn-close svg{width:2rem;height:2rem}.vl-c-btn-close:hover{border-color:var(--color-brand)}:where(.vl-c-btn-provider){--_text-color:var(--valio-iconic-blue);--_background-color:var(--valio-pure-white);--_border-color:#61616133;letter-spacing:.0088rem;text-transform:uppercase;width:100%;height:2.4375rem;color:var(--_text-color);background-color:var(--_background-color);border:2px solid var(--_border-color);cursor:pointer;border-radius:1.5rem;flex-shrink:0;align-self:center;align-items:center;gap:.375rem;padding:.75rem 1.375rem;transition:all .25s cubic-bezier(.19,1,.22,1);display:inline-flex}:where(.vl-c-btn-provider)>span{text-align:center;width:100%}:where(.vl-c-btn-provider):focus-visible{outline:2px solid var(--valio-action-blue);outline-offset:2px;transition:none}:where(.vl-c-btn-provider):hover,:where(.vl-c-btn-provider):active{--_background-color:var(--valio-light-grey)}:where(.vl-c-btn-provider):disabled{opacity:.7;pointer-events:none;color:#fff;background-color:#204cc5}:where(.vl-c-btn-provider):disabled svg path{stroke:unset}:where(.vl-c-btn-provider):disabled{pointer-events:none;cursor:default}.vl-c-btn-provider{font-size:1rem;font-weight:var(--font-weight-medium);height:2.875rem;line-height:1}.vl-sort-options{--_backdrop-background:#2d2f37e0;--_border-color:#6161614d;--_clear-color:#11181e94;--_dialog-background:var(--valio-pure-white);--_dialog-color:var(--valio-iconic-blue);--_dialog-shadow:0 1.25rem 2.5rem #11181e29;--_dialog-width:20rem;--_option-border-color:#071e4a29;--_text-font-size:.875rem;display:inline-flex;position:relative}@media (width>=782px){.vl-sort-options{--_text-font-size:.9375rem}}.vl-sort-options__trigger{justify-content:center;align-items:center;gap:var(--spacing-6);min-height:2.25rem;padding:var(--spacing-8) var(--spacing-14);font:inherit;font-size:var(--_text-font-size);letter-spacing:0;color:var(--valio-coal-black);background:var(--_dialog-background);border:1px solid var(--_border-color);border-radius:var(--radius-100);cursor:pointer;font-weight:500;line-height:1;display:inline-flex}@media (width>=782px){.vl-sort-options__trigger{gap:var(--spacing-8);background:0 0;border-color:#0000;min-height:auto;padding:0}}.vl-sort-options__trigger-icon{justify-content:center;align-items:center;display:inline-flex}.vl-sort-options__trigger-label{white-space:nowrap}.vl-sort-options__backdrop{z-index:10000;padding:var(--spacing-32) 0 0;background:var(--_backdrop-background);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=782px){.vl-sort-options__backdrop{z-index:10000;top:calc(100% + var(--spacing-12));background:0 0;padding:0;display:block;position:absolute;bottom:auto;left:auto;right:0}}.vl-sort-options__dialog{width:100%;max-height:calc(100vh - var(--spacing-64));color:var(--_dialog-color);background:var(--_dialog-background);border-radius:var(--radius-24) var(--radius-24) 0 0;grid-template-rows:auto 1fr auto;display:grid;overflow:hidden}@media (width>=782px){.vl-sort-options__dialog{width:var(--_dialog-width);border:1px solid var(--_border-color);border-radius:var(--radius-24);max-height:min(26rem,100vh - 8rem);box-shadow:var(--_dialog-shadow)}}.vl-sort-options__header{align-items:center;gap:var(--spacing-24) var(--spacing-16);padding-block:var(--spacing-16) var(--spacing-24);padding-inline:var(--spacing-16);background:var(--valio-natural-white);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:".close""title clear";display:grid}@media (width>=782px){.vl-sort-options__header{gap:var(--spacing-16);padding:var(--spacing-16) var(--spacing-24);grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:none}}.vl-sort-options__title{font-size:var(--_text-font-size);letter-spacing:0;text-transform:none;grid-area:title;margin:0;font-weight:700;line-height:1.2}@media (width>=782px){.vl-sort-options__title{grid-area:auto;font-weight:500}}.vl-sort-options__clear{font:inherit;font-size:var(--_text-font-size);color:var(--_clear-color);cursor:pointer;background:0 0;border:0;grid-area:clear;padding:0;font-weight:500;line-height:1}@media (width>=782px){.vl-sort-options__clear{grid-area:auto;display:none}}.vl-sort-options__close{grid-area:close;justify-self:end;padding:0}.vl-sort-options__close>svg{width:1.25rem;height:1.25rem}@media (width>=782px){.vl-sort-options__close{grid-area:auto;display:none}}.vl-sort-options__list{padding-inline:var(--spacing-16);overflow-y:auto}@media (width>=782px){.vl-sort-options__list{padding:0 var(--spacing-24)}}.vl-sort-options__option{align-items:center;gap:var(--spacing-16);width:100%;padding:var(--spacing-16) 0;font-size:var(--_text-font-size);text-align:left;color:var(--valio-iconic-blue);cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;font-weight:400;line-height:1.2;display:grid}.vl-sort-options__option.is-selected{font-weight:500}.vl-sort-options__option:not(:last-child){border-bottom:1px solid var(--_option-border-color)}.vl-sort-options__check{justify-content:center;align-items:center;display:inline-flex}.vl-sort-options__footer{padding-inline:var(--spacing-16);padding-block:var(--spacing-24);justify-content:center;display:flex}@media (width>=782px){.vl-sort-options__footer{display:none}}.vl-field-text{flex-direction:column;gap:.5rem;width:min(100%,24rem);margin-inline:auto;display:flex}.vl-field-text__label{font-size:.875rem;font-weight:500;line-height:1.25}.vl-field-text__label--hidden{white-space:nowrap;clip:rect(0, 0, 0, 0);clip-path:inset(50%);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.vl-field-text__input{box-sizing:border-box;width:100%;font:inherit;background-color:var(--color-white,#fff);border-radius:var(--radius-radius-12,12px);border:1px solid #ccc;padding:.75rem}.vl-field-text__input:focus-visible{outline:2px solid var(--valio-action-blue,#0046a
1d);outline-offset:2px}.vl-field-text__input::placeholder{transition:opacity .3s ease-in-out}.vl-field-text__input:focus::placeholder{opacity:0}.vl-field-text__status{margin:0;font-size:.875rem;line-height:1.25}.vl-field-text--error{color:var(--color-error,#bd292a)}.vl-field-text--error .vl-field-text__input{border-color:currentColor}.vl-field-text--success{color:var(--valio-rosemary-green,#00695c)}.vl-ai-search-content__controls{align-items:start;gap:1rem;display:grid}@media (width>=782px){.vl-ai-search-content__controls{grid-template-columns:minmax(0,1fr) auto;align-items:center}}.vl-ai-search-content__mobile-controls{gap:var(--spacing-24);display:grid}.vl-ai-search-content__mobile-actions{justify-content:flex-end;align-items:center;gap:var(--spacing-12);display:flex}.vl-ai-search-content.has-filters .vl-ai-search-content__mobile-actions{justify-content:space-between}.vl-ai-search-content__filter-trigger{align-items:center;gap:var(--spacing-6);min-height:2.25rem;padding:var(--spacing-8) var(--spacing-14);font:inherit;color:var(--valio-action-blue);background:var(--valio-pure-white);border:1px solid var(--valio-action-blue);border-radius:var(--radius-100);cursor:pointer;font-size:.875rem;font-weight:500;line-height:1;display:inline-flex}.vl-ai-search-content__filter-trigger>svg{width:1em;height:1em}.vl-ai-search-content__tabs{gap:1.35rem;min-width:0;display:flex;overflow-x:auto}.vl-ai-search-content__tabs button{color:#4e4e4e;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:0 0 .5rem;font-size:.9375rem;font-weight:500;line-height:1.3;position:relative}@media (width>=782px){.vl-ai-search-content__tabs button{font-size:1.0625rem}}.vl-ai-search-content__header--mobile .vl-ai-search-content__tabs{border-bottom:1px solid #6161614d}.vl-ai-search-content .vl-sort-options{justify-self:start}@media (width>=782px){.vl-ai-search-content .vl-sort-options{justify-self:end}}.vl-ai-search-content__tab.is-active,.vl-ai-search-content__tabs button[aria-selected=true]{color:#0046ff}.vl-ai-search-content__tab.is-active:after,.vl-ai-search-content__tabs button[aria-selected=true]:after{content:"";background:currentColor;border-top-left-radius:1rem;border-top-right-radius:1rem;height:2px;position:absolute;bottom:0;left:0;right:0}.vl-ai-search__filters{z-index:20;gap:var(--spacing-16);display:grid;position:relative}.vl-ai-search__filter-slider{align-items:center;display:grid;position:relative}.vl-ai-search__filter-scroll{cursor:grab;-webkit-user-select:none;user-select:none;clip-path:inset(-100vh 0);min-width:0}.vl-ai-search__filter-scroll.is-dragging{cursor:grabbing}.vl-ai-search__filter-scroll.is-scroll-locked{cursor:default}.vl-ai-search__filter-groups{gap:var(--spacing-12);scroll-snap-type:x proximity;will-change:transform;flex-wrap:nowrap;align-items:center;width:max-content;padding-inline:0;display:flex;overflow:visible}.vl-ai-search__filter-groups>*{scroll-snap-align:start;flex:none}.vl-ai-search__filter-arrow{z-index:2;width:2rem;height:2rem;color:var(--valio-iconic-blue);background:color-mix(in srgb, var(--valio-pure-white) 92%, transparent);border:1px solid color-mix(in srgb, var(--valio-coal-black) 14%, transparent);border-radius:var(--radius-100);box-shadow:0 .5rem 1.25rem color-mix(in srgb, var(--valio-coal-black) 10%, transparent);cursor:pointer;-webkit-backdrop-filter:blur(.375rem);backdrop-filter:blur(.375rem);justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.vl-ai-search__filter-arrow--left{left:0;transform:translate(-50%,-50%)}.vl-ai-search__filter-arrow--right{right:0;transform:translate(50%,-50%)}@media (hover:hover){.vl-ai-search__filter-arrow:hover{background:var(--valio-pure-white)}}@media (width<=781px){.vl-ai-search__filter-groups{padding-inline:var(--spacing-4)}.vl-ai-search__filter-arrow{width:2.25rem;height:2.25rem}}.vl-ai-search__range-filter{gap:var(--spacing-16);display:grid}.vl-ai-search__mobile-filters-modal{z-index:1000;width:100%;height:100dvh;color:var(--valio-iconic-blue);background:var(--valio-natural-white);grid-template-rows:auto minmax(0,1fr) auto;gap:0;display:grid;position:fixed;inset:0;overflow:hidden}.vl-ai-search__mobile-filters-modal__header{gap:var(--spacing-24);width:calc(100% - 2.5rem);padding-block:var(--spacing-24);grid-template-rows:auto auto;grid-template-columns:1fr;margin-inline:auto;display:grid}.vl-ai-search__mobile-filters-modal__header__content{grid-template-columns:1fr fit-content(100%);align-items:start;display:grid}.vl-ai-search__mobile-filters-modal__header__close{justify-self:flex-end}.vl-ai-search__mobile-filters-modal__header__title{width:100%;display:grid}.vl-ai-search__mobile-filters-modal__header__title h2{margin:0 0 var(--spacing-12);text-transform:none;letter-spacing:normal;align-items:center;gap:.25rem;font-size:.875rem;font-weight:600;line-height:1.1;display:flex}.vl-ai-search__mobile-filters-modal__header__title p{letter-spacing:-.42px;margin:0;font-size:.875rem;font-weight:400;line-height:1.25}.vl-ai-search__mobile-filters-modal__header__actions{align-items:center;gap:var(--spacing-16);display:flex}.vl-ai-search__mobile-filters-modal__header__clear{all:unset;color:#616161;cursor:pointer;font-size:.875rem;font-weight:600}.vl-ai-search__mobile-filters-modal__body{min-height:0;padding:0 0 var(--spacing-40);background:var(--valio-pure-white);overflow-y:auto}.vl-ai-search__mobile-filters-modal__footer{padding:var(--spacing-24) var(--spacing-24) max(var(--spacing-24), env(safe-area-inset-bottom));background:var(--valio-pure-white);border-top:1px solid var(--valio-ash-gray)}.vl-ai-search__mobile-filters-modal__submit{min-width:9rem;padding:var(--spacing-12) var(--spacing-24);font:inherit;color:var(--valio-pure-white);text-transform:uppercase;background:var(--valio-action-blue);border-radius:var(--radius-100);cursor:pointer;border:0;margin-inline:auto;font-size:.875rem;font-weight:600;line-height:1;display:block}.admin-bar .vl-ai-search__mobile-filters-modal{top:46px;height:calc(100dvh - 46px)!important}.vl-c-ad-banner{--_banner-border:1px solid var(--valio-ash-gray);--_banner-mobile-width:330px;--_banner-desktop-width:980px;justify-content:center;align-items:center;width:100%;display:flex}.vl-c-ad-banner__link{width:100%;padding-block:var(--spacing-16);color:inherit;border-top:var(--_banner-border);border-bottom:var(--_banner-border);justify-content:center;align-items:center;text-decoration:none;display:flex}.vl-c-ad-banner__picture{width:var(--_banner-mobile-width);aspect-ratio:1;max-width:100%;display:block}@media (width>=782px){.vl-c-ad-banner__picture{width:var(--_banner-desktop-width);aspect-ratio:980/400}}.vl-c-ad-banner__image{object-fit:contain;width:100%;height:100%}.vl-c-ad-banner__video-frame{width:var(--_banner-mobile-width);max-width:100%;display:block}@media (width>=782px){.vl-c-ad-banner__video-frame{width:var(--_banner-desktop-width)}}.vl-c-ad-banner__video{object-fit:contain;width:100%;height:100%;display:block}.vl-c-ad-card{justify-content:center;align-items:stretch;width:100%;height:100%;display:flex}.vl-c-ad-card__content{flex-direction:column;justify-content:center;width:100%;height:100%;display:flex}.skeleton-loader-base{background:linear-gradient(90deg, var(--vl-skeleton-start,#e8e1d9) 25%, var(--vl-skeleton-end,#f7f3ed) 50%, var(--vl-skeleton-start,#e8e1d9) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite skeleton-loader}.skeleton-grid-card{aspect-ratio:1;background-color:#f5f5f5;border-radius:.5rem;overflow:hidden}.skeleton-grid-card__image{aspect-ratio:163/117;border-radius:.5rem;width:100%;height:auto}.skeleton-grid-card__info{width:90%;margin-inline:auto}.skeleton-grid-card__title{width:80%;height:1rem;margin-block:.5rem .375rem}.skeleton-grid-card__count{width:50%;height:.675rem}.vl-loading-spinner{transform-origin:50%;animation:.75s linear infinite vl-spinner-360}@keyframes vl-spinner-360{to{transform:rotate(360deg)}}.vl-ai-search__page-results{display:contents}.vl-ai-search__result-grid{--_item-list-grid-row-gap:var(--spacing-8);--_item-list-grid-column-gap:var(--spacing-16);--_item-list-grid-columns:repeat(2, minmax(0, 1fr));grid-template-columns:var(--_item-list-grid-columns);column-gap:var(--_item-list-grid-column-gap);row-gap:var(--_item-list-grid-row-gap);width:100%;margin:0;padding:0;list-style:none;display:grid}@media (width>=768px){.vl-ai-search__result-grid{--_item-list-grid-columns:repeat(3, minmax(0, 1fr));
1--_item-list-grid-row-gap:var(--spacing-16);--_item-list-grid-column-gap:var(--spacing-24);margin-block-start:var(--spacing-12)}}@media (width>=1080px){.vl-ai-search__result-grid{--_item-list-grid-columns:repeat(4, minmax(0, 1fr));--_item-list-grid-row-gap:var(--spacing-32);--_item-list-grid-column-gap:var(--spacing-24)}}.vl-ai-search__result-grid-item{width:100%;min-width:0;height:100%;margin:0;list-style:none}.vl-ai-search__result-grid-item>*{height:100%}.vl-ai-search__result-grid-item>a{width:100%;min-width:0;color:inherit;background:0 0;text-decoration:none}.vl-ai-search__result-grid-item--ad{grid-column:span 2}@media (width>=768px){.vl-ai-search__result-grid-item--ad{grid-column:span 1}}.vl-ai-search__result-grid-item--ad-banner{grid-column:1/-1}.vl-ai-search__result-grid-item--skeleton>*{height:auto}.vl-ai-search__result-skeleton{gap:var(--spacing-12);width:100%;display:grid}.vl-ai-search__result-skeleton-image{aspect-ratio:277/203;border-radius:var(--radius-16);width:100%}.vl-ai-search__result-skeleton-content{gap:var(--spacing-8);display:grid}.vl-ai-search__result-skeleton-line{border-radius:var(--radius-6);width:100%}.vl-ai-search__result-skeleton-line--short{width:42%}.vl-ai-search__result-skeleton-line--medium{width:68%}.vl-ai-search__result-loading-text{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.vl-c-recipe-card__image{border-radius:var(--_border-radius);aspect-ratio:163/104;object-fit:cover;object-position:center center;width:100%;height:auto}@container recipe-card (width>=200px){.vl-c-recipe-card__image{aspect-ratio:277/203}}.vl-c-recipe-card__image-wrapper{border-radius:var(--_border-radius);background-color:#fff;place-items:center;display:grid}.vl-c-recipe-card__image-wrapper>*{grid-area:1/1}.vl-c-recipe-card__image--unavailable{opacity:.1}.vl-c-recipe-card__image__unavailable-text{max-width:calc(100% - 2 * var(--spacing-16));text-align:center;z-index:1;margin-inline:auto;font-weight:500}.vl-c-recipe-card.has-bg .vl-c-recipe-card__image,.vl-c-recipe-card.has-bg .vl-c-recipe-card__image-wrapper{border-radius:0;border-top-left-radius:var(--radius-16);border-top-right-radius:var(--radius-16)}@supports not (container-type:inline-size){@media (width>=768px){.vl-c-recipe-card__image{aspect-ratio:277/203}}}.vl-c-recipe-card__review{align-items:center;gap:var(--spacing-4);display:flex}.vl-c-recipe-card__review svg{width:16px;height:16px}@container recipe-card (width>=200px){.vl-c-recipe-card__review svg{width:20px;height:20px}}@supports not (container-type:inline-size){@media (width>=768px){.vl-c-recipe-card__review svg{width:20px;height:20px}}}.vl-c-recipe-card__duration{align-items:center;gap:var(--spacing-4);color:#616161;display:flex}.vl-c-recipe-card__duration svg{width:16px;height:16px}@container recipe-card (width>=200px){.vl-c-recipe-card__duration svg{width:20px;height:20px}}@supports not (container-type:inline-size){@media (width>=768px){.vl-c-recipe-card__duration svg{width:20px;height:20px}}}.vl-c-recipe-card__content{grid-template-rows:fit-content(100%) fit-content(100%);align-items:start;display:grid}.vl-c-recipe-card__content>*{margin:0}.vl-c-recipe-card__content{margin-block-start:var(--spacing-12)}.vl-c-recipe-card__content--unavailable h2{color:#616161}.vl-c-recipe-card.has-bg .vl-c-recipe-card__content{padding:var(--spacing-12) var(--spacing-16) var(--spacing-16);border-radius:0 0 var(--radius-16) var(--radius-16);margin-block-start:0}.vl-c-recipe-card__title{text-transform:none;letter-spacing:initial;-webkit-hyphens:auto;hyphens:auto;word-break:break-word;text-overflow:ellipsis;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;margin-block-end:var(--spacing-2);font-size:1rem;font-weight:500;line-height:1.2;display:-webkit-box;overflow:hidden}@container recipe-card (width>=200px){.vl-c-recipe-card__title{font-size:1.0625rem;line-height:1.3}}.vl-c-recipe-card__footer{gap:var(--spacing-8);margin-block:var(--spacing-4);font-size:.875rem;font-weight:500;display:flex}@container recipe-card (width>=200px){.vl-c-recipe-card__footer{font-size:1rem}}@supports not (container-type:inline-size){@media (width>=768px){.vl-c-recipe-card__footer{font-size:1rem}}@media screen and (width<=375px){.vl-c-recipe-card__footer{gap:var(--spacing-2);flex-direction:column}}}.vl-c-recipe-card__tags{gap:var(--spacing-8);grid-area:tags;height:fit-content;display:flex}.vl-c-recipe-card-tag{--_text-color:#fff;--_background-color:var(--color-brand);color:var(--_text-color);letter-spacing:.01rem;text-transform:uppercase;background-color:var(--_background-color);border-radius:2.25rem;padding:.175em .75em;font-size:.875rem;font-weight:500;line-height:1.5}.vl-c-recipe-card-tag--new{--_background-color:#89328f}.vl-c-recipe-card-tag--day{--_text-color:var(--color-brand);--_background-color:#fff}@container recipe-card (width>=200px){.vl-c-recipe-card-tag{font-size:1rem}}@supports not (container-type:inline-size){@media (width>=768px){.vl-c-recipe-card-tag{font-size:1rem}}}.vl-c-recipe-card__action-bar{--_spacing:var(--spacing-12);top:var(--_spacing);left:var(--_spacing);right:var(--_spacing);width:calc(100% - 2 * var(--_spacing));z-index:99;grid-template-columns:fit-content(100%) 1fr;grid-template-areas:"tags favorite";justify-content:end;gap:.5rem;display:grid;position:absolute}.vl-c-recipe-card__move-button{height:2rem}.vl-c-recipe-card__delete-button{justify-self:flex-end;width:2rem;height:2rem;padding:0}.vl-c-recipe-card__change-button{height:1.375rem;padding-block:0}.vl-c-recipe-card__shopping-list-actions{grid-area:favorite;justify-self:flex-end;align-items:center;gap:.5rem;display:flex}.vl-c-recipe-card__shopping-list-button{position:static}.vl-c-recipe-card__shopping-list-toggle,.vl-c-recipe-card__meal-plan-toggle{--_border:1.5px solid transparent;--_background:var(--valio-pure-white);--_color:var(--valio-iconic-blue);width:2rem;height:2rem;color:var(--_color);background:var(--_background);border:var(--_border);cursor:pointer;border-radius:50%;grid-area:favorite;justify-content:center;justify-self:flex-end;align-items:center;padding:0;transition:background-color .2s,border-color .2s;
1display:inline-flex}.vl-c-recipe-card__shopping-list-toggle:hover,.vl-c-recipe-card__meal-plan-toggle:hover{--_color:var(--valio-pure-white);--_background:var(--valio-action-blue);--_border:1.5px solid var(--valio-action-blue)}.vl-c-recipe-card__shopping-list-toggle:hover svg path,.vl-c-recipe-card__meal-plan-toggle:hover svg path{stroke:var(--_color)}.vl-c-recipe-card__shopping-list-toggle.is-checked,.vl-c-recipe-card__meal-plan-toggle.is-checked{--_background:var(--valio-action-blue);--_border:1.5px solid var(--valio-action-blue);--_color:var(--valio-pure-white)}.vl-c-recipe-card__shopping-list-toggle:focus-visible,.vl-c-recipe-card__meal-plan-toggle:focus-visible{outline:2px solid var(--valio-action-blue);outline-offset:2px}.vl-c-recipe-card__shopping-list-toggle svg,.vl-c-recipe-card__meal-plan-toggle svg{width:.875rem;height:.875rem}.vl-c-recipe-card__favorite-button{--_favorite-btn-border:1px solid transparent;--_favorite-btn-border-hover:1px solid var(--valio-iconic-blue);--_favorite-btn-icon-color:transparent;--_favorite-btn-icon-border:#dfe3e6;background-color:var(--color-white);border:var(--_favorite-btn-border);pointer-events:auto;aspect-ratio:1;border-radius:50%;grid-area:favorite;justify-content:center;justify-self:flex-end;align-items:center;transition:opacity .3s ease-in-out,border-color .2s ease-in-out;display:inline-flex}.vl-c-recipe-card__favorite-button svg{width:1rem;height:1rem;animation:1s ease-in-out infinite pulsate-card}
1.vl-c-recipe-card__favorite-button svg path{fill:var(--_favorite-btn-icon-color);stroke:var(--_favorite-btn-icon-border);stroke-width:1px;transition:fill .25s,stroke .25s}.vl-c-recipe-card__favorite-button:hover{cursor:pointer;border:var(--_favorite-btn-border-hover)}.vl-c-recipe-card__favorite-button:disabled{pointer-events:none}@keyframes pulsate-card{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}[data-loaded=true] .vl-c-recipe-card__favorite-button{--_favorite-btn-icon-border:var(--valio-iconic-blue)}[data-loaded=true] .vl-c-recipe-card__favorite-button svg{animation:none}[data-favorited=true] .vl-c-recipe-card__favorite-button{--_favorite-btn-icon-color:#d46594;--_favorite-btn-icon-border:#d46594;--_favorite-btn-border-hover:1px solid #d46594}[data-mode=menu-planning] .vl-c-recipe-card__delete-button:not(:hover){background-color:var(--valio-natural-white)}[data-mode=menu-planning] .vl-c-recipe-card__change-button:not(:hover){background-color:var(--valio-natural-white);border-color:var(--valio-natural-white)}.vl-c-recipe-card--error{color:#9b2c2c;background-color:#fef2f2;border:2px dashed #d63638;min-height:250px;display:flex}.vl-c-recipe-card--error .vl-c-recipe-card__image{display:none}.vl-c-recipe-card--error .vl-c-recipe-card__content{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;padding:1rem;display:flex}.vl-c-recipe-card--error .vl-c-recipe-card__title{color:#c53030;margin-bottom:.5rem}.vl-c-recipe-card--error .vl-c-recipe-card__retry-button{color:#2d3748;cursor:pointer;background-color:#fff;border:1px solid #e2e8f0;border-radius:4px;margin-top:1rem;padding:.5rem 1rem;font-weight:600}.vl-c-recipe-card--error .vl-c-recipe-card__retry-button:hover{background-color:#f7fafc}.vl-c-recipe-card-link{isolation:isolate;border-radius:.5rem;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.vl-c-recipe-card-link:hover{filter:unset}.vl-c-recipe-card-link:focus-visible{outline:2px solid var(--valio-action-blue);outline-offset:2px;transition:none}.vl-c-recipe-card{--_border-radius:1rem;border-radius:var(--_border-radius);grid-template-rows:auto 1fr;grid-template-columns:1fr;height:100%;display:grid;position:relative;container:recipe-card/inline-size}:is([data-mode=edit],[data-mode=menu-planning]).vl-c-recipe-card-link{transition:none}:is([data-mode=edit],[data-mode=menu-planning]).vl-c-recipe-card-link:hover{transform:none}.vl-c-content-card--error{--_error-background-color:var(--valio-natural-white);--_error-border:2px dashed var(--valio-strawberry-red);--_error-content-padding:var(--spacing-24);--_error-font-color:var(--valio-beet-red);--_error-min-height:15.625rem;--_retry-button-background-color:var(--valio-pure-white);--_retry-button-border:1px solid var(--valio-ash-gray);--_retry-button-border-radius:999px;--_retry-button-font-color:var(--valio-coal-black);--_retry-button-margin-block-start:var(--spacing-16);--_retry-button-padding:.5rem 1rem;min-height:var(--_error-min-height);color:var(--_error-font-color);background-color:var(--_error-background-color);border:var(--_error-border);display:flex}.vl-c-content-card--error .vl-c-content-card__image-wrapper{display:none}.vl-c-content-card--error .vl-c-content-card__content{width:100%;padding:var(--_error-content-padding);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.vl-c-content-card--error .vl-c-content-card__title{color:var(--_error-font-color)}.vl-c-content-card--error .vl-c-content-card__retry-button{margin-top:var(--_retry-button-margin-block-start);padding:var(--_retry-button-padding);color:var(--_retry-button-font-color);background-color:var(--_retry-button-background-color);border:var(--_retry-button-border);border-radius:var(--_retry-button-border-radius);cursor:pointer;font-weight:600}.vl-c-content-card--error .vl-c-content-card__retry-button:hover{--_retry-button-background-color:var(--valio-additional-brown)}.vl-c-content-card{--_meta-font-color:var(--valio-iconic-blue);--_meta-font-size:.875rem;--_meta-gap:var(--spacing-4)}.vl-c-content-card__meta{align-items:center;gap:var(--_meta-gap);font-family:var(--font-family-gotham);font-size:var(--_meta-font-size);color:var(--_meta-font-color);flex-wrap:wrap;display:flex}.vl-c-content-card__type{align-items:center;gap:var(--_meta-gap);display:inline-flex}.vl-c-content-card__icon{--_meta-font-color:var(--valio-action-blue);color:var(--_meta-font-color)}.vl-c-content-card__content-family[hidden]{display:none}.vl-c-content-card{--_content-gap:var(--spacing-4);--_content-padding-block-start:var(--spacing-4);--_title-font-color:var(--valio-iconic-blue);--_title-font-size:1rem;--_title-line-height:1.2}.vl-c-content-card__content{gap:var(--_content-gap);padding-top:var(--_content-padding-block-start);flex-direction:column;display:flex}.vl-c-content-card__content>*{margin:0}.vl-c-content-card__content--unavailable{opacity:.6}.vl-c-content-card__title{-webkit-line-clamp:2;line-clamp:2;font-family:var(--font-family-gotham);font-size:var(--_title-font-size);font-weight:var(--font-weight-medium);line-height:var(--_title-line-height);letter-spacing:normal;color:var(--_title-font-color);text-transform:none;-webkit-box-orient:vertical;transition:color .2s;
1display:-webkit-box;overflow:hidden}@container content-card (width>=200px){.vl-c-content-card__title{--_title-font-size:1.0675rem;--_title-line-height:1.3}}@supports not (container-type:inline-size){@media (width>=782px){.vl-c-content-card__title{--_title-font-size:1.0675rem;--_title-line-height:1.3}}}.vl-c-content-card{--_image-aspect-ratio:163 / 104;--_image-background-color:var(--valio-ash-gray);--_image-border-radius:var(--radius-16);--_image-transition:transform .3s ease}.vl-c-content-card__image-wrapper{border-radius:var(--_image-border-radius);background-color:var(--_image-background-color);place-items:center;width:100%;display:grid;position:relative;overflow:hidden}.vl-c-content-card__image-wrapper>*{grid-area:1/1}.vl-c-content-card__image{width:100%;height:auto;aspect-ratio:var(--_image-aspect-ratio);object-fit:cover;object-position:center center;transition:var(--_image-transition)}@container content-card (width>=200px){.vl-c-content-card__image{--_image-aspect-ratio:277 / 203}}.vl-c-content-card__image-placeholder{--_image-background-color:var(--valio-aluminum-gray);width:100%;height:auto;aspect-ratio:var(--_image-aspect-ratio);background-color:var(--_image-background-color)}@container content-card (width>=200px){.vl-c-content-card__image-placeholder{--_image-aspect-ratio:277 / 203}}@supports not (container-type:inline-size){@media (width>=768px){.vl-c-content-card__image,.vl-c-content-card__image-placeholder{--_image-aspect-ratio:277 / 203}}}.vl-c-content-card{--_compact-border:1px solid #6161611a;--_focus-border-radius:var(--radius-16);--_focus-outline:2px solid var(--valio-action-blue);--_focus-outline-offset:4px;position:relative;container:content-card/inline-size}.vl-c-content-card__link{gap:var(--spacing-8);flex-direction:column;height:100%;text-decoration:none;display:flex}.vl-c-content-card__link:hover .vl-c-content-card__title,.vl-c-content-card__link:focus .vl-c-content-card__title{--_title-font-color:var(--valio-action-blue)}.vl-c-content-card__link:focus-visible{border-radius:var(--_focus-border-radius);outline:var(--_focus-outline);outline-offset:var(--_focus-outline-offset)}.vl-c-content-card{width:100%;height:100%}.vl-c-content-card--unavailable .vl-c-content-card__content{opacity:.6}@container content-card (width<=199px){.vl-c-content-card.is-compact-mobile .vl-c-content-card__link{gap:var(--spacing-12);padding-bottom:var(--spacing-16);border-bottom:var(--_compact-border);grid-template-columns:1.5fr 3fr;display:grid}.vl-c-content-card.is-compact-mobile .vl-c-content-card__image-wrapper{--_image-border-radius:var(--radius-6);width:100%}.vl-c-content-card.is-compact-mobile .vl-c-content-card__image-wrapper .vl-c-content-card__image,.vl-c-content-card.is-compact-mobile .vl-c-content-card__image-wrapper .vl-c-content-card__image-placeholder{--_image-aspect-ratio:1 / 1}.vl-c-content-card.is-compact-mobile .vl-c-content-card__content{justify-content:center;padding-top:0}}@supports not (container-type:inline-size){@media (width<=781px){.vl-c-content-card.is-compact-mobile{padding-bottom:var(--spacing-16);border-bottom:var(--_compact-border)}.vl-c-content-card.is-compact-mobile .vl-c-content-card__link{gap:var(--spacing-12);grid-template-columns:1.5fr 3fr;display:grid}.vl-c-content-card.is-compact-mobile .vl-c-content-card__image-wrapper{--_image-border-radius:var(--radius-6);width:100%}.vl-c-content-card.is-compact-mobile .vl-c-content-card__image-wrapper .vl-c-content-card__image,.vl-c-content-card.is-compact-mobile .vl-c-content-card__image-wrapper .vl-c-content-card__image-placeholder{--_image-aspect-ratio:1 / 1}.vl-c-content-card.is-compact-mobile .vl-c-content-card__content{justify-content:center;padding-top:0}}}.vl-c-product-card--error{color:#9b2c2c;box-shadow:none;background-color:#fef2f2;border:2px dashed #d63638;min-height:14rem}.vl-c-product-card--error:hover{box-shadow:none}.vl-c-product-card--error .vl-c-product-card__fallback-content{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:1rem;display:flex}.vl-c-product-card--error .vl-c-product-card__fallback-title{color:#c53030;margin:0 0 .5rem;font-weight:700}.vl-c-product-card--error .vl-c-product-card__retry-button{color:#2d3748;cursor:pointer;background-color:#fff;border:1px solid #e2e8f0;border-radius:.25rem;margin-top:1rem;padding:.5rem 1rem;font-weight:600}.vl-c-product-card--error .vl-c-product-card__retry-button:hover{background-color:#f7fafc}.vl-c-product-card-link{width:100%;height:100%;color:inherit;text-decoration:none;display:grid;background-image:none!important}.vl-c-product-card-link:hover{filter:unset}.vl-c-product-card-link:hover .has-background-valio-natural-white.vl-c-product-card{background-color:#f0ebe5!important}.vl-c-product-card-link:focus-visible{outline:2px solid var(--valio-action-blue);outline-offset:2px}.vl-c-product-card{--_aspect-ratio:1;--_border-radius:1.25rem;--_title-font-size:1rem;--_title-line-clamp:2;--_title-width:100%;--_title-text-align:left;--_title-margin-block-start:var(--spacing-12);--_title-margin-block-end:0;--_image-background-color:var(--valio-additional-brown);
1--_image-max-height:10rem;--_image-wrapper-aspect-ratio:163 / 104;--_add-button-offset:var(--spacing-8);grid-template-rows:repeat(3,fit-content(100%));place-items:start center;width:100%;height:100%;display:grid;position:relative;container-type:inline-size}.vl-c-product-card.has-background{background-color:var(--valio-pure-white);border-radius:var(--_border-radius);aspect-ratio:var(--_aspect-ratio)}.vl-c-product-card--loading{box-shadow:none;border-color:#0000}.vl-c-product-card--loading:hover{box-shadow:none;transform:none}.vl-c-product-card--unavailable:hover{transform:none;box-shadow:0 6px 20px #0000000d}.vl-c-product-card--centered{--_title-text-align:center}.vl-c-product-card__image-wrapper{width:100%;aspect-ratio:var(--_image-wrapper-aspect-ratio);background-color:var(--_image-background-color);border-radius:var(--_border-radius);place-items:center;display:grid}@container (width>=200px){.vl-c-product-card__image-wrapper{--_image-wrapper-aspect-ratio:277 / 203}}.vl-c-product-card__image{width:auto;max-width:70%;height:auto;max-height:var(--_image-max-height);margin-inline:auto;margin-top:var(--spacing-8);object-fit:contain;display:block}.vl-c-product-card__add-button{top:var(--_add-button-offset);right:var(--_add-button-offset);position:absolute}.vl-c-product-card__title{width:var(--_title-width);font-size:var(--_title-font-size);text-transform:none;letter-spacing:initial;text-align:var(--_title-text-align);-webkit-hyphens:auto;hyphens:auto;word-break:break-word;text-overflow:ellipsis;-webkit-line-clamp:var(--_title-line-clamp);line-clamp:var(--_title-line-clamp);-webkit-box-orient:vertical;font-weight:500;line-height:1.2;display:-webkit-box;overflow:hidden;margin-top:var(--_title-margin-block-start)!important;margin-bottom:var(--_title-margin-block-end)!important}@container (width>=200px){.vl-c-product-card__title{--_title-font-size:1.0625rem;line-height:1.3}}.vl-c-product-card__meta{justify-content:flex-start;gap:var(--spacing-4);width:100%;flex-direction:row;margin-block-start:var(--spacing-4);font-size:.875rem;display:flex}@container (width>=200px){.vl-c-product-card__meta{font-size:.9375rem}}@container (width<=781px){.vl-c-product-card{--_add-button-offset:var(--spacing-8)}.vl-c-product-card .vl-c-product-card__add-button{--_border:none}}.vl-c-product-card--compact{--_image-max-height:4rem;--_image-background-color:none;--_aspect-ratio:none;--_title-font-size:.875rem;--_title-line-clamp:3;--_title-text-align:left;--_title-width:calc(100% - 2rem);--_title-margin-block-start:var(--spacing-8);--_title-margin-block-end:var(--spacing-8)}.vl-c-product-card--no-title-big{aspect-ratio:1;background-color:var(--valio-pure-white);border-radius:var(--_border-radius);grid-template-rows:1fr;place-items:center;display:grid;overflow:hidden}.vl-c-product-card--no-title-big .vl-c-product-card__image-wrapper{aspect-ratio:auto;background-color:#0000;width:100%;height:100%}.vl-c-product-card--no-title-big .vl-c-product-card__image{max-width:85%;max-height:13.5rem;margin-top:0}.vl-c-product-card--no-title-big .vl-c-product-card__title,.vl-c-product-card--no-title-big .vl-c-product-card__meta{display:none}@supports not (container-type:inline-size){@media (width<=781px){.vl-c-product-card{--_add-button-offset:var(--spacing-8)}.vl-c-product-card .vl-c-product-card__add-button{--_border:none}}}.vl-c-recipe-group-card--error{min-height:15.625rem;color:var(--valio-beet-red);background-color:var(--valio-natural-white);border:2px dashed var(--valio-strawberry-red);display:flex}.vl-c-recipe-group-card--error .vl-c-recipe-group-card__image-wrapper{display:none}.vl-c-recipe-group-card--error .vl-c-recipe-group-card__content{width:100%;padding:var(--spacing-24);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.vl-c-recipe-group-card--error .vl-c-recipe-group-card__title{color:var(--valio-beet-red)}.vl-c-recipe-group-card--error .vl-c-recipe-group-card__retry-button{margin-top:var(--spacing-16);color:var(--valio-coal-black);background-color:var(--valio-pure-white);border:1px solid var(--valio-ash-gray);
1cursor:pointer;border-radius:999px;padding:.5rem 1rem;font-weight:600}.vl-c-recipe-group-card--error .vl-c-recipe-group-card__retry-button:hover{background-color:var(--valio-additional-brown)}.vl-c-recipe-group-card__title{font-size:var(--_title-font-size);font-weight:500;line-height:var(--_title-line-height);letter-spacing:.16px;color:var(--valio-iconic-blue);text-transform:none;-webkit-hyphens:auto;hyphens:auto;word-break:break-word;text-overflow:ellipsis;-webkit-line-clamp:var(--_title-line-clamp);line-clamp:var(--_title-line-clamp);-webkit-box-orient:vertical;margin-block-start:var(--_content-margin-block-start);margin-block-end:0;margin-inline-start:var(--spacing-4);display:-webkit-box;overflow:hidden}.vl-c-recipe-group-card__image{width:100%;height:auto;aspect-ratio:var(--_image-aspect-ratio);object-fit:cover;object-position:center center;border-radius:var(--_image-border-radius)}.vl-c-recipe-group-card-link{--_border-radius:var(--radius-12);width:100%;height:100%;color:inherit;border-radius:var(--_border-radius);text-decoration:none;display:grid}.vl-c-recipe-group-card{--_border-radius:var(--radius-12);--_content-margin-block-start:var(--spacing-6);--_image-aspect-ratio:269 / 262;--_image-border-radius:var(--radius-6);--_title-font-size:.875rem;--_title-line-clamp:2;--_title-line-height:1.2;width:100%;height:100%;padding-block:var(--spacing-6) var(--spacing-16);padding-inline:var(--spacing-6);background-color:var(--valio-amazing-yellow);border-radius:var(--_border-radius);grid-template-rows:auto 1fr;grid-template-columns:1fr;display:grid;position:relative;overflow:hidden;container-type:inline-size}@container (width>=200px){.vl-c-recipe-group-card{--_title-font-size:1rem}}@supports not (container-type:inline-size){@media (width>=782px){.vl-c-recipe-group-card{--_title-font-size:1rem}}}.vl-c-seasonal-vertical-card--error{min-height:15.625rem;color:var(--valio-beet-red);background-color:var(--valio-natural-white);border:2px dashed var(--valio-strawberry-red);display:flex}.vl-c-seasonal-vertical-card--error .vl-c-seasonal-vertical-card__image-wrapper{display:none}.vl-c-seasonal-vertical-card--error .vl-c-seasonal-vertical-card__content{width:100%;padding:var(--spacing-24);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.vl-c-seasonal-vertical-card--error .vl-c-seasonal-vertical-card__title{color:var(--valio-beet-red)}.vl-c-seasonal-vertical-card--error .vl-c-seasonal-vertical-card__retry-button{margin-top:var(--spacing-16);color:var(--valio-coal-black);background-color:var(--valio-pure-white);border:1px solid var(--valio-ash-gray);cursor:pointer;border-radius:999px;padding:.5rem 1rem;font-weight:600}.vl-c-seasonal-vertical-card--error .vl-c-seasonal-vertical-card__retry-button:hover{background-color:var(--valio-additional-brown)}.vl-c-seasonal-vertical-card__content{padding-block:.375rem;padding-inline:.75rem}.vl-c-seasonal-vertical-card__title{letter-spacing:.16px;color:var(--valio-iconic-blue);text-transform:none;-webkit-hyphens:auto;hyphens:auto;word-break:break-word;text-overflow:ellipsis;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-block-start:0;font-size:.9375rem;font-weight:500;line-height:1.2;display:-webkit-box;overflow:hidden;margin-bottom:.5em!important}.vl-c-seasonal-vertical-card__image-wrapper{aspect-ratio:220/55;border-radius:.375rem .375rem 0 0;width:calc(100% - .5rem);margin-block-start:.25rem;margin-inline:auto;overflow:hidden}.vl-c-seasonal-vertical-card__image{object-fit:cover;object-position:center center;width:100%;height:100%;transition:transform .45s cubic-bezier(.25,.46,.45,.94);transform:scale(1)}.vl-c-seasonal-vertical-card__image--unavailable{filter:grayscale();opacity:.7}.vl-c-seasonal-vertical-card__link{--_border-radius:.75rem;height:100%;color:inherit;border-radius:var(--_border-radius);text-decoration:none;display:block}.vl-c-seasonal-vertical-card__link:hover{filter:unset}.vl-c-seasonal-vertical-card__link:hover .vl-c-seasonal-vertical-card__image{transform:scale(1.05)}.vl-c-seasonal-vertical-card{--_border-radius:.75rem;border-radius:var(--_border-radius);width:100%;height:100%;position:relative;overflow:hidden;container-type:inline-size}.vl-c-seasonal-vertical-card--unavailable .vl-c-seasonal-vertical-card__content{opacity:.7}.vl-c-vertical-content-card{width:100%;height:100%;position:relative;container-type:inline-size}.vl-c-vertical-content-card__link{gap:var(--spacing-12);grid-template-columns:5.625rem 1fr;align-items:stretch;height:100%;text-decoration:none;display:grid}.vl-c-vertical-content-card__link:hover .vl-c-vertical-content-card__title,.vl-c-vertical-content-card__link:focus .vl-c-vertical-content-card__title{color:var(--valio-action-blue)}.vl-c-vertical-content-card__link:focus-visible{border-radius:var(--radius-6);outline:2px solid var(--valio-action-blue);outline-offset:4px}@container (width>=600px){.vl-c-vertical-content-card__link{grid-template-columns:7.25rem 1fr}}.vl-c-vertical-content-card__image-wrapper{background-color:var(--valio-additional-brown);border-radius:var(--radius-6);aspect-ratio:9/6;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.vl-c-vertical-content-card__image{object-fit:contain;width:100%;transition:transform .3s}.vl-c-vertical-content-card__image-placeholder{background-color:var(--valio-aluminum-gray);width:100%;min-width:0;height:100%}@container (width>=600px){.vl-c-vertical-content-card__image-placeholder{min-width:7.25rem}}.vl-c-vertical-content-card__content{gap:var(--spacing-4);flex-direction:column;justify-content:center;padding-top:0;display:flex}.vl-c-vertical-content-card__content>*{margin:0}.vl-c-vertical-content-card__title{-webkit-line-clamp:2;line-clamp:2;font-family:var(--font-family-gotham);font-size:1rem;font-weight:var(--font-weight-medium);letter-spacing:normal;color:var(--valio-iconic-blue);text-transform:none;-webkit-box-orient:vertical;line-height:1.2;transition:color .2s;
1display:-webkit-box;overflow:hidden}.vl-c-vertical-content-card__meta{-webkit-line-clamp:1;line-clamp:1;font-size:1rem;font-weight:var(--font-weight-regular);letter-spacing:normal;color:var(--valio-coal-black);-webkit-box-orient:vertical;align-items:center;gap:.25rem;line-height:1.25;display:flex;overflow:hidden}.vl-c-vertical-content-card--unavailable .vl-c-vertical-content-card__content{opacity:.6}.vl-c-vertical-content-card--product .vl-c-vertical-content-card__image{max-height:100%}@supports not (container-type:inline-size){@media (width>=600px){.vl-c-vertical-content-card__link{grid-template-columns:7.25rem 1fr}.vl-c-vertical-content-card__image-placeholder{min-width:7.25rem}}}
2/*$vite$:1*/`,document.head.appendChild(r);var i=Object.create,a=Object.defineProperty,o=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=s(t),c=0,u=i.length,d;c<u;c++)d=i[c],!l.call(e,d)&&d!==n&&a(e,d,{get:(e=>t[e]).bind(null,d),enumerable:!(r=o(t,d))||r.enumerable});return e};e=((e,t,n)=>(n=e==null?{}:i(c(e)),u(t||!e||!e.__esModule||!l.call(e,`default`)?a(n,`default`,{value:e,enumerable:!0}):n,e)))(e,1);var d=window.valioExternals?.[`react-query`]?.defaultQueryClient,f=window.valioExternals?.[`react-query`]?.useQuery,p=window.valioExternals?.[`react-query`]?.useInfiniteQuery;window.valioExternals?.[`react-query`]?.useMutation,window.valioExternals?.[`react-query`]?.useQueryClient;var m=window.valioExternals?.[`react-query`]?.keepPreviousData;window.valioExternals?.[`react-query`]?.QueryClient;var h=window.valioExternals?.[`react-query`]?.QueryClientProvider,g={MOBILE:782,TABLET:1080,LAPTOP:1280,DESKTOP:1440};function _(e={}){let{debounceDelay:n=500,mobileBreakpoint:r=g.MOBILE,tabletBreakpoint:i=g.TABLET,laptopBreakpoint:a=g.LAPTOP}=e,[o,s]=(0,t.useState)({width:window.innerWidth,height:window.innerHeight});(0,t.useEffect)(()=>{let e,t=()=>{clearTimeout(e),e=window.setTimeout(()=>{s({width:window.innerWidth,height:window.innerHeight})},n)};return window.addEventListener(`resize`,t),()=>{window.removeEventListener(`resize`,t),clearTimeout(e)}},[n]);let c=(0,t.useMemo)(()=>{let{width:e,height:t}=o;return{isMobile:e<r,isTablet:e>=r&&e<i,isLaptop:e>=i&&e<a,isDesktop:e>=a,orientation:e>t?`landscape`:`portrait`}},[o,r,i,a]);return{...o,...c}}function v(...e){return e.filter(Boolean).join(` `)}function y(e,t){(e.type!==`keydown`||e.key===`Enter`||e.key===` `)&&(e.preventDefault(),e.stopPropagation(),t())}var b=[`all`,`recipes`,`products`,`content`],ee=[`relevance`,`newest`,`rating`,`popular`,`alphabetical`],x={query:``,contentType:`recipes`,sort:`relevance`,page:1,selectedFilters:{},selectedRanges:{}},S=`vl-ai-search:url-state-change`,C={query:`query`,contentType:`content-kind`,sort:`sort`,page:`page`},w={state:new Set(Object.values(C)),filters:new Set([`content-type`,`article-topics`,`preparation-time`,`preparation-time-min`,`preparation-time-max`,`difficulty-level`,`main-categories`,`recipe-sub-categories`,`dish-types`,`cooking-tools`,`baking`,`diets`,`ingredients`,`themes`,`cuisine`,`author`,`product-groups`,`brands`,`product-features`,`allergens-contains`,`allergens-excludes`,`packaging`,`new-products`]),preserved:new Set([`mode`,`preview`,`p`,`page_id`,`artmp`,`artkl`,`alid`,`lid`,`lnm`,`rpg`,`dow`,`gclid`,`fbclid`,`msclkid`,`ads_rl`,`gclsrc`,`gad_source`,`gad_campaignid`,`gbraid`]),preservedPrefixes:[`utm_`]},T={mealPlan:`artmp`,shoppingList:`artkl`,listId:`alid`,legacyListId:`lid`,listName:`lnm`,dayOfWeek:`dow`,returnPage:`rpg`},E={NONE:`none`,MEAL_PLAN:`meal-plan`,SHOPPING_LIST:`shopping-list`},te=[`MON`,`TUE`,`WED`,`THU`,`FRI`,`SAT`,`SUN`],ne={haku:{param:C.query},sivu:{param:C.page},valmistusaikaMax:{param:`preparation-time-max`},jarjestys:{param:C.sort,values:{julkaisu:`newest`,suosituimmat:`popular`,aakkosjarjestys:`alphabetical`}}},re=[{param:`dish-types`,values:[`alkuruoat`,`paaruoat`,`jalkiruoat`,`salaatti`,`keitto`,`juustotarjotin`,`aamu-ja-iltapalat`,`kylmat-juomat`,`kuumat-juomat`],renamed:{salaatit:`salaatti`,"aamu-vali--ja-iltapalat":`aamu-ja-iltapalat`}},{param:`baking`,values:[`taikinat`,`kakut`,`muffinssit`,`pullat`,`leivat`,`suolaiset-piirakat`,`mokkapalat`,`makeat-piirakat`,`keksit`]}],ie={values:[`vehnaa-ruista-ohraa-tai-kauraa`,`rikkidioksidi-ja-sulfiitti`],renamed:{"kalat-ja-kalatuotteet":`kalaa-tai-kalatuotteita`,pahkinat:`pahkinaa-tai-pahkinatuotteita`,"maapahkinat-ja-maapahkinatuotteet":`maapahkinaa-tai-maapahkinatuotteita`,"maito-ja-maitotuotteet":`maitoa-tai-maitotuotteita`,"kananmunat-ja-kananmunatuotteet":`munaa-tai-munatuotteita`,"soijapavut-ja-soijapaputuotteet":`soijapapuja-tai-soijapaputuotteita`}},ae={paaluokka:[{param:`main-categories`,values:[`ruoanlaitto`,`leivonta`]}],ruokalaji:re,ruokalajityyppi:re,erityisruokavaliot:[{param:`diets`,values:[`gluteeniton`,`laktoositon`,`luomu`,`kasvis-lakto-ovo`,`kevyempi`,`vahemman-suolaa`,`kananmunaton`,`maidoton`,`vegaaninen`,`vahahiilihydraattinen`,`sydanmerkki-resepti`]}],"raaka-aineet":[{param:`ingredients`,values:[`liha`,`jauheliha`,`broileri`,`kala`,`kasvis`,`mifu-maitoproteiini`,`juusto`,`merenelava`,`peruna`,`riista`,`hedelma`,`marja`]}],"kalenterivuoden-ruokajuhlat":[{param:`themes`,values:[`lastenjuhlat`,`valmistujaiset`,`joulu`,`paasiainen`,`vappu`,`grillaus`,`halloween`]}],kulttuuri:[{param:`cuisine`,values:[`aasia`,`britannia`,`espanja`,`intia`,`italia`,`kreikka`,`lahi-ita`,`pohjois-amerikka`,`ranska`,`skandinavia`,`suomi`,`australia`,`etela-amerikka`,`keski-eurooppa`,`venaja`]}],tekija:[{param:`author`,values:[`vieraskauha`],renamed:{valio_koekeittio:`valio-koekeittio`}}],vaikeusaste:[{param:`difficulty-level`,values:[],renamed:{1:`helppo`,2:`keskitaso`,3:`haastava`}}],valmistustapa:[{param:`cooking-tools`,values:[`grillissa`,`liedella`,`uunissa`]}]},oe={tuoteryhma:[{param:`product-groups`,values:[],mapsUnlistedValues:!0,renamed:{"tuotteet-ammattilaisille":`ammattilaisille`,"ruoanlaiton-lihattomat-proteiinituotteet-suurpakkaukset":`ruoanlaiton-lihattomat-proteiinituotteet-ammattilaisille`,"kasviperaiset-ruoanvalmistustuotteet-ruoanvalmistustuotteet-ammattilaisille":`kasviperaiset-ruoanvalmistustuotteet`,maustetut:`maustetut-viilit`,"kasviperaiset-viipaleet":`kasviperainen-viipale`,"herkutteluun-juustot":`juustot-herkutteluun`,"kahvi-ja-kaakaojuomat":`kaakao-ja-kahvijuomat`,"goldgreen-kasv
2iperaiset-ruoanlaiton-proteiinituotteet":`gold-green-kasviperaiset-ruoanlaiton-proteiinituotteet`}}],brandi:[{param:`brands`,values:[`valio-a`,`valio-aura`,`valio-gefilus`,`valio-grandi`,`valio-jaatelofabriikki`,`valio-keittion`,`valio-koskenlaskija`,`valio-luomu`,`valio-mifu`,`valio-oivariini`,`valio-oltermanni`,`valio-onni`,`valio-plus`,`valio-polar`,`valio-profeel`,`valio-valsa`,`valio-viola`,`valiojogurtti`,`valio-play`,`valio-hyva-suomalainen-arki`],renamed:{"valio-eila-laktoositon":`valio-eila`,"valio-oddlygood":`oddlygood`,goldgreen:`gold-green`}}],ominaisuudet:[{param:`product-features`,values:[`ei-lisattyja-sokereita`,`ei-sisalla-keinotekoisia-makeutusaineita`,`gluteeniton`,`homogenoimaton`,`hyvaa-suomesta`,`keinotekoisesti-makeutettu`,`kevyt`,`kuitua-runsaasti`,`laktoositon`,`lisaaineeton`,`pastoroitu`,`rasvaton`,`runsaasti-proteiinia`,`sydanmerkki`,`vegaaninen`,`kasvisruokavalioon-laktovegetaarinen`,`vitaminoitu`,`vahemman-suolaa`,`vahalaktoosinen`,`vaharasvainen`]}],"yliherkkyys-sisaltaa":[{param:`allergens-contains`,...ie}],"yliherkkyys-eisisalla":[{param:`allergens-excludes`,...ie}],"muut-sisaltaa":[{param:`allergens-contains`,values:[],mapsUnlistedValues:!0}],"muut-eisisalla":[{param:`allergens-excludes`,values:[],mapsUnlistedValues:!0}],suurpakkaukset:[{param:`packaging`,values:[],renamed:{piilota:`kuluttajapakkaukset`}}],uutuudet:[{param:`new-products`,values:[],renamed:{nayta:`uutuudet`}}]},se={...ae,...oe},ce=new Set([`tarveaineet`,`aihe`,`eri-tilanteet`,`personointi`,`app-raaka-aineet`]),le=`ei--`;function ue(e){return e.startsWith(le)?e.slice(4):e}function de(e){return e in ne||e in se||ce.has(e)}function fe(e,t){return e.renamed?.[t]||(e.values.includes(t)||e.mapsUnlistedValues&&t?t:void 0)}function pe(e,t){for(let n of e){let e=fe(n,t);if(e)return[{param:n.param,value:e}]}return[]}function me(e,t){let n=ne[e];if(n){let e=n.values?n.values[t]:t;return e?[{param:n.param,value:e}]:[]}let r=se[e];return r?t.split(`,`).flatMap(e=>pe(r,e.trim())):[]}function he(e){let t=new URLSearchParams,n=new Set;return e.forEach((e,r)=>{de(ue(r))||(n.add(r),t.append(r,e))}),e.forEach((e,r)=>{let i=ue(r);de(i)&&me(i,e).forEach(({param:e,value:r})=>{let i=n.has(e),a=t.getAll(e).includes(r);!i&&!a&&t.append(e,r)})}),t}var ge=new Set([`content-type`]);function _e(e){return b.includes(e)}function ve(e,t){return e&&_e(e)?e:t}function ye(e){return ee.includes(e)}function be(e){return e&&ye(e)?e:x.sort}function xe(e){let t=Number.parseInt(e??``,10);return Number.isInteger(t)&&t>0?t:x.page}function Se(e){return w.preserved.has(e)||w.preservedPrefixes.some(t=>e.startsWith(t))}function Ce(e){return w.filters.has(e)}function we(e){return w.state.has(e)}function Te(e){return he(new URLSearchParams(e.startsWith(`?`)?e.slice(1):e))}function Ee(e,t,n){let r=n.trim();if(!r)return;let i=e[t]??[];i.includes(r)||(e[t]=[...i,r])}function De(e){return e.endsWith(`-min`)?{groupSlug:e.slice(0,-4),bound:`min`}:e.endsWith(`-max`)?{groupSlug:e.slice(0,-4),bound:`max`}:null}function Oe(e,t,n){let r=n.trim();r&&(e[t.groupSlug]={...e[t.groupSlug],[t.bound]:r})}function ke(e,t){let n=Te(e),r={...t?.selectedFilters},i={};return n.forEach((e,t)=>{if(we(t)||Se(t)||!Ce(t))return;let n=De(t);if(n){Oe(i,n,e);return}(ge.has(t)?e.split(`,`):[e]).forEach(e=>{Ee(r,t,e)})}),{query:t?.clearsQuery?``:n.get(C.query)?.trim()??``,contentType:ve(n.get(C.contentType),t?.contentType??x.contentType),sort:be(n.get(C.sort)),page:xe(n.get(C.page)),selectedFilters:r,selectedRanges:i}}function Ae(e,t,n,r=x.contentType){let i=new URL(t,n),a=new URLSearchParams,o=i.searchParams.has(C.contentType);i.searchParams.forEach((e,t)=>{Se(t)&&a.append(t,e)});let s=e.query.trim();return s&&a.set(C.query,s),(o||e.contentType!==r)&&a.set(C.contentType,e.contentType),e.sort!==x.sort&&a.set(C.sort,e.sort),e.page>x.page&&a.set(C.page,e.page.toString()),Object.entries(e.selectedFilters).forEach(([e,t])=>{let n=t.map(e=>e.trim()).filter(Boolean),r=Array.from(new Set(n));if(ge.has(e)){a.set(e,r.join(`,`));return}r.forEach(t=>{a.append(e,t)})}),Object.entries(e.selectedRanges).forEach(([e,t])=>
2{let n=t.min?.trim(),r=t.max?.trim();n&&a.set(`${e}-min`,n),r&&a.set(`${e}-max`,r)}),i.search=a.toString(),i.toString()}function je(e){return e.get(T.mealPlan)===`1`?E.MEAL_PLAN:e.get(T.shoppingList)===`1`?E.SHOPPING_LIST:E.NONE}function Me(e){let t=e.get(T.dayOfWeek);return te.find(e=>e===t)}function Ne(e){if(!e)return``;try{let t=new URL(e,window.location.origin);return t.origin===window.location.origin?`${t.pathname}${t.search}${t.hash}`:``}catch{return``}}function Pe(e=window.location.search){let t=new URLSearchParams(e);return{mode:je(t),listId:t.get(T.listId)??t.get(T.legacyListId)??``,listName:t.get(T.listName)??``,dayOfWeek:Me(t),returnUrl:Ne(t.get(T.returnPage))}}function Fe(){return(0,t.useMemo)(()=>Pe(window.location.search),[])}var Ie=`[data-vl-ai-search-page="1"]`;function Le(){return typeof document>`u`?null:document.querySelector(Ie)}function Re(e){return b.includes(e)?e:x.contentType}function ze(e){if(!e)return{};let t;try{t=JSON.parse(e)}catch{return{}}if(!t||typeof t!=`object`||Array.isArray(t))return{};let n={};return Object.entries(t).forEach(([e,t])=>{if(!Array.isArray(t))return;let r=t.filter(e=>typeof e==`string`).map(e=>e.trim()).filter(Boolean);r.length>0&&(n[e]=r)}),n}function Be(){let e=Le();return{contentType:Re(e?.dataset.vlAiSearchContentKind),selectedFilters:ze(e?.dataset.vlAiSearchSelectedFilters),clearsQuery:e?.dataset.vlAiSearchClearQuery===`1`}}var Ve=``,D,He=!1;function Ue(){Ve=``,D=void 0}function We(){let e=window.location.href;if(D&&Ve===e)return D;let t=Be();return Ve=e,D=ke(window.location.search,He?{contentType:t.contentType}:t),D}function O(e,t){let n=Ae(e,window.location.href,t.baseUrl??window.location.origin,Be().contentType);He=!0;let r=t.history===`push`?`pushState`:`replaceState`;window.history[r](null,``,n),Ue(),window.dispatchEvent(new CustomEvent(S))}function Ge(e){let t=()=>{Ue(),e()};return window.addEventListener(`popstate`,t),window.addEventListener(S,t),()=>{window.removeEventListener(`popstate`,t),window.removeEventListener(S,t)}}
2function Ke(){return{query:x.query,contentType:x.contentType,sort:x.sort,page:x.page,selectedFilters:{},selectedRanges:{}}}function k(){return(0,t.useSyncExternalStore)(Ge,We,Ke)}function A(e){return{...e,page:x.page}}function qe(e,t){return A({...e,contentType:t,selectedFilters:{},selectedRanges:{}})}function Je(e,t){return A({...e,sort:t})}function Ye({groupSlug:e,optionSlug:t,state:n}){let r=n.selectedFilters[e]??[],i=r.includes(t)?r.filter(e=>e!==t):[...r,t],a={...n.selectedFilters};return i.length>0?a[e]=i:delete a[e],A({...n,selectedFilters:a})}function Xe({groupSlug:e,range:t,state:n}){let r={...n.selectedRanges};return t?r[e]=t:delete r[e],A({...n,selectedRanges:r})}function Ze(e){return A({...e,selectedFilters:{},selectedRanges:{}})}function Qe(e,t){return{...e,page:t}}function $e(){let e=k();function t(t){O(qe(e,t),{history:`push`})}return{contentType:e.contentType,setContentType:t}}function et(){let e=k();function t(t){O(Je(e,t),{history:`push`})}return{sort:e.sort,setSort:t}}function tt(e){return e.map(e=>e.trim()).filter(Boolean)}function nt(e){let t=Object.entries(e.selectedFilters).flatMap(([e,t])=>{let n=tt(t);return n.length===0?[]:[{filter_group_slug:e,values:n}]}),n=Object.entries(e.selectedRanges).flatMap(([e,t])=>{let n=t.min?.trim(),r=t.max?.trim();return n&&r?[{filter_group_slug:e,min:n,max:r}]:n?[{filter_group_slug:e,min:n}]:r?[{filter_group_slug:e,max:r}]:[]});return[...t,...n]}function rt(e,t={}){let n={query:e.query.trim(),content_kind:e.contentType,content_type:e.contentType,filters:nt(e),sort:(t.sort??e.sort).trim()||null};return t.limit!==void 0&&t.offset!==void 0?{search_request:n,pagination:{limit:t.limit,offset:t.offset},matchCompleteWords:!0}:{search_request:n,matchCompleteWords:!0}}function it(e){return{search_request:{query:e.query.trim(),content_kind:e.contentType,content_type:e.contentType,filters:nt(e),sort:null}}}var at=`X-WP-Nonce`,ot={apiUrl:`/wp-json/valio-ai-search/v1`,nonce:``,appEnv:``,rootId:`vl-ai-search-chat`,currentPageId:null,searchPageUrl:`/hakutulokset/`,isSearchPage:!1,cloudflareMode:!1,turnstileSiteKey:``},st=()=>typeof window>`u`?{}:window.__VL_AI_SEARCH??{},ct=()=>({...ot,...st()});function lt(){let e=ct();if(e.apiUrl.trim()!==``&&e.nonce.trim()!==``)return e;throw Error(`AI Search app config is missing required values.`)}var ut=(e=ct())=>e.appEnv===`development`,dt=()=>void 0,ft=class e{turnstile;id;onToken=dt;onError=dt;onExpired=dt;constructor(e,t){this.turnstile=e,this.id=t}static create(t){let n=window.turnstile;if(!n)throw Error(`Turnstile is unavailable`);let r=document.createElement(`div`);r.hidden=!0,document.body.append(r);let i,a=n.render(r,{sitekey:t.turnstileSiteKey,size:`invisible`,execution:`execute`,callback(e){i.handleToken(e)}
2,"error-callback"(){i.handleError()},"expired-callback"(){i.handleExpired()}});if(!a)throw r.remove(),Error(`Turnstile is unavailable`);return i=new e(n,a),i}execute(e){this.onToken=e.onToken,this.onError=e.onError,this.onExpired=e.onExpired,this.turnstile.execute(this.id)}release(){this.turnstile.reset(this.id)}handleToken(e){this.onToken(e)}handleError(){this.onError()}handleExpired(){this.onExpired()}},pt=new class{prepare(e=ct()){if(!this.shouldUseTurnstile(e)||!this.isAvailable())return;let t=this.getState();if(!t.isPreclearanceStarted){t.isPreclearanceStarted=!0;try{let n=this.getWidget(e);n.execute({onToken(){n.release()},onError(){n.release(),t.isPreclearanceStarted=!1},onExpired(){n.release(),t.isPreclearanceStarted=!1}})}catch{t.isPreclearanceStarted=!1}}}getWidget(e){let t=this.getState();return t.widget||=ft.create(e),t.widget}getState(){return window.valioAiSearchTurnstileState??={isPreclearanceStarted:!1,widget:null},window.valioAiSearchTurnstileState}shouldUseTurnstile(e){return e.cloudflareMode&&e.turnstileSiteKey.trim()!==``}isAvailable(){return typeof document<`u`&&typeof window<`u`&&!!window.turnstile}},mt=`/wp-json/wp/v2/ads`,ht=`vl_ad-placement_slug`;function gt(e){let t=new URL(mt,window.location.origin);return t.searchParams.set(ht,e.placementSlug),t.toString()}async function _t(e,t={}){let n=await fetch(gt(e),{method:`GET`,credentials:`same-origin`,headers:{Accept:`application/json`},signal:t.signal});if(!n.ok)throw Error(`Ads request failed: ${n.statusText}`);return await n.json()}function vt(e){return JSON.stringify({search_request:e.search_request})}async function yt(e,t={}){let n=t.configOverride??lt(),r=new URL(`${n.apiUrl}/search/filters`,window.location.origin),i=vt(e),a=await fetch(r.toString(),{method:`POST`,credentials:`same-origin`,headers:{"Content-Type":`application/json`,[at]:n.nonce},signal:t.signal,body:i});if(!a.ok)throw Error(`Filters request failed: ${a.statusText}`);return await a.json()}
2function bt(e){return e.content_kind===`recipe`}function xt(e){return e.content_kind===`product`}function St(e){return e.content_kind===`recipe_group`}function Ct(e){return e.content_kind===`content`}function wt(e){let t=Number(e);return Number.isNaN(t)?0:t}function Tt(e){let t=e.meta,n=t.external_id??``;return{id:e.id,name:e.title,activeDuration:t.preparation_time_active_minutes??0,passiveDuration:t.preparation_time_passive_minutes??void 0,url:e.url??``,review:t.rating??void 0,isNew:t.flag_is_new,isPublished:!0,isBaking:!1,isValio120:t.flag_is_valio_120,personalization:[],image:e.image_url??``,createDate:``,createdBy:``,matterId:n,matterType:`RECIPE`,order:0,parentRecipeIds:[],portionUnit:``,analyticsJSON:t.analytics_object_json}}function Et(e){let t=e.meta,n=t.external_id??``;return{id:wt(t.external_id),url:e.url??``,name:e.title,image:e.image_url??``,createDate:``,createdBy:``,matterId:n,matterType:`PRODUCT`,order:0,parentRecipeIds:[],package:``,ean:``,isPublished:!0,isNew:t.flag_is_new,isValio120:t.flag_is_valio_120,isConsumerProduct:t.flag_is_consumer_product,isRetailProduct:t.flag_is_retail_product,isLargePack:t.flag_is_large_pack,analyticsJSON:t.analytics_object_json}}function Dt(e){let t=e.meta;return{url:e.url??void 0,title:e.title,image:e.image_url??void 0,imageAlt:e.title,isPublished:!0,analyticsJSON:t.analytics_object_json}}function Ot(e){let t=Ct(e)?e.meta:null,n=typeof e.meta.analytics_object_json==`string`?e.meta.analytics_object_json:``;return{url:kt(e.url),title:e.title,image:kt(e.image_url),imageAlt:e.title,isPublished:!0,contentFamily:t?.content_family[0]??``,contentType:kt(e.content_type)??``,analyticsJSON:n}}function kt(e){return e??void 0}function j(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function At(e){return j(e)&&typeof e.title==`string`}function jt(e){return typeof e==`string`||typeof e==`number`}function Mt(e){return typeof e==`string`?e:void 0}function Nt(e){if(!jt(e))return;let t=String(e).trim();return t===``?void 0:t}function Pt(e,t){return Mt(e.content_id)??t}function Ft(e,t,n){return Mt(e[t])??n}function It(e,t){return Mt(e[t])??null}function M(e){return typeof e==`number`?e:null}function Lt(e){return typeof e==`number`||typeof e==`string`?e:null}function N(e){return typeof e==`boolean`&&e}function P(e){return typeof e==`string`?e:``}function Rt(e){return Array.isArray(e)?e.filter(e=>typeof e==`string`):[]}function zt(e){return{external_id:Lt(e.external_id),preparation_time_active_minutes:M(e.preparation_time_active_minutes),preparation_time_passive_minutes:M(e.preparation_time_passive_minutes),rating:M(e.rating),flag_is_new:N(e.flag_is_new),flag_is_inhouse:N(e.flag_is_inhouse),flag_is_valio_120:N(e.flag_is_valio_120),analytics_object_json:P(e.analytics_object_json)}}function Bt(e){return{external_id:Lt(e.external_id),analytics_object_json:P(e.analytics_object_json),flag_is_new:N(e.flag_is_new),flag_is_valio_120:N(e.flag_is_valio_120),flag_is_consumer_product:N(e.flag_is_consumer_product),flag_is_retail_product:N(e.flag_is_retail_product),flag_is_large_pack:N(e.flag_is_large_pack)}}function Vt(e){return{content_family:Rt(e.content_family),content_series:Rt(e.content_series),analytics_object_json:P(e.analytics_object_json)}}function Ht(e){return{analytics_object_json:P(e.analytics_object_json)}}function Ut(e){if(!At(e))return;let t=Nt(e.id);if(!t)return;let n={id:t,content_id:Pt(e,t),content_type:Ft(e,`content_type`,``),title:e.title,url:It(e,`url`),excerpt:It(e,`excerpt`),image_url:It(e,`image_url`)},r=Ft(e,`content_kind`,`content`),i=j(e.meta)?e.meta:{};return r===`recipe`?{...n,content_kind:r,meta:zt(i)}:r===`product`?{...n,content_kind:r,meta:Bt(i)}
2:r===`recipe_group`?{...n,content_kind:r,meta:Ht(i)}:r===`content`?{...n,content_kind:r,meta:Vt(i)}:{...n,content_kind:r,meta:i}}function Wt(e){return[`limit`,`offset`,`total`,`count`].every(t=>typeof e[t]==`number`)}function Gt(e){if(j(e.meta)&&j(e.meta.pagination))return Wt(e.meta.pagination)?e.meta:void 0}function Kt(e){if(!j(e)||!j(e.data))return!1;let t=Gt(e);return Array.isArray(e.data.results)&&t!==void 0}function qt(e){if(Kt(e))return{data:{results:e.data.results.map(e=>Ut(e)).filter(e=>e!==void 0)},meta:e.meta,...j(e.debug)?{debug:e.debug}:{}}}function Jt(){return ut()?{client_request_id:`search-${Date.now()}-${Math.random().toString(36).slice(2)}`,started_at:Date.now(),location:window.location.href}:void 0}function Yt(e,t){return JSON.stringify({search_request:e.search_request,...e.pagination?{pagination:e.pagination}:{},...e.enableFallbackResults?{enableFallbackResults:!0}:{},...e.matchCompleteWords?{matchCompleteWords:!0}:{},...t?{debug:t}:{}})}function Xt(e){if(!e.ok)throw Error(`Search failed: ${e.statusText}`)}function Zt(e){let t=qt(e);if(!t)throw Error(`Search response did not match the public contract`);return t}async function Qt(e,t={}){let n=t.configOverride??lt(),r=Jt(),i=await fetch(`${n.apiUrl}/search`,{method:`POST`,credentials:`same-origin`,headers:{"Content-Type":`application/json`,[at]:n.nonce},signal:t.signal,body:Yt(e,r)});return Xt(i),Zt(await i.json())}var $t=`valio_ab_`,en=50,tn=250,nn=8,rn=[`ab_test_original_image`,`ab_test_ai_image`],an=e=>new Promise(t=>{window.setTimeout(t,e)}),on=async()=>{for(let e=0;e<nn;e+=1){if(window.UC_UI!==void 0&&typeof window.UC_UI.getServicesBaseInfo==`function`)return!0;await an(Math.min(en*2**e,tn))}return window.UC_UI!==void 0&&typeof window.UC_UI.getServicesBaseInfo==`function`},sn=async()=>{if(window.valioAnalytics!==void 0&&!window.valioAnalytics.isProduction&&window.UC_UI===void 0)return!0;if(window.valioAnalytics!==void 0&&window.valioAnalytics.isProduction&&!await on())return!1;if(window.UC_UI!==void 0&&typeof window.UC_UI.getServicesBaseInfo==`function`)try{let e=await window.UC_UI.getServicesBaseInfo();return!e||!Array.isArray(e)?!1:e.some(e=>{if(!e||!e.categorySlug||!e.consent)return!1;let t=e.categorySlug.toLowerCase();return(t===`functional`||t===`statistics`||t.startsWith(`customcategory-`))&&e.consent.status===!0})}catch{return!1}return!1},cn=()=>{try{let e=new URLSearchParams(window.location.search).get(`ab_variant`)?.toUpperCase();if(e===`A`||e===`B`)return e}catch{return null}return null},ln=(e,t)=>{let n=cn();if(n)return n;let r=`${$t}${e}`,i={},a=Date.now();try{let e=localStorage.getItem(r);if(e){let t=JSON.parse(e);i=t._expires&&a>t._expires?{}:t.variants||t}}catch{i={}}let o=String(t),s;i[o]===`A`||i[o]===`B`?s=i[o]:(s=Math.random()<.5?`A`:`B`,i[o]=s);try{localStorage.setItem(r,JSON.stringify({_expires:a+2592e6,variants:i}))}catch{}return s},un=async e=>{if(!e||!e.ab_test_id)return e;let t=e.ab_test_id,n=e.ab_test_original_image,r=e.ab_test_ai_image,i={...e};if(rn.forEach(e=>{delete i[e]}),!await sn())return delete i.ab_test_id,i;let a=ln(t,e.item_id),o=a===`B`?r:n;return i.ab_test_variant=a,i.image_url=o&&o.src?o.src:``,i},dn=async e=>!e||!Array.isArray(e)?e:Promise.all(e.map(e=>un(e))),fn=`trackingQueue`,pn=class{append(e){let t=this.getQueue();t.push(e),localStorage.setItem(fn,JSON.stringify(t))}run(){let e=this.getQueue(),t=window;e.length!==0&&(localStorage.removeItem(fn),t.dataLayer=t.dataLayer||[],e.forEach(e=>t.dataLayer?.push(e)))}getQueue(){let e=localStorage.getItem(fn);return e?JSON.parse(e):[]}},mn={item_list_id:`hakutulokset`,item_list_name:`Hakutulokset`};function hn({eventAction:e,query:t,totalCount:n}){window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:`search`,event_action:e,search_modal:`generic_results_page`,search_term:t.trim(),search_result_count:n})}function gn(e,t,n){let r=typeof e.analytics_object_json==`string`?e.analytics_object_json:``;if(!r)return null;let i=JSON.parse(r);return!i||typeof i!=`object`?null:{...i,item_list_name:n.item_list_name,index:t}}async function _n({list:e=mn,results:t,startIndex:n}){let r=(await dn(t.map((t,r)=>gn(t.meta,n+r+1,e)).filter(e=>e!==null)))?.filter(e=>e!==null);if(!r||r.length===0)return;let i=new pn;i.append({ecommerce:null}),i.append({event:`view_item_list`,ecommerce:{...e,items:r}}),i.run()}
2async function vn(e,t,n=mn){let r=await un(gn(e,t,n));if(!r)return;let i=new pn;i.append({ecommerce:null}),i.append({event:`select_item`,ecommerce:{...n,items:[r]}}),i.run()}function yn(e,t){hn({eventAction:`text_input`,query:e,totalCount:t})}function bn(e,t){hn({eventAction:`result_click`,query:e,totalCount:t})}function xn({enabled:e,pages:n,trackingKey:r}){let i=(0,t.useRef)(new Set),a=(0,t.useRef)(``);(0,t.useEffect)(()=>{e&&(a.current!==r&&(a.current=r,i.current=new Set),n.forEach(e=>{let t=e.meta.pagination.offset;i.current.has(t)||(i.current.add(t),_n({results:e.data.results,startIndex:t}))}))},[e,n,r])}var Sn=12,Cn=`search-page-results`;function wn(e){return e.reduce((e,t)=>e+t.data.results.length,0)}function Tn(e){return e[e.length-1]?.meta.pagination.count??wn(e)}function En(e,t){let n=Tn(t);return n<e.meta.pagination.total?n:void 0}function Dn(e=[]){return e.flatMap(e=>e.data.results)}function On(e){return e.pageSize??Sn}function kn(e){return e.placeholderData===!1?void 0:m}function An(e){return{...e,page:1}}function jn(e,t){return JSON.stringify({state:An(e),pageSize:t})}function Mn(e,t,n,r){let i=An(e);return p({queryKey:[Cn,i,t],queryFn:({pageParam:e,signal:n})=>Qt(rt(i,{limit:t,offset:e,sort:i.sort}),{signal:n}),initialPageParam:0,getNextPageParam:En,placeholderData:n,enabled:r})}function Nn(e,t){return e.data?.pages??t}function Pn(e){return e instanceof Error?e:null}function Fn(e,t,n,r){let i=Nn(e,t);return{results:Dn(i),totalCount:i[0]?.meta.pagination.total??0,isLoading:e.isLoading&&i.length===0,isFetching:e.isFetching,isFetchingNextPage:e.isFetchingNextPage,isError:e.isError,error:Pn(e.error),hasNextPage:e.hasNextPage,loadMoreRef:r,fetchNextPage:async()=>{let t=await e.fetchNextPage(),r=t.data?.pages.length??i.length;return r>n.page&&O(Qe(n,r),{history:`replace`}),t}}}function In({loadedPageCount:e,query:t,state:n}){return e>0&&e<n.page&&!!t.hasNextPage&&!t.isFetchingNextPage}function Ln(e={}){let n=k(),r=e.state??n,i=On(e),a=Mn(r,i,kn(e),e.enabled??!0),o=(0,t.useRef)([]),s=(0,t.useRef)(null);return a.data?.pages&&(o.current=a.data.pages),xn({enabled:e.trackViewItemList??!1,pages:a.data?.pages??[],trackingKey:jn(r,i)}),(0,t.useEffect)(()=>{In({loadedPageCount:a.data?.pages.length??0,query:a,state:r})&&a.fetchNextPage()},[a,r.page]),(0,t.useEffect)(()=>{let e=s.current;if(!e||!a.hasNextPage)return;let t=new IntersectionObserver(e=>{let[t]=e;t.isIntersecting&&!a.isFetchingNextPage&&a.fetchNextPage()},{rootMargin:`400px 0px`});return t.observe(e),()=>{t.disconnect()}},[a]),Fn(a,o.current,r,s)}function Rn(e){if(!e||!Object.hasOwn(e,`children`))return{normalizedProps:e,children:void 0,hasChildren:!1};let{children:t,...n}=e;return{normalizedProps:Object.keys(n).length>0?n:null,children:t,hasChildren:!0}}function zn(e,t){return t==null?e??null:e?{...e,key:t}:{key:t}}function Bn(e,t,n,r,i=!1){let{normalizedProps:a,children:o,hasChildren:s}=Rn(zn(n,r));return s?i&&Array.isArray(o)?e.createElement(t,a,...o):e.createElement(t,a,o):e.createElement(t,a)}function Vn(e){return{Fragment:e.Fragment,jsx(t,n,r){return Bn(e,t,n,r)},jsxs(t,n,r){return Bn(e,t,n,r,!0)},jsxDEV(t,n,r,i,...a){return Bn(e,t,n,r,i)}}}var{jsx:F,jsxs:I,jsxDEV:Hn}=Vn({Fragment:t.Fragment,createElement:t.createElement}),Un=(0,t.forwardRef)(({name:e,options:n,selectedValue:r,onChange:i,showLabel:a=!1,className:o=``},s)=>{let c=(0,t.useMemo)(()=>{let e=n.findIndex(e=>e.value===r);return e===-1?n.length-1:e},[n,r]),l=e=>{let t=n[parseInt(e.target.value,10)];t&&i(t.value)},u=e=>`${e/(n.length-1)*100}%`;return I(`div`,{ref:s,className:v(`vl-range-slider`,o,a?``:`hide-label`),children:[F(`div`,{className:`vl-range-slider__header`,children:F(`label`,{htmlFor:`range-${e}`,className:v(`vl-range-slider__label`),children:`Valmistusaika`})}),I(`div`,{className:`vl-range-slider__track-wrapper`,children:[F(`div`,{className:`vl-range-slider__labels`,"aria-hidden":`true`,children:n.map((e,t)=>F(`button`,{type:`button`,onClick:()=>i(e.value),className:v(`vl-range-slider__label-text`,t<=c?`is-active`:``),style:{left:u(t)},children:e.label},`label-${e.value}`))}),I(`div`,{className:`vl-range-slider__track-container`,children:[F(`input`,{type:`range`,id:`range-${e}`,name:e,min:`0`,max:n.length-1,step:`1`,value:c,onChange:l,className:`vl-range-slider__input`,style:{backgroundSize:`${c/(n.length-1)*100}% 100%`}}),F(`div`,{className:`vl-range-slider__steps`,"aria-hidden":`true`,children:n.map((e,t)=>F(`span`,{className:v(`vl-range-slider__step-tick`,t<=c?`is-active`:``,t===c?`is-current`:``),style:{left:u(t)}},`tick-${e.value}`))})]})]})]})});function Wn(){return F(`svg`,{xmlns:`http://www.w3.org/2000/svg`,
2width:`15`,height:`15`,viewBox:`0 0 15 15`,fill:`none`,children:F(`path`,{d:`M7.5 0.75V14.25M0.75 7.5H14.25`,stroke:`#002F6D`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`})})}function Gn({children:e,id:t,isOpen:n,isSelected:r=!1,label:i,onToggle:a,selectedCount:o=0}){let s=`${t}-panel`;return I(`details`,{className:v(`vl-accordion-frame`,n?`is-open`:void 0,r||o>0?`is-selected`:void 0),open:n,children:[I(`summary`,{className:`vl-accordion-frame__toggle`,"aria-controls":s,onClick:e=>{e.preventDefault(),a()},children:[F(`span`,{className:`vl-accordion-frame__label`,children:i}),F(`span`,{className:`vl-accordion-frame__icon`,"aria-hidden":`true`,children:F(Wn,{})})]}),n||o>0?F(`div`,{id:s,className:`vl-accordion-frame__panel`,children:e}):null]})}var Kn=({className:e})=>F(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`12`,height:`12`,viewBox:`0 0 12 12`,fill:`none`,className:e,children:F(`path`,{d:`M11.25 5.75H0.75M0.75 5.75L5.75 10.75M0.75 5.75L5.75 0.75`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`})}),L=({className:e})=>F(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,className:e,children:F(`path`,{d:`M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z`})});function qn({className:e}){return F(`svg`,{viewBox:`0 0 24 24`,"aria-hidden":`true`,focusable:`false`,className:e,children:F(`path`,{d:`M7.4 7.4a1 1 0 0 1 1.41 0L12 10.6l3.18-3.2a1 1 0 1 1 1.42 1.42L13.42 12l3.18 3.18a1 1 0 0 1-1.42 1.42L12 13.42l-3.18 3.18a1 1 0 0 1-1.42-1.42L10.58 12L7.4 8.82a1 1 0 0 1 0-1.42Z`,fill:`currentColor`})})}var Jn=({className:e})=>F(`svg`,{width:`11`,height:`11`,viewBox:`0 0 11 11`,fill:`none`,className:e,xmlns:`http://www.w3.org/2000/svg`,children:F(`path`,{d:`M5.25 0.75V9.75M0.75 5.25H9.75`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`})}),Yn=({className:e})=>F(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,viewBox:`0 0 16 16`,fill:`none`,className:e,children:F(`path`,{d:`M0.75 2.4688L7.62505 2.4688M11.0626 2.4688H14.5M11.0626 0.75V4.18749M0.75 12.8365H4.07664M7.625 12.8365H14.5M7.625 11.0625V14.5M14.5 7.62492L7.62495 7.62492M4.18736 7.62492H0.75M4.18736 9.34372L4.18736 5.90623`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`})}),Xn=({className:e})=>F(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`13`,height:`14`,viewBox:`0 0 13 14`,className:e,fill:`none`,children:F(`path`,{d:`M1.25 3.83337H2.41668M2.41668 3.83337H11.7501M2.41668 3.83337L2.41668 12.0001C2.41668 12.3096 2.5396 12.6063 2.7584 12.8251C2.97719 13.0439 3.27394 13.1668 3.58337 13.1668H9.41678C9.7262 13.1668 10.023 13.0439 10.2417 12.8251C10.4605 12.6063 10.5835 12.3096 10.5835 12.0001V3.83337M4.16671 3.83337V2.66668C4.16671 2.35726 4.28963 2.06051 4.50842 1.84171C4.72722 1.62292 5.02397 1.5 5.33339 1.5H7.66676C7.97618 1.5 8.27293 1.62292 8.49172 1.84171C8.71052 2.06051 8.83344 2.35726 8.83344 2.66668V3.83337`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`})}),Zn=({className:e})=>F(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`12`,height:`9`,viewBox:`0 0 12 9`,className:e,fill:`none`,children:F(`path`,{d:`M10.75 0.75L3.875 7.75L0.75 4.56818`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`})}),Qn=({className:e})=>F(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`14`,height:`13`,viewBox:`0 0 14 13`,className:e,fill:`none`,children:F(`path`,{d:`M12.0747 2.3898C11.7815 2.10152 11.4333 1.87283 11.0502 1.7168C10.667 1.56078 10.2563 1.48047 9.84153 1.48047C9.42677 1.48047 9.01607 1.56078 8.63289 1.7168C8.24972 1.87283 7.90158 2.10152 7.60837 2.3898L6.99985 2.98781L6.39132 2.3898C5.79905 1.80776 4.99576 1.48077 4.15817 1.48077C3.32057 1.48077 2.51728 1.80776 1.92501 2.3898C1.33273 2.97184 1 3.76126 1 4.58439C1 5.40752 1.33273 6.19694 1.92501 6.77899L2.53353 7.377L6.99985 11.7662L11.4662 7.377L12.0747 6.77899C12.368 6.49084 12.6007 6.14871 12.7595 5.77216C12.9183 5.3956 13 4.99199 13 4.58439C13 4.17679 12.9183 3.77319 12.7595 3.39663C12.6007 3.02007 12.368 2.67795 12.0747 2.3898Z`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`})}),$n=({className:e})=>I(`svg`,{width:`16`,height:`16`,viewBox:`0 0 16 16`,fill:`none`,className:e,xmlns:`http://www.w3.org/2000/svg`,children:[F(`path`,{d:`M4.71197 3.04449C4.77909 3.04449 4.83349 3.09901 4.83595 3.16608C4.85901 3.79388 5.03134 4.25275 5.36167 4.56325C5.72955 4.90877 6.2885 5.04365 6.78149 5.09017C6.84513 5.09633 6.89466 5.149 6.89474 5.21295V5.27077C6.8947 5.33497 6.84482 5.38821 6.78089 5.39416C6.28876 5.43991 5.72941 5.57566 5.36167 5.92107C5.0314 6.23045 4.85899 6.69034 4.83595 7.31824C4.83339 7.38521 4.77902 7.43924 4.71197 7.43924H4.68276C4.61572 7.43924 4.56135 7.38521 4.55878 7.31824C4.53574 6.69051 4.3633 6.23158 4.03306 5.92107C3.66519 5.57553 3.10625 5.44068 2.61325 5.39416C2.54949 5.38805 2.5 5.33484 2.5 5.27077V5.21355C2.5 5.14932 2.5499 5.09611 2.61385 5.09017C3.10595 5.0444 3.66534 4.90864 4.03306 4.56325C4.36337 4.25388 4.53573 3.79399 4.55878 3.16608C4.56125 3.09901 4.61565 3.04449 4.68276 3.04449H4.71197Z`,fill:`currentColor`}),F(`path`,{d:`M7.74948 1C7.789 1.00013 7.82107 1.03204 7.8228 1.07153C7.83609 1.39884 7.92705 1.63851 8.09997 1.8011C8.2903 1.97989 8.57735 2.05179 8.83371 2.07768C8.8758 2.08192 8.90867 2.11706 8.90882 2.15934C8.90882 2.2018 8.87597 2.23738 8.83371 2.24159C8.57774 2.26711 8.29027 2.33941 8.09997 2.51817C7.92701 2.68017 7.83609 2.92032 7.8228 3.24774C7.82113 3.28728 7.78904 3.31914 7.74948 3.31927C7.70981 3.31927 7.67725 3.28736 7.67557 3.24774C7.66228 2.92036 7.57139 2.68076 7.39841 2.51817C7.20804 2.33936 6.92105 2.26747 6.66466 2.24159C6.62253 2.23734 6.58964 2.20226 6.58955 2.15993C6.58955 2.1175 6.62244 2.08252 6.66466 2.07827C6.92065 2.05276 7.20808 1.97988 7.39841 1.8011C7.57136 1.6391 7.66228 1.39895 7.67557 1.07153C7.67731 1.03196 7.70985 1 7.74948 1Z`,fill:`currentColor`}),F(`path`,{d:`M4.71197 3.04449C4.77909 3.04449 4.83349 3.09901 4.83595 3.16608C4.85901 3.79388 5.03134 4.25275 5.36167 4.56325C5.72955 4.90877 6.2885 5.04365 6.78149 5.09017C6.84513 5.09633 6.89466 5.149 6.89474 5.21295V5.27077C6.8947 5.33497 6.84482 5.38821 6.78089 5.39416C6.28876 5.43991 5.72941 5.57566 5.36167 5.92107C5.0314 6.23045 4.85899 6.69034 4.83595 7.31824C4.83339 7.38521 4.77902 7.43924 4.71197 7.43924H4.68276C4.61572 7.43924 4.56135 7.38521 4.55878 7.31824C4.53574 6.69051 4.3633 6.23158 4.03306 5.92107C3.66519 5.57553 3.10625 5.44068 2.61325 5.39416C2.54949 5.38805 2.5 5.33484 2.5 5.27077V5.21355C2.5 5.14932 2.5499 5.09611 2.61385 5.09017C3.10595 5.0444 3.66534 4.90864 4.03306 4.56325C4.36337 4.25388 4.53573 3.79399 4.55878 3.16608C4.56125 3.09901 4.61565 3.04449 4.68276 3.04449H4.71197Z`,stroke:`currentColor`,strokeWidth:`0.2`}),F(`path`,{d:`M7.74948 1C7.789 1.00013 7.82107 1.03204 7.8228 1.07153C7.83609 1.39884 7.92705 1.63851 8.09997 1.8011C8.2903 1.97989 8.57735 2.05179 8.83371 2.07768C8.8758 2.08192 8.90867 2.11706 8.90882 2.15934C8.90882 2.2018 8.87597 2.23738 8.83371 2.24159C8.57774 2.26711 8.29027 2.33941 8.09997 2.51817C7.92701 2.68017 7.83609 2.92032 7.8228 3.24774C7.82113 3.28728 7.78904 3.31914 7.74948 3.31927C7.70981 3.31927 7.67725 3.28736 7.67557 3.24774C7.66228 2.92036 7.57139 2.68076 7.39841 2.51817C7.20804 2.33936 6.92105 2.26747 6.66466 2.24159C6.62253 2.23734 6.58964 2.20226 6.58955 2.15993C6.58955 2.1175 6.62244 2.08252 6.66466 2.07827C6.92065 2.05276 7.20808 1.97988 7.39841 1.8011C7.57136 1.6391 7.66228 1.39895 7.67557 1.07153C7.67731 1.03196 7.70985 1 7.74948 1Z`,stroke:`currentColor`,strokeWidth:`0.2`}),F(`path`,{d:`M10.6388 5.25675L12.5246 7.14253M4.17181 13.6095C3.65106 13.0888 3.65106 12.2445 4.17181 11.7238L11.7315 4.16399C12.2523 3.64325 13.0966 3.64325 13.6173 4.164C14.1381 4.68474 14.1381 5.52903 13.6173 6.04977L6.05758 13.6095C5.53684 14.1303 4.69255 14.1303 4.17181 13.6095Z`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`})]}),er=32,tr=400,nr=12,rr=24,ir=`[data-dropdown-boundary]`;function ar(e){return{inlineStyle:{"--_panel-available-height":`calc(100vh - 8rem)`,"--_panel-left":`0`,"--_panel-max-width":`${e}px`,"--_panel-right":`auto`}}}function or(e){let t=e.closest(ir);if(t instanceof HTMLElement){let e=t.getBoundingClientRect(),n=window.getComputedStyle(t),r=parseFloat(n.paddingLeft)||0,i=parseFloat(n.paddingRight)||0;return new DOMRect(e.left+r,e.top,Math.max(e.width-r-i,0),e.height)}return new DOMRect(rr,0,window.innerWidth-48,window.innerHeight)}
2function sr(e){let t=window.visualViewport?.height??window.innerHeight;return Math.max(t-e.bottom-nr-er,0)}function cr({dropdownRef:e,isOpen:n,panelMaxWidth:r=tr}){let[i,a]=(0,t.useState)(()=>ar(r));return(0,t.useEffect)(()=>{if(!n){a(ar(r));return}function t(){let t=e.current;if(!t)return;let n=t.getBoundingClientRect(),i=or(t),o=sr(n),s=Math.max(i.right-n.left,0),c=Math.max(n.right-i.left,0),l=s<r&&c>s;a({inlineStyle:{"--_panel-available-height":`${o}px`,"--_panel-left":l?`auto`:`0`,"--_panel-max-width":`${r}px`,"--_panel-right":l?`0`:`auto`}})}return t(),window.addEventListener(`resize`,t),window.visualViewport?.addEventListener(`resize`,t),()=>{window.removeEventListener(`resize`,t),window.visualViewport?.removeEventListener(`resize`,t)}},[e,n,r]),i}function R({children:e,hasPanelHeader:n=!0,id:r,isOpen:i,isSelected:a,label:o,onClose:s,onMainToggle:c,onToggle:l,panelMaxWidth:u,prefill:d,selectedCount:f=0}){let p=(0,t.useRef)(null),{inlineStyle:m}=cr({dropdownRef:p,isOpen:i,panelMaxWidth:u}),h=`${r}-panel`,g=d??o,_=a??f>0,y=!!c,b=I(`span`,{className:`vl-dropdown-frame__label`,children:[g,f>0?F(`span`,{className:`vl-dropdown-frame__count`,children:f}):null]});return(0,t.useEffect)(()=>{if(!i)return;function e(e){let t=e.target;t instanceof Node&&(p.current?.contains(t)||s())}function t(e){e.key===`Escape`&&s()}return document.addEventListener(`mousedown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`mousedown`,e),document.removeEventListener(`keydown`,t)}},[i,s]),I(`div`,{ref:p,className:v(`vl-dropdown-frame`,y?`vl-dropdown-frame--split`:void 0,i?`is-open`:void 0,_?`is-selected`:void 0),children:[y?I(t.Fragment,{children:[F(`button`,{type:`button`,className:`vl-dropdown-frame__main`,"aria-pressed":_,onClick:c,children:b}),F(`button`,{type:`button`,className:`vl-dropdown-frame__arrow`,"aria-expanded":i,"aria-controls":h,"aria-label":`Open ${o}`,onClick:l,children:F(L,{className:`vl-dropdown-frame__chevron`})})]}):I(`button`,{type:`button`,className:`vl-dropdown-frame__toggle`,"aria-expanded":i,"aria-controls":h,onClick:l,children:[b,F(L,{className:`vl-dropdown-frame__chevron`})]}),i&&I(`div`,{id:h,className:`vl-dropdown-frame__panel`,style:m,role:`dialog`,"aria-label":o,children:[n?I(`div`,{className:`vl-dropdown-frame__panel-header`,children:[F(`span`,{className:`vl-dropdown-frame__panel-title`,children:o}),F(`button`,{type:`button`,className:`vl-dropdown-frame__panel-close`,onClick:s,"aria-label":`Close ${o}`,children:F(qn,{})})]}):null,e]})]})}function lr(e){return e.count===null||e.count===void 0?e.label:`${e.label}, ${e.count} tulosta`}function ur(e){return!!e.options?.length}function dr(e){return(e.options??[]).flatMap(e=>[e,...dr(e)])}function fr(e,t){return dr(e).filter(e=>t.includes(e.id)).length}function pr({options:e,path:t}){let n=[],r=e;for(let e of t){let t=r.find(t=>t.id===e);if(!t)break;n.push(t),r=t.options??[]}return n}function mr({options:e,selectedOptionIds:t}){for(let n of e){if(!ur(n))continue;let e=n.options??[];if(e.some(e=>t.includes(e.id)))return[n.id];let r=mr({options:e,selectedOptionIds:t});if(r.length>0)return[n.id,...r]}return[]}function hr({option:e,isSelected:t,selectedOptionIds:n,onEnter:r,onToggle:i}){let a=fr(e,n);return I(`fieldset`,{"aria-label":e.label,className:v(`vl-pill-drilldown-multi-select__item`,`vl-pill-drilldown-multi-select__branch`,t||a>0?`is-active`:void 0,e.disabled?`is-disabled`:void 0),children:[I(`label`,{className:`vl-pill-drilldown-multi-select__branch-select`,children:[F(`input`,{className:`vl-pill-drilldown-multi-select__input`,type:`checkbox`,role:`switch`,checked:t,"aria-checked":t,disabled:e.disabled,"aria-label":lr(e),onChange:()=>i(e)}),F(`span`,{className:`vl-pill-drilldown-multi-select__label`,children:e.label}),a>0?F(`span`,{className:`vl-pill-drilldown-multi-select__count`,children:a}):null]}),F(`button`,{type:`button`,className:`vl-pill-drilldown-multi-select__branch-enter`,disabled:e.disabled,onClick:()=>r(e.id),"aria-label":`${e.label}, avaa alasuodattimet`,children:F(L,{className:`vl-pill-drilldown-multi-select__icon`})})]})}function gr({option:e,isSelected:t,onToggle:n}){let r=e.count===0||e.disabled;return I(`label`,{className:v(`vl-pill-drilldown-multi-select__item`,t?`is-active`:void 0,r?`is-disabled`:void 0),children:[F(`input`,{className:`vl-pill-drilldown-multi-select__input`,type:`checkbox`,role:`switch`,checked:t,"aria-checked":t,disabled:r,"aria-label":lr(e),onChange:()=>n(e)}),F(`span`,{className:`vl-pill-drilldown-multi-select__label`,children:e.label}),e.count!==null&&e.count!==void 0?`(${e.count})`:null]})}function _r({options:e,selectedOptionIds:n}){let[r,i]=(0,t.useState)(()=>mr({options:e,selectedOptionIds:n})),a=pr({options:e,path:r}).at(-1)??null;function o(e){i(t=>[...t,e])}
2function s(){i(e=>e.slice(0,-1))}return{activeBranch:a,currentOptions:a?.options??e,enter:o,back:s}}function vr({backLabel:e,label:t,onOptionToggle:n,options:r,selectedOptionIds:i}){let{activeBranch:a,currentOptions:o,enter:s,back:c}=_r({options:r,selectedOptionIds:i});return r.length===0?null:I(`fieldset`,{className:v(`vl-pill-drilldown-multi-select`,`vl-pill-drilldown-multi-select--grid`),children:[F(`legend`,{className:`screen-reader-text`,children:a?.label??t}),a?F(`button`,{type:`button`,className:`vl-pill-drilldown-multi-select__item vl-pill-drilldown-multi-select__back`,onClick:c,"aria-label":e??t,children:F(Kn,{className:`vl-pill-drilldown-multi-select__icon`,"aria-hidden":`true`})}):null,o.map(e=>ur(e)?F(hr,{option:e,isSelected:i.includes(e.id),selectedOptionIds:i,onEnter:s,onToggle:n},e.id):F(gr,{option:e,isSelected:i.includes(e.id),onToggle:n},e.id))]})}function z({width:e=`100%`,height:t=`100%`,className:n,startColor:r=`hsla(32, 25%, 88%, 1)`,endColor:i=`hsla(36, 38%, 95%, 1)`,style:a}){let o={width:e,height:t,"--vl-skeleton-start":r,"--vl-skeleton-end":i,...a};return F(`div`,{className:v(`skeleton-loader-base`,`singular-skeleton-box`,n),style:o,role:`status`,"aria-label":`Loading`})}function yr({label:e,loadingPlaceholder:t,optionCount:n}){let r=t?.items??[],i=r.length>0,a=i?r.length:Math.max(n,1);return{loadingLabel:t?.label??e,skeletonLabels:i?r:Array.from({length:a},()=>``)}}function br(e){let n=(0,t.useRef)(null),r=(0,t.useRef)({pointerId:null,startX:0,startScrollLeft:0,hasDragged:!1,isPointerCaptured:!1}),i=()=>{r.current.pointerId=null,r.current.startX=0,r.current.startScrollLeft=0,r.current.isPointerCaptured=!1};return{sliderRef:n,handlePointerDown:t=>{if(!e||t.pointerType===`mouse`&&t.button!==0)return;let i=n.current;i&&(r.current.pointerId=t.pointerId,r.current.startX=t.clientX,r.current.startScrollLeft=i.scrollLeft,r.current.hasDragged=!1,r.current.isPointerCaptured=!1)},handlePointerMove:t=>{if(!e||r.current.pointerId!==t.pointerId||!n.current)return;let i=t.clientX-r.current.startX;Math.abs(i)<=4||(r.current.hasDragged=!0,r.current.isPointerCaptured||(n.current.setPointerCapture(t.pointerId),r.current.isPointerCaptured=!0),n.current.scrollLeft=r.current.startScrollLeft-i)},handlePointerUp:e=>{r.current.pointerId===e.pointerId&&n.current&&(r.current.isPointerCaptured&&n.current.releasePointerCapture(e.pointerId),i())},handlePointerCancel:e=>{r.current.pointerId===e.pointerId&&n.current&&(r.current.isPointerCaptured&&n.current.releasePointerCapture(e.pointerId),i())},handleClickCapture:e=>{r.current.hasDragged&&(e.preventDefault(),e.stopPropagation(),r.current.hasDragged=!1)}}}function xr(e){return e.count===null||e.count===void 0?e.label:`${e.label}, ${e.count} tulosta`}function Sr(e){return e?typeof e==`string`?F(`img`,{className:`vl-pill-multi-select__icon-image`,src:e,alt:``,loading:`lazy`}):e:null}function Cr({option:e,onToggle:t}){let n=e?.count===0||e.disabled;return I(`label`,{className:v(`vl-pill-multi-select__item`,e.isSelected?`is-active`:void 0,n?`is-disabled`:void 0),children:[F(`input`,{className:`vl-pill-multi-select__input`,type:`checkbox`,role:`switch`,checked:e.isSelected,"aria-checked":e.isSelected,disabled:n,"aria-label":xr(e),onChange:()=>t(e)}),e.icon?F(`span`,{className:`vl-pill-multi-select__icon`,"aria-hidden":`true`,children:Sr(e.icon)}):null,F(`span`,{className:`vl-pill-multi-select__label`,children:e.label}),e.count!==null&&e.count!==void 0?`(${e.count})`:null]})}function wr(e){let t=e.trim().length;return`calc(${Math.max(t,4)}ch + 1.5rem)`}function Tr({isLoading:e=!1,isSliderEnabled:t=!1,label:n,loadingPlaceholder:r,onOptionToggle:i,options:a,variant:o=`default`}){let{sliderRef:s,handlePointerDown:c,handlePointerMove:l,handlePointerUp:u,handlePointerCancel:d,handleClickCapture:f}=br(t),{loadingLabel:p,skeletonLabels:m}=yr({label:n,loadingPlaceholder:r,optionCount:a.length}),h=v(`vl-pill-multi-select`,t?`vl-pill-multi-select--slider`:`vl-pill-multi-select--grid`,o==="default"?void 0:`vl-pill-multi-select--${o}`);return e?I(`fieldset`,{className:h,disabled:!0,ref:s,onPointerDown:c,onPointerMove:l,onPointerUp:u,onPointerCancel:d,onClickCapture:f,children:[F(`legend`,{className:`screen-reader-text`,children:p}),m.map((e,t)=>F(z,{className:`vl-pill-multi-select__skeleton`,height:`2.55rem`,width:wr(e)},t))]}):a.length===0?null:I(`fieldset`,{className:h,ref:s,onPointerDown:c,onPointerMove:l,onPointerUp:u,onPointerCancel:d,onClickCapture:f,children:[F(`legend`,{className:`screen-reader-text`,children:n}),a.map(e=>F(Cr,{option:e,onToggle:i},e.id))]})}function Er(e){return F(Tr,{...e})}function Dr(e){return e.count!==null&&e.count!==void 0?`${e.label} ${e.count}`:e.label}function Or({option:e,onEnter:t,onToggle:n}){return I(`fieldset`,{"aria-label":e.label,className:v(`vl-pill-nested-multi-select__item`,`vl-pill-nested-multi-select__branch`,e.isSelected||e.selectedDescendantCount>0?`is-active`:void 0,e.disabled?`is-disabled`:void 0),children:[I(`label`,{className:`vl-pill-nested-multi-select__branch-select`,children:[F(`input`,{className:`vl-pill-nested-multi-select__input`,type:`checkbox`,role:`switch`,checked:e.isSelected,"aria-checked":e.isSelected,disabled:e.disabled,"aria-label":Dr(e),onChange:()=>n(e)}),F(`span`,{className:`vl-pill-nested-multi-select__label`,children:e.label}),e.selectedDescendantCount>0?F(`span`,{className:`vl-pill-nested-multi-select__count`,children:e.selectedDescendantCount}):null]}),F(`button`,{type:`button`,className:`vl-pill-nested-multi-select__branch-enter`,disabled:e.disabled,onClick:()=>t(e.id),"aria-label":`${e.label}, avaa alasuodattimet`,children:F(L,{className:`vl-pill-nested-multi-select__icon`})})]})}function kr(e){return!!e.options?.length}function B(e){return(e.options??[]).flatMap(e=>[e,...B(e)])}function Ar(e,t){return B(e).filter(e=>t.includes(e.id)).length}function jr(e){return e.count!==null&&e.count!==void 0&&e.count>0}function Mr(e){return B(e).some(jr)}function Nr({options:e,selectedOptionIds:t}){return e.map(e=>{let n=Ar(e,t),r=kr(e),i=r?e.disabled||!jr(e)&&!Mr(e):e.disabled;return{...e,disabled:i,kind:r?`navigation`:`leaf`,selectedDescendantCount:n,isSelected:t.includes(e.id)}})}function Pr({parentOption:e,selectedOptionIds:t}){return B(e).map(e=>({option:e,isSelected:t.includes(e.id)}
2))}function Fr({options:e,selectedOptionIds:t}){for(let n of e)if(kr(n)&&B(n).some(e=>t.includes(e.id)))return n;return null}function Ir({options:e,selectedOptionIds:n}){let r=Fr({options:e,selectedOptionIds:n}),[i,a]=(0,t.useState)(r?.id??null);return{selectedParent:e.find(e=>e.id===i)??null,openParent:a,closeParent:()=>a(null)}}function Lr(e){let t=e.trim().length;return`calc(${Math.max(t,4)}ch + 1.5rem)`}function Rr(e){return e?typeof e==`string`?F(`img`,{className:`vl-pill-nested-multi-select__icon-image`,src:e,alt:``,loading:`lazy`}):F(t.Fragment,{children:e}):null}function zr({option:e,isSelected:t,onToggle:n}){let r=e?.count===0||e.disabled;return I(`label`,{className:v(`vl-pill-nested-multi-select__item`,t?`is-active`:void 0,r?`is-disabled`:void 0),children:[F(`input`,{className:`vl-pill-nested-multi-select__input`,type:`checkbox`,role:`switch`,checked:t,"aria-checked":t,disabled:r,"aria-label":Dr(e),onChange:()=>n(e)}),e.icon?F(`span`,{className:`vl-pill-nested-multi-select__option-icon`,"aria-hidden":`true`,children:Rr(e.icon)}):null,F(`span`,{className:`vl-pill-nested-multi-select__label`,children:e.label}),e.count!==null&&e.count!==void 0?`(${e.count})`:null]})}function Br({backLabel:e,isLoading:t=!1,isSliderEnabled:n=!1,label:r,loadingPlaceholder:i,onOptionToggle:a,options:o,selectedOptionIds:s,variant:c=`default`}){let{sliderRef:l,handlePointerDown:u,handlePointerMove:d,handlePointerUp:f,handlePointerCancel:p,handleClickCapture:m}=br(n),{loadingLabel:h,skeletonLabels:g}=yr({label:r,loadingPlaceholder:i,optionCount:o.length}),{selectedParent:_,openParent:y,closeParent:b}=Ir({options:o,selectedOptionIds:s}),ee=e??r,x=v(`vl-pill-nested-multi-select`,n?`vl-pill-nested-multi-select--slider`:`vl-pill-nested-multi-select--grid`,c==="default"?void 0:`vl-pill-nested-multi-select--${c}`);if(t)return I(`fieldset`,{className:x,disabled:!0,ref:l,onPointerDown:u,onPointerMove:d,onPointerUp:f,onPointerCancel:p,onClickCapture:m,children:[F(`legend`,{className:`screen-reader-text`,children:h}),g.map((e,t)=>F(z,{className:`vl-pill-nested-multi-select__skeleton`,height:`2.55rem`,width:Lr(e)},t))]});if(o.length===0)return null;if(_){let e=Pr({parentOption:_,selectedOptionIds:s});return I(`fieldset`,{className:x,ref:l,onPointerDown:u,onPointerMove:d,onPointerUp:f,onPointerCancel:p,onClickCapture:m,children:[F(`legend`,{className:`screen-reader-text`,children:_.label}),F(`button`,{type:`button`,className:`vl-pill-nested-multi-select__item vl-pill-nested-multi-select__back`,onClick:b,"aria-label":ee,children:F(Kn,{className:`vl-pill-nested-multi-select__icon`,"aria-hidden":`true`})}),e.map(e=>F(zr,{option:e.option,isSelected:e.isSelected,onToggle:a},e.option.id))]})}let S=Nr({options:o,selectedOptionIds:s});return I(`fieldset`,{className:x,ref:l,onPointerDown:u,onPointerMove:d,onPointerUp:f,onPointerCancel:p,onClickCapture:m,children:[F(`legend`,{className:`screen-reader-text`,children:r}),S.map(e=>e.kind===`leaf`?F(zr,{option:e,isSelected:e.isSelected,onToggle:a},e.id):F(Or,{option:e,onEnter:y,onToggle:a},e.id))]})}function Vr({className:e,count:t,isSelected:n,label:r,onToggle:i}){let a=t===0;return I(`label`,{className:v(`vl-pill-toggle-switch`,n?`is-active`:void 0,a?`is-disabled`:void 0,e),children:[F(`input`,{className:`vl-pill-toggle-switch__input`,type:`checkbox`,role:`switch`,checked:n,"aria-checked":n,"aria-label":r,onChange:i,disabled:a}),F(`span`,{className:`vl-pill-toggle-switch__label`,children:r}),t==null?null:`(${t})`]})}var V=(0,t.forwardRef)(({children:e,variant:t=`primary`,size:n=`md`,className:r,...i},a)=>F(`button`,{ref:a,className:v(`vl-c-btn-circle`,`vl-c-btn-circle--${t}`,n===`md`?``:`is-size-${n}`,r),...i,children:e}));(0,t.forwardRef)(({children:e,className:t,...n},r)=>F(`button`,{ref:r,className:v(`vl-c-btn-dashed`,t),...n,children:e})),(0,t.forwardRef)(({children:e,variant:t=`primary`,className:n,size:r=`md`,...i},a)=>F(`a`,{ref:a,className:v(`vl-c-btn-link`,`vl-c-btn-link--${t}`,r===`md`?``:`is-size-${r}`,n),...i,children:e}));var Hr=(0,t.forwardRef)(({children:e,variant:t=`primary`,className:n,size:r=`md`,...i},a)=>F(`button`,{ref:a,className:v(`vl-c-btn-pill`,`vl-c-btn-pill--${t}`,r===`md`?``:`is-size-${r}`,n),...i,children:e})),Ur=()=>I(`svg`,{width:`32`,height:`32`,viewBox:`0 0 32 32`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[F(`path`,{d:`M20.6667 12L12 20.6667`,stroke:`#002F6D`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`}
2),F(`path`,{d:`M20.6667 20.6667L12 12`,stroke:`#002F6D`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`})]});(0,t.forwardRef)(({label:e,className:t,callbackFn:n},r)=>F(`button`,{ref:r,className:v(`vl-c-btn-close`,t),onClick:n,"aria-label":e,children:F(Ur,{})})),(0,t.forwardRef)(({children:e,variant:t=`primary`,className:n,size:r=`md`,"data-testid":i,...a},o)=>F(`button`,{ref:o,className:v(`vl-c-btn-provider`,`vl-c-btn-provider--${t}`,r===`md`?``:`is-size-${r}`,n),"data-testid":i,...a,children:e}));function Wr(){return window.matchMedia(`(max-width: 781px)`).matches}function Gr({onChange:e,resetValue:n,value:r}){let[i,a]=(0,t.useState)(!1),[o,s]=(0,t.useState)(r),c=(0,t.useRef)(null);(0,t.useEffect)(()=>{if(!i)return;s(r);function e(e){let t=e.target;t instanceof Node&&(c.current?.contains(t)||a(!1))}function t(e){e.key===`Escape`&&a(!1)}return document.addEventListener(`mousedown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`mousedown`,e),document.removeEventListener(`keydown`,t)}},[i,r]);function l(){a(!i)}function u(){a(!1)}function d(t){s(t),Wr()||(e(t),a(!1))}function f(){e(o),a(!1)}function p(){n!==void 0&&(s(n),e(n)),a(!1)}return{handleApply:f,handleClear:p,handleClose:u,handleOptionClick:d,handleToggle:l,isOpen:i,pendingValue:o,rootRef:c}}function Kr(){return I(`svg`,{width:`14`,height:`10`,viewBox:`0 0 14 10`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`,focusable:`false`,children:[F(`path`,{d:`M3.35504 0.774414L3.35504 8.90647M0.773438 6.32487L3.35504 8.90647L5.93665 6.32487`,stroke:`currentColor`,strokeWidth:`1.54896`,strokeLinecap:`round`,strokeLinejoin:`round`}),F(`path`,{d:`M10.5825 9.23242L10.5825 0.971282M13.1641 3.59387L10.5825 0.971282L8.00085 3.59387`,stroke:`currentColor`,strokeWidth:`1.54896`,strokeLinecap:`round`,strokeLinejoin:`round`})]})}function qr({applyLabel:e=`Aseta`,clearLabel:t=`Tyhjennä`,id:n,label:r,onChange:i,options:a,resetValue:o,value:s}){let{handleApply:c,handleClear:l,handleClose:u,handleOptionClick:d,handleToggle:f,isOpen:p,pendingValue:m,rootRef:h}=Gr({onChange:i,resetValue:o,value:s}),g=`${n}-panel`,_=a.find(e=>e.value===s)?.label??r;return a.length===0?null:I(`div`,{ref:h,className:v(`vl-sort-options`,p?`is-open`:void 0),children:[I(`button`,{type:`button`,className:`vl-sort-options__trigger`,"aria-expanded":p,"aria-controls":g,onClick:f,children:[F(`span`,{className:`vl-sort-options__trigger-icon`,children:F(Kr,{})}),F(`span`,{className:`screen-reader-text`,children:r}),F(`span`,{className:`vl-sort-options__trigger-label`,children:_})]}),p?F(`div`,{className:`vl-sort-options__backdrop`,children:I(`div`,{id:g,className:`vl-sort-options__dialog`,role:`dialog`,"aria-label":r,children:[I(`div`,{className:`vl-sort-options__header`,children:[F(`h2`,{className:`vl-sort-options__title`,children:r}),o===void 0?null:F(`button`,{type:`button`,className:`vl-sort-options__clear`,onClick:l,children:t}),F(V,{className:`vl-sort-options__close`,onClick:u,"aria-label":`Close ${r}`,size:`sm`,variant:`secondary`,children:F(qn,{})})]}),F(`div`,{className:`vl-sort-options__list`,role:`listbox`,children:a.map(e=>{let t=m===e.value;return I(`button`,{type:`button`,className:v(`vl-sort-options__option`,t?`is-selected`:void 0),role:`option`,"aria-selected":t,onClick:()=>d(e.value),children:[F(`span`,{children:e.label}),t?F(`span`,{className:`vl-sort-options__check`,"aria-hidden":`true`,children:F(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`12`,height:`9`,viewBox:`0 0 12 9`,fill:`none`,children:F(`path`,{d:`M10.75 0.75L3.875 7.75L0.75 4.56818`,stroke:`#002F6D`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`})})}):null]},e.value)})}),F(`div`,{className:`vl-sort-options__footer`,children:F(Hr,{className:`vl-sort-options__apply`,onClick:c,size:`md`,variant:`primary`,children:e})})]})}):null]})}var Jr=[{label:`Kaikki`,value:`all`},{label:`Reseptit`,value:`recipes`},{label:`Tuotteet`,value:`products`},{label:`Sisällöt`,value:`content`}],Yr=[{label:`Sopivimmat`,value:`relevance`},{label:`Uusimmat`,value:`newest`},{label:`Suosituimmat`,value:`popular`},{label:`Paras arvostelu`,value:`rating`}];function Xr({contentType:e,setContentType:t}){return F(`div`,{className:`vl-ai-search-content__tabs`,role:`tablist`,"aria-label":`Content type`,children:Jr.map(n=>F(`button`,{type:`button`,role:`tab`,"aria-selected":e===n.value,className:e===n.value?`vl-ai-search-content__tab is-active`:`vl-ai-search-content__tab`,onClick:()=>
2t(n.value),children:n.label},n.value))})}function Zr(){let{sort:e,setSort:t}=et();return F(qr,{id:`vl-ai-search-sort`,label:`Järjestä tulokset`,options:Yr,resetValue:`relevance`,value:e,onChange:t})}function Qr({contentType:e,setContentType:t}){return I(`div`,{className:`vl-ai-search-content__controls`,children:[F(Xr,{contentType:e,setContentType:t}),F(Zr,{})]})}function $r({contentType:e,hasFilters:t,onOpenFilters:n,setContentType:r}){return I(`div`,{className:`vl-ai-search-content__mobile-controls`,children:[F(Xr,{contentType:e,setContentType:r}),I(`div`,{className:`vl-ai-search-content__mobile-actions`,children:[t?I(`button`,{type:`button`,className:`vl-ai-search-content__filter-trigger`,onClick:n,children:[F(`span`,{children:`Suodata`}),F(Yn,{})]}):null,F(Zr,{})]})]})}function H(e){return`vl-ai-search-filter-${e}`}function ei(e){let t=e?.min?.trim(),n=e?.max?.trim(),r={};return t&&(r.min=t),n&&(r.max=n),Object.keys(r).length>0?r:void 0}var ti={"product-groups":`nested-discrete`,"content-type":`drilldown`};function ni(e){return e.type===`range`||e.min_param||e.max_param?{...e,type:`range`,min_param:e.min_param??``,max_param:e.max_param??``,unit:e.unit??null}:e.type===`toggle`?{...e,type:`toggle`,selection_operator:e.selection_operator??`eq`,options:e.options??[]}:{...e,type:ti[e.slug]??`discrete`,selection_operator:e.selection_operator??`containsAny`,options:e.options??[]}}function ri(e){return e.map(ni)}function ii(){if(typeof document>`u`)return[];let e=document.querySelector(`[data-vl-ai-search-page="1"]`)?.dataset.vlAiSearchFilters;if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.map(ni):[]}catch{return[]}}function ai(){let e=k(),t=f({queryKey:[`search-filter-groups`,e],queryFn:({signal:t})=>yt(it(e),{signal:t})}),n=t.error instanceof Error?t.error:null,r=ii();return{groups:t.data?.data.filter_groups?ri(t.data.data.filter_groups):r,placeholderGroups:r,contentType:e.contentType,selectedFilters:e.selectedFilters,selectedRanges:e.selectedRanges,isFetching:t.isFetching,isError:t.isError,error:n}}function oi(){let e=k();function t(t,n){O(Ye({groupSlug:t,optionSlug:n,state:e}),{history:`push`})}function n(t,n){O(Xe({groupSlug:t,range:ei(n)??null,state:e}),{history:`push`})}function r(){O(Ze(e),{history:`push`})}return{toggleFilter:t,setRangeFilter:n,clearFilters:r}}function si(){let e=ai(),t=oi();return{state:e,actions:t,...e,...t}}var ci=[{groupSlug:`preparation-time`,type:`range`},{groupSlug:`main-categories`,panelMaxWidth:410,type:`discrete`},{groupSlug:`ingredients`,type:`discrete`},{groupSlug:`difficulty-level`,type:`discrete`},{groupSlug:`diets`,type:`discrete`},{groupSlug:`baking`,type:`discrete`},{groupSlug:`dish-types`,type:`discrete`},{groupSlug:`cooking-tools`,type:`discrete`},{groupSlug:`themes`,type:`discrete`},{groupSlug:`cuisine`,type:`discrete`},{groupSlug:`author`,type:`discrete`}],li=[{groupSlug:`product-groups`,panelMaxWidth:710,type:`nested-discrete`},{groupSlug:`brands`,panelMaxWidth:710,type:`discrete`},{groupSlug:`product-features`,panelMaxWidth:710,type:`discrete`},{groupSlug:`allergens-contains`,panelMaxWidth:710,type:`discrete`},{groupSlug:`allergens-excludes`,panelMaxWidth:710,type:`discrete`},{groupSlug:`packaging`,type:`discrete`}],ui=[{groupSlug:`content-type`,panelMaxWidth:410,type:`drilldown`}],di=[{groupSlug:`main-categories`,isOpenByDefault:!0,type:`discrete`},{groupSlug:`preparation-time`,isOpenByDefault:!0,type:`range`},{groupSlug:`difficulty-level`,isOpenByDefault:!0,type:`discrete`},{groupSlug:`diets`,isOpenByDefault:!0,type:`discrete`},{groupSlug:`dish-types`,isOpenByDefault:!0,type:`discrete`},{groupSlug:`ingredients`,isOpenByDefault:!0,type:`discrete`},{groupSlug:`cooking-tools`,isOpenByDefault:!0,type:`discrete`},{groupSlug:`baking`,isOpenByDefault:!1,type:`discrete`},{groupSlug:`themes`,isOpenByDefault:!1,type:`discrete`},{groupSlug:`cuisine`,isOpenByDefault:!1,type:`discrete`},{groupSlug:`author`,isOpenByDefault:!1,type:`discrete`}],fi=[{groupSlug:`product-groups`,isOpenByDefault:!0,type:`nested-discrete`},{groupSlug:`brands`,isOpenByDefault:!0,type:`discrete`},{groupSlug:`product-features`,isOpenByDefault:!0,type:`discrete`},{groupSlug:`allergens-contains`,isOpenByDefault:!0,type:`discrete`},{groupSlug:`allergens-excludes`,isOpenByDefault:!0,type:`discrete`},{groupSlug:`packaging`,isOpenByDefault:!1,type:`discrete`},{groupSlug:`new-products`,isOpenByDefault:!1,type:`discrete`}],pi=[{groupSlug:`content-type`,isOpenByDefault:!0,type:`drilldown`}],mi=[{label:`20 min`,value:`20`},{label:`40 min`,value:`40`},{label:`1 h`,value:`60`},{label:`2 h`,value:`120`}];function hi(e){return e.flatMap(e=>[e,...e.options?hi(e.options):[]])}function gi(e,t){if(e.type===`range`)return null;let n=hi(e.options),r=t.flatMap(e=>{let t=n.find(t=>t.slug===e);return t?[t.label]:[]});return r.length>0?r.join(`, `):null}function _i(e){let t=e?.max?.trim();return t?mi.find(e=>e.value===t)?.label??`${t} min`:null}function U(e,t){if(e===`preparation-time`)return _i(t.selectedRanges[e]);let n=t.groups.find(t=>t.slug===e);return n?gi(n,t.selectedFilters[e]??[]):null}function vi({selectedFilters:e,selectedRanges:t}){return Object.values(e).some(e=>e.some(Boolean))||Object.values(t).some(e=>!!(e.min||e.max))}function yi({filters:e,totalCount:t}){return{event:`search`,event_action:`filter`,recipe_diet:U(`diets`,e),recipe_total_time:U(`preparation-time`,e),recipe_meal_type:U(`main-categories`,e),recipe_baking_type:U(`baking`,e),recipe_difficulty_level:U(`difficulty-level`,e),recipe_main_ingredient:U(`ingredients`,e),recipe_preparation_method:U(`cooking-tools`,e),search_result_count:t}}function bi({filters:e,totalCount:t}){return JSON.stringify({contentType:e.contentType,selectedFilters:e.selectedFilters,selectedRanges:e.selectedRanges,totalCount:t})}function xi({filters:e,totalCount:n}){let r=(0,t.useRef)(null);(0,t.useEffect)(()=>
2{if(e.isFetching||e.contentType!==`recipes`)return;let t=bi({filters:e,totalCount:n});(vi({selectedFilters:e.selectedFilters,selectedRanges:e.selectedRanges})||r.current!==null)&&r.current!==t&&(r.current=t,window.dataLayer=window.dataLayer||[],window.dataLayer.push(yi({filters:e,totalCount:n})))},[e,n])}var Si=(0,t.createContext)(null);function Ci({children:e,totalCount:t=0}){let n=si();return xi({filters:n,totalCount:t}),F(Si.Provider,{value:n,children:e})}function wi(){let e=(0,t.useContext)(Si);if(!e)throw Error(`useFilterLogic must be used within FilterLogicProvider`);return e}var Ti=`.vl-dropdown-frame`,Ei=1;function Di({shouldLock:e,watchValue:n}){let[r,i]=(0,t.useState)(!1),[a,o]=(0,t.useState)(!1),[s,c]=(0,t.useState)(!1),l=(0,t.useRef)(null),u=(0,t.useRef)(null),[d,f]=(0,t.useState)(0),[p,m]=(0,t.useState)(0),h=(0,t.useRef)({pointerId:null,startX:0,startScrollOffset:0,hasDragged:!1}),g={transform:d>0?`translateX(${-d}px)`:void 0};(0,t.useEffect)(()=>{let e=l.current,t=u.current;if(!e)return;let n=e;function r(){let e=t?.scrollWidth??0,r=n.clientWidth,i=Math.max(e-r,0);m(i),f(e=>Math.min(e,i))}function a(){i(d>4),o(p-d>4)}r(),a();let s=new ResizeObserver(()=>{r()});return s.observe(e),t&&s.observe(t),window.addEventListener(`resize`,r),()=>{s.disconnect(),window.removeEventListener(`resize`,r)}},[p,d,n]);function _(e){return Math.min(Math.max(e,0),p)}function v(t){let n=l.current;if(!n||e)return;let r=Math.max(n.clientWidth*.7,220);f(e=>_(e+(t===`left`?-r:r)))}function y(t){e||t.pointerType!==`mouse`||t.button!==0||!l.current||p<=0||(h.current={pointerId:t.pointerId,startX:t.clientX,startScrollOffset:d,hasDragged:!1})}function b(t){let n=l.current,r=h.current;if(e||t.pointerType!==`mouse`||!n||r.pointerId!==t.pointerId)return;let i=t.clientX-r.startX;!r.hasDragged&&Math.abs(i)<4||(r.hasDragged||n.setPointerCapture(t.pointerId),r.hasDragged=!0,c(!0),f(_(r.startScrollOffset-i)))}function ee(t){if(e||p<=0)return;let n=Math.abs(t.deltaX)>Math.abs(t.deltaY)?t.deltaX:t.deltaY;n!==0&&(t.preventDefault(),f(e=>_(e+n)))}function x(e){let t=l.current,n=h.current.hasDragged;t?.hasPointerCapture(e)&&t.releasePointerCapture(e),h.current={pointerId:null,startX:0,startScrollOffset:0,hasDragged:n},c(!1)}function S(e){h.current.pointerId===e.pointerId&&x(e.pointerId)}function C(e){h.current.pointerId===e.pointerId&&x(e.pointerId)}function w(e){if(!h.current.hasDragged){let t=l.current,n=e.target?.closest(Ti);if(!(n instanceof HTMLElement)||!t)return;let r=t.getBoundingClientRect(),i=n.getBoundingClientRect(),a=r.left-i.left,o=i.right-r.right;if(a<=Ei&&o<=Ei)return;e.preventDefault(),e.stopPropagation(),f(e=>_(e+(a>0?-a:o)));return}e.preventDefault(),e.stopPropagation(),h.current.hasDragged=!1}return(0,t.useEffect)(()=>{let t=h.current.pointerId;e&&t!==null&&x(t)},[e]),{canScrollLeft:r,canScrollRight:a,filterGroupsRef:u,handleClickCapture:w,handlePointerCancel:C,handlePointerDown:y,handlePointerMove:b,handlePointerUp:S,handleWheel:ee,isDragging:s,scrollContainerRef:l,scrollFilters:v,scrollStyle:g}}function Oi(e=[]){return e.flatMap(e=>[e.label,...Oi(e.options)])}function ki({groupSlug:e,options:t,selectedFilters:n,depth:r=0}){return t.flatMap(t=>[{data:{groupSlug:e,optionSlug:t.slug},id:t.slug,isSelected:n[e]?.includes(t.slug)??!1,label:`${r>0?`- `:``}${t.label}`,count:t.count??0,icon:t.icon},...t.options?ki({groupSlug:e,options:t.options,selectedFilters:n,depth:r+1}):[]])}function Ai({group:e,selectedFilters:t}){return ki({groupSlug:e.slug,options:e.options,selectedFilters:t})}function ji({option:e,selectedOptionIds:t}){return e.options&&e.options.length>0?!0:e.count!==0||t.includes(e.slug)}function Mi({groupSlug:e,options:t,selectedOptionIds:n}){return t.filter(e=>ji({option:e,selectedOptionIds:n})).map(t=>({data:{groupSlug:e,optionSlug:t.slug},id:t.slug,label:t.label,count:t.count,icon:t.icon,options:t.options?Mi({groupSlug:e,options:t.options,selectedOptionIds:n}):void 0}))}function Ni({group:e,selectedOptionIds:t}){return Mi({groupSlug:e.slug,options:e.options,selectedOptionIds:t})}function Pi({option:e,selectedOptionIds:t}){return e.options&&e.options.length>0?!0:e.count!==0||t.includes(e.slug)}function Fi({groupSlug:e,options:t,selectedOptionIds:n}){return t.filter(e=>Pi({option:e,selectedOptionIds:n})).map(t=>({data:{groupSlug:e,optionSlug:t.slug},id:t.slug,label:t.label,count:t.count,icon:t.icon,options:t.options?Fi({groupSlug:e,options:t.options,selectedOptionIds:n}):void 0}))}function Ii({group:e,selectedOptionIds:t}){return Fi({groupSlug:e.slug,options:e.options,selectedOptionIds:t})}function Li(e=[]){return e.flatMap(e=>[e.slug,...Li(e.options)])}function Ri({option:e,selectedOptionIds:t}){let n=Li(e.options);return t.filter(e=>n.includes(e)).length}function zi(e){return e.count!==null&&e.count!==void 0?`${e.label} (${e.count})`:e.label}function Bi({group:e,selectedFilters:t}
2){return t[e.slug]?.length??0}function W(e){return{label:e.label,items:Oi(e.options)}}function Vi(e){return e.total_count!==null&&e.total_count!==void 0?`${e.label} (${e.total_count})`:e.label}function Hi({direction:e}){return F(`svg`,{width:`9`,height:`9`,viewBox:`0 0 9 9`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`,focusable:`false`,children:F(`path`,{d:`M0.5625 4.3125L8.4375 4.3125M4.6875 8.0625L8.4375 4.3125L4.6875 0.5625`,stroke:`currentColor`,strokeWidth:`1.125`,strokeLinecap:`round`,strokeLinejoin:`round`,transform:`rotate(${e===`left`?`180 4.5 4.5`:`0 4.5 4.5`})`})})}function Ui({filters:e,group:n,placeholderGroup:r,openGroupSlug:i,panelMaxWidth:a,setOpenGroupSlug:o}){function s(){o(i===n.slug?null:n.slug)}if(n.type===`drilldown`){let r=e.selectedFilters[n.slug]??[],s=n.options.filter(e=>!e.options?.length),c=n.options.filter(e=>!!e.options?.length);return I(t.Fragment,{children:[s.map(t=>F(Vr,{count:t.count,label:t.label,isSelected:r.includes(t.slug),onToggle:()=>e.toggleFilter(n.slug,t.slug)},t.slug)),c.map(t=>{let s=`${n.slug}:${t.slug}`,c=Ri({option:t,selectedOptionIds:r});return F(R,{id:H(s),label:t.label,prefill:zi(t),isOpen:i===s,selectedCount:c,panelMaxWidth:a,onClose:()=>o(null),onToggle:()=>o(i===s?null:s),children:F(vr,{label:t.label,options:Fi({groupSlug:n.slug,options:t.options??[],selectedOptionIds:r}),selectedOptionIds:r,onOptionToggle:t=>{e.toggleFilter(t.data.groupSlug,t.data.optionSlug)}})},t.slug)})]})}if(n.type===`nested-discrete`){let t=r?.type===`nested-discrete`?r:n,c=Bi({group:n,selectedFilters:e.selectedFilters});return F(R,{id:H(n.slug),label:n.label,isOpen:i===n.slug,selectedCount:c,panelMaxWidth:a,onClose:()=>o(null),onToggle:s,children:F(Br,{label:n.label,options:Ni({group:n,selectedOptionIds:e.selectedFilters[n.slug]??[]}),selectedOptionIds:e.selectedFilters[n.slug]??[],loadingPlaceholder:W(t),isLoading:e.isFetching,onOptionToggle:t=>{e.toggleFilter(t.data.groupSlug,t.data.optionSlug)}})})}if(n.type===`discrete`){let t=r?.type===`discrete`?r:n,c=Ai({group:n,selectedFilters:e.selectedFilters}),l=Bi({group:n,selectedFilters:e.selectedFilters});return F(R,{id:H(n.slug),label:n.label,isOpen:i===n.slug,selectedCount:l,panelMaxWidth:a,onClose:()=>o(null),onToggle:s,children:F(Er,{label:n.label,options:c,loadingPlaceholder:W(t),isLoading:e.isFetching,onOptionToggle:t=>{e.toggleFilter(t.data.groupSlug,t.data.optionSlug)}})})}if(n.type===`range`){let t=e.selectedRanges[n.slug]??{};return F(R,{id:H(n.slug),isOpen:i===n.slug,selectedCount:+!!t.max,label:n.label,panelMaxWidth:a,onClose:()=>o(null),onToggle:s,children:F(`div`,{className:`vl-ai-search__range-filter vl-ai-search__range-filter--slider`,children:F(Un,{name:n.slug,options:mi,selectedValue:t.max??``,onChange:t=>{e.setRangeFilter(n.slug,t?{max:t}:{})}})})})}return null}function Wi({filters:e,openGroupSlug:n,setOpenGroupSlug:r}){let i=e.contentType===`products`?li:e.contentType===`content`?ui:ci;return F(t.Fragment,{children:i.map(t=>{let i=e.groups.find(e=>e.slug===t.groupSlug&&e.type===t.type),a=e.placeholderGroups.find(e=>e.slug===t.groupSlug&&e.type===t.type);return i?F(Ui,{filters:e,group:i,placeholderGroup:a,openGroupSlug:n,panelMaxWidth:t.panelMaxWidth,setOpenGroupSlug:r},i.slug):null})})}function Gi(){let e=wi(),[n,r]=(0,t.useState)(null),i=n!==null,{canScrollLeft:a,canScrollRight:o,filterGroupsRef:s,handleClickCapture:c,handlePointerCancel:l,handlePointerDown:u,handlePointerMove:d,handlePointerUp:f,handleWheel:p,isDragging:m,scrollContainerRef:h,scrollFilters:g,scrollStyle:_}=Di({shouldLock:i,watchValue:`${e.contentType}:${e.groups.length}`});return F(`section`,{className:`vl-ai-search__filters`,"aria-label":`Search filters`,children:I(`div`,{className:`vl-ai-search__filter-slider`,children:[a?F(`button`,{type:`button`,className:`vl-ai-search__filter-arrow vl-ai-search__filter-arrow--left`,onClick:()=>g(`left`),"aria-label":`Vieritä suodattimia vasemmalle`,children:F(Hi,{direction:`left`})}):null,F(`div`,{ref:h,"data-dropdown-boundary":`true`,className:`vl-ai-search__filter-scroll${m?` is-dragging`:``}${i?` is-scroll-locked`:``}`,onWheel:p,onPointerDown:u,onPointerMove:d,onPointerUp:f,onPointerCancel:l,onClickCapture:c,children:F(`div`,{ref:s,className:`vl-ai-search__filter-groups`,style:_,children:F(Wi,{filters:e,openGroupSlug:n,setOpenGroupSlug:r})})}),o?F(`button`,{type:`button`,className:`vl-ai-search__filter-arrow vl-ai-search__filter-arrow--right`,onClick:()=>g(`right`),"aria-label":`Vieritä suodattimia oikealle`,children:F(Hi,{direction:`right`})}):null]})})}function Ki(e,t){let n=e.groups.find(e=>e.slug===t.groupSlug&&e.type===t.type);return n?{group:n,placeholderGroup:e.placeholderGroups.find(e=>e.slug===t.groupSlug&&e.type===t.type)}:null}function qi(e,t,n,r){return t.isOpenByDefault?!n.includes(e):r.includes(e)}function Ji(e,t){return t.type===`range`?!!e.selectedRanges[t.slug]?.max:!!e.selectedFilters[t.slug]?.length}function Yi(e,t){return t.type===`range`?+!!e.selectedRanges[t.slug]?.max:Bi({group:t,selectedFilters:e.selectedFilters})}function Xi({collapsedDefaultSlugs:e,expandedSlugs:t,filters:n,slot:r,onToggle:i}){let a=Ki(n,r);if(!a)return null;let{group:o,placeholderGroup:s}=a,c=qi(o.slug,r,e,t),l=Ji(n,o),u=Yi(n,o),d;switch(o.type){case`drilldown`:d=F(vr,{label:o.label,options:Ii({group:o,selectedOptionIds:n.selectedFilters[o.slug]??[]}),selectedOptionIds:n.selectedFilters[o.slug]??[],onOptionToggle:e=>{n.toggleFilter(e.data.groupSlug,e.data.optionSlug)}});break;case`range`:d=F(Un,{name:o.slug,options:mi,selectedValue:n.selectedRanges[o.slug]?.max??``,onChange:e=>{n.setRangeFilter(o.slug,e?{max:e}:{})}});break;case`nested-discrete`:d=F(Br,{label:o.label,options:Ni({group:o,selectedOptionIds:n.selectedFilters[o.slug]??[]}),selectedOptionIds:n.selectedFilters[o.slug]??[],loadingPlaceholder:W(s?.type===`nested-discrete`?s:o),isLoading:n.isFetching,onOptionToggle:e=>{n.toggleFilter(e.data.groupSlug,e.data.optionSlug)},isSliderEnabled:!0,variant:`natural-white`});break;default:d=F(Er,{label:o.label,options:Ai({group:o,selectedFilters:n.selectedFilters}),loadingPlaceholder:W(s?.type===`discrete`?s:o),isLoading:n.isFetching,onOptionToggle:e=>{n.toggleFilter(e.data.groupSlug,e.data.optionSlug)},isSliderEnabled:!0,variant:`natural-white`})}return F(Gn,{id:H(o.slug),isOpen:c,isSelected:l,selectedCount:u,label:Vi(o),onToggle:i,children:d})}function Zi(e){return Object.values(e.selectedFilters).reduce((e,t)=>
2e+t.length,0)+Object.values(e.selectedRanges).filter(e=>!!(e.min||e.max)).length}function Qi({contentType:e,count:t}){switch(e){case`recipes`:return`${t} reseptiä`;case`products`:return`${t} tuotetta`;case`content`:return`${t} sisältöä`;default:return`${t} tulosta`}}function $i(){return F(`svg`,{width:`12`,height:`12`,viewBox:`0 0 12 12`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`,focusable:`false`,children:F(`path`,{d:`M1.5 1.5L10.5 10.5M10.5 1.5L1.5 10.5`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`})})}function ea({isOpen:e,onClose:n,contentType:r,totalCount:i}){let a=wi(),o=a.contentType===`products`?fi:a.contentType===`content`?pi:di,[s,c]=(0,t.useState)([]),[l,u]=(0,t.useState)([]),d=Zi(a);function f(e){if(e.isOpenByDefault){c(t=>t.includes(e.groupSlug)?t.filter(t=>t!==e.groupSlug):[...t,e.groupSlug]);return}u(t=>t.includes(e.groupSlug)?t.filter(t=>t!==e.groupSlug):[...t,e.groupSlug])}return(0,t.useEffect)(()=>{if(!e)return;let t=document.body.style.overflow;return document.body.style.overflow=`hidden`,()=>{document.body.style.overflow=t}},[e]),(0,t.useEffect)(()=>{c([]),u([])},[a.contentType]),e?I(`section`,{className:`vl-ai-search__mobile-filters-modal`,"aria-label":`Search filters`,role:`dialog`,"aria-modal":`true`,children:[I(`div`,{className:`vl-ai-search__mobile-filters-modal__header`,children:[F(V,{className:`vl-ai-search__mobile-filters-modal__header__close`,onClick:n,"aria-label":`Sulje suodattimet`,variant:`secondary`,size:`sm`,children:F($i,{})}),I(`div`,{className:`vl-ai-search__mobile-filters-modal__header__content`,children:[I(`div`,{className:`vl-ai-search__mobile-filters-modal__header__title`,children:[I(`h2`,{children:[F(Yn,{}),` Suodata (`,d,`)`]}),F(`p`,{children:`Rajaa hakutuloksia`})]}),F(`div`,{className:`vl-ai-search__mobile-filters-modal__header__actions`,children:F(`button`,{type:`button`,className:`vl-ai-search__mobile-filters-modal__header__clear`,onClick:a.clearFilters,children:`Tyhjennä`})})]})]}),F(`div`,{className:`vl-ai-search__mobile-filters-modal__body`,children:o.map(e=>F(Xi,{collapsedDefaultSlugs:s,expandedSlugs:l,filters:a,slot:e,onToggle:()=>f(e)},e.groupSlug))}),F(`div`,{className:`vl-ai-search__mobile-filters-modal__footer`,children:F(`button`,{type:`button`,className:`vl-ai-search__mobile-filters-modal__submit`,onClick:n,children:Qi({contentType:r,count:i})})})]}):null}var ta=[`recipes`,`products`,`content`];function na(e){return ta.includes(e)}function ra({contentType:e,totalCount:t,isMobile:n,isOpen:r,onClose:i}){return na(e)?F(Ci,{totalCount:t,children:n?F(ea,{isOpen:r,onClose:i,contentType:e,totalCount:t}):F(Gi,{})}):null}var G=class extends t.Component{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,t){this.props.onError?.(e,t)}resetBoundary=()=>{this.setState({hasError:!1,error:null})};render(){return this.state.hasError&&this.state.error?F(this.props.FallbackComponent,{error:this.state.error,resetErrorBoundary:this.resetBoundary}):this.props.children}},ia=({error:e})=>(console.error(`AdBanner failed to render:`,e),null),aa=(0,t.forwardRef)(({url:e,openInNewTab:t=!1,children:n},r)=>e?F(`a`,{ref:r,className:`vl-c-ad-banner__link`,href:e,...t?{target:`_blank`,rel:`noopener noreferrer`}:{},children:n}):F(`div`,{ref:r,className:`vl-c-ad-banner__link`,children:n})),oa=782,sa=`(min-width: ${oa}px)`,ca=`(max-width: 781px)`,la=`200px 0px`,ua=`video/mp4`;function da(e,t){return Math.max(document.documentElement.clientWidth||0,window.innerWidth||0)<oa?t:e}function fa({width:e,height:t}){return e>0&&t>0?{width:e,height:t}:{}}function pa(e){let{width:t,height:n}=fa(e);return t&&n?{aspectRatio:`${t} / ${n}`}:{}}function ma({desktopVideo:e,mobileVideo:r}){let i=(0,t.useRef)(null),a=(0,t.useRef)(null),[o]=(0,t.useState)(()=>da(e,r)),[s,c]=(0,t.useState)(!1);return(0,t.useEffect)(()=>{let e=i.current;if(!e||s)return;let t=new IntersectionObserver(e=>{e.some(e=>e.isIntersecting)&&c(!0)},{rootMargin:la});return t.observe(e),()=>{t.disconnect()}},[s]),(0,t.useEffect)(()=>{s&&a.current?.load()},[s]),F(`div`,{ref:i,className:`vl-c-ad-banner__video-frame`,style:pa(o),children:F(`video`,{ref:a,className:`vl-c-ad-banner__video`,"aria-label":(0,n.decodeEntities)(e.title||r.title),autoPlay:!0,loop:!0,muted:!0,playsInl
2ine:!0,preload:`none`,...fa(o),children:s?I(t.Fragment,{children:[F(`source`,{src:e.url,media:sa,type:ua}),F(`source`,{src:r.url,media:ca,type:ua})]}):null})})}var ha=`(min-width: 782px)`;function ga({mediaKind:e,desktopImage:r,mobileImage:i,desktopVideo:a,mobileVideo:o}){return e===`image`&&r&&i?I(`picture`,{className:`vl-c-ad-banner__picture`,children:[F(`source`,{media:ha,srcSet:r.url}),F(`img`,{className:`vl-c-ad-banner__image`,src:i.url,width:i.width,height:i.height,alt:(0,n.decodeEntities)(r.title||i.title),loading:`lazy`})]}):e===`video`&&a&&o?F(ma,{desktopVideo:a,mobileVideo:o}):F(t.Fragment,{})}var _a=(0,t.forwardRef)(({item:e,className:t=``,style:r={}},i)=>F(G,{FallbackComponent:ia,children:F(`article`,{className:v(`vl-c-ad-banner`,t),style:r,"aria-label":(0,n.decodeEntities)(e.title),children:F(aa,{ref:i,url:e.linkUrl,openInNewTab:e.openInNewTab,children:F(ga,{mediaKind:e.mediaKind,desktopImage:e.desktopImage,mobileImage:e.mobileImage,desktopVideo:e.desktopVideo,mobileVideo:e.mobileVideo})})})})),va=({error:e})=>(console.error(`AdCard failed to render:`,e),null),ya=(0,t.forwardRef)(({item:e,className:r=``,style:i={}},a)=>F(G,{FallbackComponent:va,children:F(`article`,{ref:a,className:v(`vl-c-ad-card`,r),style:i,"aria-label":(0,n.decodeEntities)(e.title),children:F(t.RawHTML,{className:`vl-c-ad-card__content`,children:e.html})})})),ba={all:null,recipes:`recipe-search-card`,products:`product-search-card`,content:`article-search-card`},xa={all:null,recipes:`recipe-search-banner`,products:`product-search-banner`,content:`article-search-banner`},Sa={all:``,recipes:`Reseptihaku mainospaikkalistaus`,products:`Tuotehaku mainospaikkalistaus`,content:`Artikkelihaku mainospaikkalistaus`},Ca=`vl-ad:`,wa=`vl-ad-banner:`,Ta=`search-page-ad`,Ea=`search-page-ad-banner`;function Da(e){if(!e.includes(`&`))return e;let t=document.createElement(`textarea`);return t.innerHTML=e,t.value}function Oa(e){return e===void 0||e===``?null:e}function ka(e){return{item_type:Oa(e.adType),item_name:Da(e.title),item_id:e.postId,item_brand:Oa(e.brand),creative_name:Oa(e.creativeName)}}function Aa(e){let t=new pn;t.append({ecommerce:null}),t.append(e),t.run()}function ja(e){Aa({event:`view_promotion`,ecommerce:{promotion_name:e.promotionName,items:[ka(e)]}})}function Ma(e){Aa({event:`select_promotion`,original_page_location:window.location.href,original_page_title:document.title,ecommerce:{promotion_name:e.promotionName,items:[ka(e)]}})}function Na(e){let n=(0,t.useRef)(new Set);(0,t.useEffect)(()=>{e.forEach(({key:e,ad:t})=>{let r=`${e}:${t.promotionName}`;n.current.has(r)||(n.current.add(r),ja(t))})},[e])}function K(e){return typeof e==`string`?e:typeof e==`number`?String(e):``}function Pa(e){let t=Number(e);return Number.isFinite(t)?t:0}function Fa(e){return e===!0||e===1||e===`1`}function q(e){if(!e||typeof e!=`object`)return;let t=K(e.url);if(t!==``)return{url:t,title:K(e.title),width:Pa(e.width),height:Pa(e.height)}}function Ia(e){return e===`video`?`video`:`image`}function La(e,t){let n=K(e.acf?.brand),r=K(e.acf?.creative_name);return{adType:K(e.acf?.type),title:K(e.title?.rendered),postId:e.id,promotionName:t,...r===``?{}:{creativeName:r},...n===``?{}:{brand:n}}}function Ra(e){return K(e.content?.rendered).trim()!==``}function za(e,t){return{html:K(e.content?.rendered),...La(e,t)}}function Ba(e,t){if(!Array.isArray(e))return null;let n=e.find(Ra);return n?za(n,t):null}function Va(e,t){let n=K(e.acf?.target_url).trim(),r=q(e.acf?.desktop_image),i=q(e.acf?.mobile_image),a=q(e.acf?.desktop_video),o=q(e.acf?.mobile_video);return{mediaKind:Ia(e.acf?.image_or_video),...n===``?{}:{linkUrl:n},...n===``?{}:{openInNewTab:Fa(e.acf?.open_in_new_tab)},...r?{desktopImage:r}:{},...i?{mobileImage:i}:{},...a?{desktopVideo:a}:{},...o?{mobileVideo:o}:{},...La(e,t)}}function Ha(e){return e.mediaKind===`video`?e.desktopVideo!==void 0&&e.mobileVideo!==void 0:e.desktopImage!==void 0&&e.mobileImage!==void 0}function Ua(e,t){return Array.isArray(e)?e.map(e=>Va(e,t)).find(Ha)??null:null}function Wa(e){return ba[e]??null}function Ga(e){return xa[e]??null}function Ka(e){return Sa[e]??``}function qa(e,t){return f({queryKey:[e,t],queryFn:({signal:e})=>_t({placementSlug:t??``},{signal:e}),enabled:t!==null,staleTime:1/0,gcTime:1/0,retry:!1}).data}function Ja(e){return{ad:Ba(qa(Ta,Wa(e)),Ka(e))}}function Ya(e){return{banner:Ua(qa(Ea,Ga(e)),Ka(e))}}function J(e){return new Proxy({},{get:(t,n)=>{let r=window.valioApp?.events?.[e];if(!r)return console.error(`[Valio Data Sync] ${e} not initialized`),()=>{if(console.warn(`No-op: ${e}.${n}`),typeof n==`string`&&n.startsWith(`on`))return()=>{}};let i=r[n];return typeof i==`function`?i.bind(r):i}})}J(`ListEvent`);var Xa=J(`ModalEvent`);J(`RecipeEvent`);var Y=J(`ToastEvent`);function Za(e){return(...t)=>{let n=window.valioApp?.hooks?.[e];if(typeof n!=`function`)throw Error(`[Valio Data Sync] ${e} not initialized`);return n(...t)}}var Qa=Za(`useFolder`),$a={SAVE_RECIPE_TO_FOLDER:`save-recipe-to-folder`,CREATE_FOL
2DER:`create-folder`,FOLDER_ACTIONS:`folder-actions`,EDIT_FOLDER:`edit-folder`,MOVE_RECIPE_TO_FOLDER:`move-recipe-to-folder`,DELETE_FOLDER_PROMPT:`delete-folder-prompt`,REMOVE_RECIPE_PROMPT:`remove-recipe-prompt`,CREATE_WEEKLY_MENU_FOLDER:`create-weekly-menu-folder`,SAVE_RECIPE_TO_WEEKLY_MENU_CHOOSE_FOLDER:`save-recipe-to-weekly-menu-choose-folder`,SAVE_RECIPE_TO_WEEKLY_MENU_ADD_FOLDER:`save-recipe-to-weekly-menu-add-folder`,SAVE_RECIPE_TO_WEEKLY_MENU_CONFIRM:`save-recipe-to-weekly-menu-confirm`,EDIT_WEEKLY_MENU_FOLDER:`edit-weekly-menu-folder`,DELETE_WEEKLY_MENU_FOLDER:`delete-weekly-menu-folder`,EDIT_WEEKLY_MENU_RECIPE_FILTERS:`edit-weekly-menu-recipe-filters`,WEEKLY_MENU_FOLDER_ACTIONS:`weekly-menu-folder-actions`,CREATE_SHOPPING_LIST_FOLDER:`create-shopping-list-folder`,SAVE_PRODUCT_TO_SHOPPING_LIST:`save-product-to-shopping-list`,SAVE_PRODUCT_TO_SHOPPING_LIST_CHOOSE_FOLDER:`save-product-to-shopping-list-choose-folder`,SAVE_RECIPE_TO_SHOPPING_LIST_CHOOSE_FOLDER:`save-recipe-to-shopping-list-choose-folder`,ADD_RECIPE_WITH_PORTIONS_TO_SHOPPING_LIST:`add-recipe-with-portions-to-shopping-list`,ADD_WEEKLY_MENU_TO_SHOPPING_LIST:`add-weekly-menu-to-shopping-list`,REMOVE_RECIPE_FROM_SHOPPING_LIST_PROMPT:`remove-recipe-from-shopping-list-prompt`,SHOPPING_LIST_FOLDER_ACTIONS:`shopping-list-folder-actions`,ADD_CONTENT_TO_SHOPPING_LIST:`add-content-to-shopping-list`,RECIPE_MARK_AS_DONE:`recipe-mark-as-done`,SOCIAL_SHARE:`social-share`};function eo(e){return(...t)=>{let n=window.valioApp?.utils?.[e];if(!n){console.error(`[Valio Data Sync] ${e} not initialized`);return}return n(...t)}}var to=eo(`getListItemFirebaseId`),no=eo(`checkAuthAndMaybeRedirect`),ro=(0,t.forwardRef)(({url:e,isPublished:n,isLoading:r,mode:i,isFavorite:a,analyticsJSON:o,children:s},c)=>!e||!n?F(t.Fragment,{children:s}):F(`a`,{ref:c,className:`vl-c-recipe-card-link`,href:e,"data-loaded":!r,"data-favorited":a,"data-mode":i,"data-track-item":o,onKeyDown:t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),window.location.href=e)},children:s})),X=new URL(`assets/recipe-image-fallback.jpg`,__evermadeViteAssetBase).href;function io({src:e,alt:t,isPublished:n}){return n?F(`img`,{className:`vl-c-recipe-card__image`,src:e||X,alt:t}):I(`div`,{className:`vl-c-recipe-card__image-wrapper`,children:[F(`img`,{className:`vl-c-recipe-card__image vl-c-recipe-card__image--unavailable`,src:X,alt:t}),F(`span`,{className:`vl-c-recipe-card__image__unavailable-text`,children:`Resepti ei ole saatavilla`})]})}function ao({review:e}){return e?I(`div`,{className:`vl-c-recipe-card__review`,children:[I(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`15`,viewBox:`0 0 16 15`,f
2ill:`none`,children:[F(`path`,{d:`M8.00024 0.855469L9.91229 5.45257L14.8752 5.85045L11.094 9.08949L12.2492 13.9325L8.00024 11.3372L3.75126 13.9325L4.90649 9.08949L1.12524 5.85045L6.0882 5.45257L8.00024 0.855469Z`,fill:`#002F6D`}),F(`path`,{d:`M8.00024 0.855469L9.91229 5.45257L14.8752 5.85045L11.094 9.08949L12.2492 13.9325L8.00024 11.3372L3.75126 13.9325L4.90649 9.08949L1.12524 5.85045L6.0882 5.45257L8.00024 0.855469Z`,stroke:`#002F6D`,strokeWidth:`1.5`,strokeLinejoin:`round`})]}),e.toFixed(1)]}):null}function oo({duration:e}){return e?I(`div`,{className:`vl-c-recipe-card__duration`,children:[F(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`20`,height:`20`,viewBox:`0 0 20 20`,fill:`none`,children:F(`path`,{d:`M1 9.98047H1.75H1ZM10 18.9805V19.7305V18.9805ZM19 9.98047H18.25H19ZM10 0.980469V0.230469V0.980469ZM10.75 5.98047C10.75 5.56626 10.4142 5.23047 10 5.23047C9.58579 5.23047 9.25 5.56626 9.25 5.98047H10H10.75ZM10 9.67278H9.25C9.25 9.90563 9.35815 10.1253 9.54272 10.2672L10 9.67278ZM12.5427 12.5749C12.871 12.8275 13.3419 12.7661 13.5945 12.4378C13.847 12.1094 13.7856 11.6386 13.4573 11.386L13 11.9805L12.5427 12.5749ZM1 9.98047H0.25C0.25 11.2609 0.502191 12.5287 0.992175 13.7116L1.68508 13.4246L2.37799 13.1376C1.96339 12.1367 1.75 11.0639 1.75 9.98047H1ZM1.68508 13.4246L0.992175 13.7116C1.48216 14.8946 2.20034 15.9694 3.10571 16.8748L3.63604 16.3444L4.16637 15.8141C3.40029 15.048 2.7926 14.1385 2.37799 13.1376L1.68508 13.4246ZM3.63604 16.3444L3.10571 16.8748C4.01108 17.7801 5.08591 18.4983 6.26884 18.9883L6.55585 18.2954L6.84286 17.6025C5.84193 17.1879 4.93245 16.5802 4.16637 15.8141L3.63604 16.3444ZM6.55585 18.2954L6.26884 18.9883C7.45176 19.4783 8.71961 19.7305 10 19.7305V18.9805V18.2305C8.91659 18.2305 7.8438 18.0171 6.84286 17.6025L6.55585 18.2954ZM10 18.9805V19.7305C11.2804 19.7305 12.5482 19.4783 13.7312 18.9883L13.4442 18.2954L13.1571 17.6025C12.1562 18.0171 11.0834 18.2305 10 18.2305V18.9805ZM13.4442 18.2954L13.7312 18.9883C14.9141 18.4983 15.9889 17.7801 16.8943 16.8748L16.364 16.3444L15.8336 15.8141C15.0675 16.5802 14.1581 17.1879 13.1571 17.6025L13.4442 18.2954ZM16.364 16.3444L16.8943 16.8748C17.7997 15.9694 18.5178 14.8946 19.0078 13.7116L18.3149 13.4246L17.622 13.1376C17.2074 14.1385 16.5997 15.048 15.8336 15.8141L16.364 16.3444ZM18.3149 13.4246L19.0078 13.7116C19.4978 12.5287 19.75 11.2609 19.75 9.98047H19H18.25C18.25 11.0639 18.0366 12.1367 17.622 13.1376L18.3149 13.4246ZM19 9.98047H19.75C19.75 8.70008 19.4978 7.43223 19.0078 6.24931L18.3149 6.53632L17.622 6.82333C18.0366 7.82427 18.25 8.89706 18.25 9.98047H19ZM18.3149 6.53632L19.0078 6.24931C18.5178 5.06638 17.7997 3.99155 16.8943 3.08618L16.364 3.61651L15.8336 4.14684C16.5997 4.91292 17.2074 5.82239 17.622 6.82333L18.3149 6.53632ZM16.364 3.61651L16.8943 3.08618C15.9889 2.18081 14.9141 1.46263 13.7312 0.972643L13.4442 1.66555L13.1571 2.35846C14.1581 2.77306 15.0675 3.38075 15.8336 4.14684L16.364 3.61651ZM13.4442 1.66555L13.7312 0.972643C12.5482 0.48266 11.2804 0.230469 10 0.230469V0.980469V1.73047C11.0834 1.73047 12.1562 1.94386 13.1571 2.35846L13.4442 1.66555ZM10 0.980469V0.230469C8.71961 0.230469 7.45176 0.48266 6.26884 0.972643L6.55585 1.66555L6.84286 2.35846C7.8438 1.94386 8.91659 1.73047 10 1.73047V0.980469ZM6.55585 1.66555L6.26884 0.972643C5.08591 1.46263 4.01108 2.18081 3.10571 3.08618L3.63604 3.61651L4.16637 4.14684C4.93245 3.38075 5.84193 2.77306 6.84286 2.35846L6.55585 1.66555ZM3.63604 3.61651L3.10571 3.08618C2.20034 3.99155 1.48216 5.06638 0.992175 6.24931L1.68508 6.53632L2.37799 6.82333C2.7926 5.82239 3.40029 4.91292 4.16637 4.14684L3.63604 3.61651ZM1.68508 6.53632L0.992175 6.24931C0.502191 7.43223 0.25 8.70008 0.25 9.98047H1H1.75C1.75 8.89706 1.96339 7.82427 2.37799 6.82333L1.68508 6.53632ZM10 5.98047H9.25V9.67278H10H10.75V5.98047H10ZM10 9.67278L9.54272 10.2672L12.5427 12.5749L13 11.9805L13.4573 11.386L10.4573 9.07831L10 9.67278Z`,fill:`#616161`})}),e,`min`]}):null}function so({name:e,review:t,activeDuration:r,isPublished:i,backgroundColor:a=``}){let o=a?{backgroundColor:a}:{};return i?I(`div`,{className:`vl-c-recipe-card__content`,style:o,children:[F(`h2`,{className:`vl-c-recipe-card__title`,children:(0,n.decodeEntities)(e)}),I(`div`,{className:`vl-c-recipe-card__footer`,children:[F(ao,{review:t}),F(oo,{duration:r})]})]}):F(`div`,{className:`vl-c-recipe-card__content vl-c-recipe-card__content--unavailable`,style:o,children:F(`h2`,{className:`vl-c-recipe-card__title`,children:(0,n.decodeEntities)(e)})})}var co={MON:`Maanantai`,TUE:`Tiistai`,WED:`Keskiviikko`,THU:`Torstai`,FRI:`Perjantai`,SAT:`Lauantai`,SUN:`Sunnuntai`},lo={MON:`Ma`,TUE:`Ti`,WED:`Ke`,THU:`To`,FRI:`Pe`,SAT:`La`,SUN:`Su`};function uo(e,t){return t?lo[e]:co[e]}function Z({tags:e}){return!e||e.length===0?null:F(`div`,{className:`vl-c-recipe-card__tags`,children:e.map(e=>F(`div`,{className:`vl-c-recipe-card-tag vl-c-recipe-card-tag--${e.id}`,children:e.label},e.id))})}function fo({item:e,onMoveRecipe:t,onDeleteRecipe:n}){let r=n=>{y(n,()=>t({recipeItem:e}))},i=t=>{y(t,()=>n({recipeItem:e}))};return I(`div`,{className:`vl-c-recipe-card__action-bar`,children:[F(Hr,{variant:`secondary`,size:`sm`,onClick:r,onKeyDown:r,className:`vl-c-recipe-card__move-button`,children:`Siirrä`}),F(V,{variant:`secondary`,size:`sm`,"aria-label":`Poista resepti listasta`,onClick:i,onKeyDown:i,className:`vl-c-recipe-card__delete-button`,children:F(Xn,{})})]})}function po({item:e,tags:t,isChecked:n=!1,onSaveRecipe:r}){let i=e=>{y(e,()=>{r&&r(!n)})};return I(`div`,{className:`vl-c-recipe-card__action-bar`,children:[F(Z,{tags:t}),r?F(`button`,{type:`button`,className:v(`vl-c-recipe-card__meal-plan-toggle`,n?`is-checked`:void 0),"aria-label":n?`Poista resepti "${e.name}" ruokalistasta`:`Lisää resepti "${e.name}" ruokalistaan`,onClick:i,onKeyDown:i,children:F(n?Zn:Jn,{})}):null]})}
2function mo({item:e,onChangeRecipe:t,onDeleteRecipe:n}){let r=t=>{y(t,()=>n({recipeItem:e}))},i=n=>{y(n,()=>t({recipeItem:e}))};return I(`div`,{className:`vl-c-recipe-card__action-bar`,children:[I(Hr,{variant:`secondary`,size:`sm`,onClick:i,onKeyDown:i,className:`vl-c-recipe-card__change-button`,children:[`Vaihda`,F($n,{})]}),F(V,{variant:`secondary`,"aria-label":`Poista resepti listasta`,onClick:r,onKeyDown:r,className:`vl-c-recipe-card__delete-button`,children:F(Xn,{})})]})}function ho({item:e,tags:t,onSaveRecipe:n}){let r=t=>{y(t,()=>n({recipeItem:e}))};return I(`div`,{className:`vl-c-recipe-card__action-bar`,children:[F(Z,{tags:t}),F(`button`,{className:`vl-c-recipe-card__favorite-button`,"aria-label":`Tallenna resepti suosikkeihin`,onClick:r,onKeyDown:r,children:F(Qn,{})})]})}function go({item:e,tags:t,isChecked:n=!1,onSaveRecipe:r}){let i=e=>{y(e,()=>{r&&r(!n)})};return I(`div`,{className:`vl-c-recipe-card__action-bar`,children:[F(Z,{tags:t}),r?F(`button`,{type:`button`,className:v(`vl-c-recipe-card__shopping-list-toggle`,n?`is-checked`:void 0),"aria-label":n?`Poista resepti "${e.name}" kauppalistasta`:`Lisää resepti "${e.name}" kauppalistaan`,onClick:i,onKeyDown:i,children:F(n?Zn:Jn,{})}):null]})}var Q={DEFAULT:`default`,FAVORITE:`favorite`,SHOPPING_LIST:`shopping-list`,MEAL_PLAN:`meal-plan`,EDIT:`edit`,MENU_PLANNING:`menu-planning`};function _o({item:e,isPublished:t,mode:n,isChecked:r,showDayOfTheWeek:i,onChangeRecipe:a,onSaveRecipe:o,onSaveFavorite:s,onMoveRecipe:c,onDeleteRecipe:l}){let u=()=>{let t=[];
2return i&&e.userMatterDayOfTheWeek&&t.push({id:`day`,label:uo(e.userMatterDayOfTheWeek,!0)}),e?.isNew&&t.push({id:`new`,label:`Uusi`}),t};if(!t)return null;switch(n){case Q.EDIT:return F(fo,{item:e,onMoveRecipe:c,onDeleteRecipe:l});case Q.MENU_PLANNING:return F(mo,{item:e,onChangeRecipe:a,onDeleteRecipe:l});case Q.SHOPPING_LIST:return F(go,{item:e,tags:u(),isChecked:r,onSaveRecipe:o});case Q.MEAL_PLAN:return F(po,{item:e,tags:u(),isChecked:r,onSaveRecipe:o});case Q.FAVORITE:return F(ho,{item:e,tags:u(),onSaveRecipe:s});default:return F(`div`,{className:`vl-c-recipe-card__action-bar`,children:F(Z,{tags:u()})})}}var vo=({error:e,resetErrorBoundary:t})=>(console.error(`RecipeCard failed to render:`,e),F(`article`,{className:`vl-c-recipe-card vl-c-recipe-card--error`,"data-loaded":`false`,role:`alert`,children:I(`div`,{className:`vl-c-recipe-card__content`,children:[F(`h2`,{className:`vl-c-recipe-card__title`,children:`Virhe`}),F(`p`,{children:`Reseptiä ei voida näyttää.`}),F(`button`,{className:`vl-c-recipe-card__retry-button`,onClick:t,children:`Yritä uudelleen`})]})})),yo=(0,t.forwardRef)(({item:e,isLoading:t,mode:n=Q.DEFAULT,isFavorite:r=!1,showDayOfTheWeek:i=!1,isChecked:a=!1,className:o=``,style:s={},backgroundColor:c=``,onChangeRecipe:l=()=>{},onSaveRecipe:u,onSaveFavorite:d=()=>{},onMoveRecipe:f=()=>{},onDeleteRecipe:p=()=>{}},m)=>F(G,{FallbackComponent:vo,children:F(ro,{ref:m,url:e.url,isPublished:e.isPublished,isLoading:t,mode:n,isFavorite:r,analyticsJSON:e.analyticsJSON,children:I(`article`,{className:v(`vl-c-recipe-card`,!e.isPublished||!e.url?`vl-c-recipe-card--unavailable`:``,c?`has-bg`:``,o),style:s,children:[F(io,{src:e.image,alt:e.name,isPublished:e.isPublished}),F(so,{name:e.name,review:e?.review,activeDuration:e?.activeDuration,isPublished:e.isPublished,backgroundColor:c}),F(_o,{item:e,isPublished:e.isPublished,mode:n,isChecked:a,showDayOfTheWeek:i,onChangeRecipe:l,onSaveRecipe:u,onSaveFavorite:d,onMoveRecipe:f,onDeleteRecipe:p})]})})})),$=2e3;function bo({listId:e,listName:t,dayOfWeek:n}){let{getFolderById:r,removeRecipeFromFolderAsync:i}=Qa(),a=r(e)?.items??[],o=e=>a.find(t=>t.matterType===`RECIPE`&&String(t.matterId)===String(e.matterId)&&(!n||t.userMatterDayOfTheWeek===n));return{cardMode:Q.MEAL_PLAN,isInList:e=>o(e)!==void 0,toggleRecipe:async(n,r)=>{if(!no())return;let a=n.matterId?String(n.matterId):``;if(!e||!a){Y.appendItem({type:`error`,message:`Ruokalistaa ei löytynyt. Yritä uudelleen.`,duration:$});return}let s=n.name??``;if(r){Xa.open({view:$a.SAVE_RECIPE_TO_WEEKLY_MENU_CONFIRM,currentListId:e,data:[{id:a,name:s,type:`RECIPE`},{id:e,name:t,type:`WEEK_MENU`}],allowSecondaryView:!0,source:`meal_plan`});return}let c=o(n);c&&(await i({listId:e,item:c}),Y.appendItem({type:`success`,message:`Resepti "${s}" poistettiin ruokalistasta.`,duration:$}))}}}function xo(e){let{getFolderById:t,addRecipeToShoppingListAsync:n,removeShoppingListRecipeAsync:r}=Qa(),i=t(e)?.items??[];return{cardMode:Q.SHOPPING_LIST,isInList:e=>i.some(t=>t.matterType===`RECIPE`&&String(t.matterId)===String(e.matterId)),toggleRecipe:async(t,i)=>{if(!no())return;let a=t.matterId?String(t.matterId):``;if(!e||!a){Y.appendItem({type:`error`,message:`Kauppalistaa ei löytynyt. Yritä uudelleen.`,duration:$});return}let o=t.name??``;if(i){await n({listId:e,recipeId:a,recipeName:o}),Y.appendItem({type:`success`,message:`Resepti "${o}" lisättiin kauppalistaan.`,duration:$});return}let s=await to(e,{matterId:a});await r({listId:e,recipeItemId:s,recipeMatterId:a}),Y.appendItem({type:`success`,message:`Resepti "${o}" poistettiin kauppalistasta.`,duration:$})}}}function So(e,t){return{kind:`result`,key:e.id,result:e,position:t+1}}function Co(e){return{kind:`ad`,key:`${Ca}${e.postId}`,ad:e}}function wo(e){return{kind:`ad-banner`,key:`${wa}${e.postId}`,banner:e}}function To(e,t,n=null){let r=e.map(So);return t&&r.splice(4,0,Co(t)),n&&r.splice(8,0,wo(n)),r}function Eo(e){return e.flatMap(e=>e.kind===`ad`?[{key:e.key,ad:e.ad}]:e.kind===`ad-banner`?[{key:e.key,ad:e.banner}]:[])}var Do=({error:e,resetErrorBoundary:t})=>(console.error(`ContentCard failed to render:`,e),F(`article`,{className:`vl-c-content-card vl-c-content-card--error`,"data-loaded":`false`,role:`alert`,children:I(`div`,{className:`vl-c-content-card__content`,children:[F(`h2`,{className:`vl-c-content-card__title`,children:`Virhe`}),F(`p`,{children:`Sisältöä ei voida näyttää.`}),F(`button`,{className:`vl-c-content-card__retry-button`,onClick:t,children:`Yritä uudelleen`})]})})),Oo=(0,t.forwardRef)(({url:e,isPublished:t,isLoading:n,analyticsJSON:r,children:i},a)=>!e||!t?F(`div`,{ref:a,className:`vl-c-content-card__link`,children:i}):F(`a`,{ref:a,className:`vl-c-content-card__link`,href:e,"data-loaded":!n,"data-track-item":r,onKeyDown:t=>{t.key===` `&&(t.preventDefault(),window.location.href=e)},children:i})),ko=e=>{switch(e.toLowerCase()){case`page`:return`Sivu`;case`vl_article`:return`Artikkeli`;case`vl_video`:return`Video`;case`vl_podcast-episode`:return`Podcast`;default:return e}};
2function Ao(e){let{contentType:t,contentFamily:r}=e;return!t&&!r?null:I(`div`,{className:`vl-c-content-card__meta`,children:[t?I(`span`,{className:`vl-c-content-card__type`,children:[I(`svg`,{className:`vl-c-content-card__icon`,xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,viewBox:`0 0 16 16`,fill:`none`,"aria-hidden":`true`,children:[F(`path`,{d:`M13.7137 4.57141H2.28516`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`}),F(`path`,{d:`M13.625 8.0625H2.375`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`}),F(`path`,{d:`M9.9375 11.75H2.375`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`})]}),F(`span`,{children:ko(t)})]}):null,r?I(`span`,{className:`vl-c-content-card__content-family`,children:[t?F(`span`,{"aria-hidden":`true`,children:`·`}):null,` `,(0,n.decodeEntities)(r)]}):null]})}function jo(e){let{title:t,contentType:r,contentFamily:i,isPublished:a}=e;return I(`div`,{className:`vl-c-content-card__content${a?``:` vl-c-content-card__content--unavailable`}`,children:[F(`h2`,{className:`vl-c-content-card__title`,children:(0,n.decodeEntities)(t)}),a?F(Ao,{contentType:r,contentFamily:i}):null]})}function Mo(e){let{src:t,alt:n,isPublished:r}=e;return F(`div`,{className:`vl-c-content-card__image-wrapper`,children:t&&r?F(`img`,{className:`vl-c-content-card__image`,src:t,alt:n,loading:`lazy`}):F(`div`,{className:`vl-c-content-card__image-placeholder`})})}var No=(0,t.forwardRef)(({item:e,isLoading:t,className:n=``,style:r={}},i)=>{let a=e.isPublished??!0;return F(G,{FallbackComponent:Do,children:F(`article`,{className:v(`vl-c-content-card`,!a||!e.url?`vl-c-content-card--unavailable`:``,n),style:r,children:I(Oo,{ref:i,url:e.url,isPublished:a,isLoading:t,analyticsJSON:e.analyticsJSON,children:[F(Mo,{src:e.image,alt:e.imageAlt||e.title,isPublished:a}),F(jo,{title:e.title,contentType:e.contentType,contentFamily:e.contentFamily,isPublished:a})]})})})}),Po=({resetErrorBoundary:e})=>F(`article`,{className:`vl-c-product-card vl-c-product-card--error`,"data-loaded":`false`,role:`alert`,children:I(`div`,{className:`vl-c-product-card__fallback-content`,children:[F(`p`,{className:`vl-c-product-card__fallback-title`,children:`Virhe`}),F(`p`,{children:`Tuotetta ei voida näyttää.`}),F(`button`,{className:`vl-c-product-card__retry-button`,onClick:e,type:`button`,children:`Yritä uudelleen`})]})}),Fo=(0,t.forwardRef)(({url:e,isLoading:n,analyticsJSON:r,children:i},a)=>e?F(`a`,{ref:a,className:`vl-c-product-card-link`,href:e,"data-loaded":!n,"data-track-item":r,onKeyDown:t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),window.location.href=e)},children:i}):F(t.Fragment,{children:i})),Io=e=>`has-background-${e.replace(/^var\(--(.+)\)$/,`$1`).replace(`#`,``)}`,Lo=(0,t.forwardRef)(({item:e,onAdd:t,isLoading:r=!1,className:i=``,backgroundColor:a=``,style:o={},variant:s=`default`,hasProductMeta:c=!1},l)=>{let u=a?Io(a):``,d=n=>{t&&y(n,()=>t(e))};return F(G,{FallbackComponent:Po,children:F(Fo,{ref:l,url:e.url,isLoading:r,analyticsJSON:e.analyticsJSON,children:I(`article`,{className:v(`vl-c-product-card`,r?`vl-c-product-card--loading`:``,e.url?``:`vl-c-product-card--unavailable`,a?`has-background`:``,u,s===`compact`?`vl-c-product-card--compact`:``,s===`centered`?`vl-c-product-card--centered`:``,s===`no-title-big`?`vl-c-product-card--no-title-big`:``,i),style:{...o,backgroundColor:a},children:[F(`div`,{className:`vl-c-product-card__image-wrapper`,children:F(`img`,{className:`vl-c-product-card__image`,src:e.image||X,alt:(0,n.decodeEntities)(e.name),loading:`lazy`})}),t?F(V,{onClick:d,onKeyDown:d,"aria-label":`Lisää ${(0,n.decodeEntities)(e.name)} kauppalistalle`,variant:`tertiary`,size:`sm`,className:`vl-c-product-card__add-button`,children:F(Jn,{})}):null,F(`h2`,{className:`vl-c-product-card__title`,children:(0,n.decodeEntities)(e.name)}),c?F(`div`,{className:`vl-c-product-card__meta`,children:F(`span`,{className:`vl-c-product-card__meta-item`,children:`Tuote`})}):null]})})})}),Ro=({error:e,resetErrorBoundary:t})=>(console.error(`RecipeGroupCard failed to render:`,e),F(`article`,{className:`vl-c-recipe-group-card vl-c-recipe-group-card--error`,"data-loaded":`false`,role:`alert`,children:I(`div`,{className:`vl-c-recipe-group-card__content`,children:[F(`h2`,{className:`vl-c-recipe-group-card__title`,children:`Virhe`}),F(`p`,{children:`Ryhmää ei voida näyttää.`}),F(`button`,{className:`vl-c-recipe-group-card__retry-button`,onClick:t,children:`Yritä uudelleen`})]})})),zo=(0,t.forwardRef)(({url:e,isPublished:n,isLoading:r,analyticsJSON:i,children:a},o)=>!e||!n?F(t.Fragment,{children:a}):F(`a`,{ref:o,className:`vl-c-recipe-group-card-link`,href:e,"data-loaded":!r,"data-track-item":i,onKeyDown:t=>{t.key===` `&&(t.preventDefault(),window.location.href=e)},children:a}));function Bo(e){let{title:t,isPublished:r}=e;return F(`div`,{className:`vl-c-recipe-group-card__content${r?``:` vl-c-recipe-group-card__content--unavailable`}`,children:F(`h2`,{className:`vl-c-recipe-group-card__title`,children:(0,n.decodeEntities)(t)})})}function Vo(e){let{src:t,alt:n,isPublished:r}=e;return I(`div`,{className:`vl-c-recipe-group-card__image-wrapper`,children:[F(`img`,{className:`vl-c-recipe-group-card__image${r?``:` vl-c-recipe-group-card__image--unavailable`}`,src:t||X,alt:n}),r?null:F(`span`,{className:`vl-c-recipe-group-card__image-unavailable-text`,children:`Ryhmä ei ole saatavilla`})]})}var Ho=(0,t.forwardRef)(({item:e,isLoading:t,className:n=``,style:r={}},i)=>{let a=e.isPublished??!0;return F(G,{FallbackComponent:Ro,children:F(zo,{ref:i,url:e.url,isPublished:a,isLoading:t,analyticsJSON:e.analyticsJSON,children:I(`article`,{className:v(`vl-c-recipe-group-card`,!a||!e.url?`vl-c-recipe-group-card--unavailable`:``,n),style:r,children:[F(Vo,{src:e.image,alt:e.imageAlt||e.title,isPublished:a}),F(Bo,{title:e.title,isPublished:a})]})})})}),Uo=({error:e,resetErrorBoundary:t})=>(console.error(`SeasonalVerticalCard failed to render:`,e),F(`article`,{className:`vl-c-seasonal-vertical-card vl-c-seasonal-vertical-card--error`,"data-loaded":`false`,role:`alert`,children:I(`div`,{className:`vl-c-seasonal-vertical-card__content`,children:[F(`h2`,{className:`vl-c-seasonal-vertical-card__title`,children:`Virhe`}),F(`p`,{children:`Ryhmää ei voida näyttää.`}),F(`button`,{className:`vl-c-seasonal-vertical-card__retry-button`,onClick:t,children:`Yritä uudelleen`})]})})),Wo=(0,t.forwardRef)(({url:e,isPublished:n,analyticsJSON:r,children:i},a)=>!e||!n?F(t.Fragment,{children:i}):F(`a`,{ref:a,className:`vl-c-seasonal-vertical-card__link`,href:e,"data-loaded":!0,"data-track-item":r,onKeyDown:t=>{t.key===` `&&(t.preventDefault(),window.location.href=e)},children:i}));function Go(e){let{title:t,isPublished:r}=e;return F(`div`,{className:`vl-c-seasonal-vertical-card__content${r?``:` vl-c-seasonal-vertical-card__content--unavailable`}`,children:F(`h2`,{className:`vl-c-seasonal-vertical-card__title`,children:(0,n.decodeEntities)(t)})})}function Ko(e){let{src:t,alt:n,isPublished:r}=e;return I(`div`,{className:`vl-c-seasonal-vertical-card__image-wrapper`,children:[F(`img`,{className:`vl-c-seasonal-vertical-card__image${r?``:` vl-c-seasonal-vertical-card__image--unavailable`}`,src:t||X,alt:n}),r?null:F(`span`,{className:`vl-c-seasonal-vertical-card__image-unavailable-text`,children:`Ryhmä ei ole saatavilla`})]})}(0,t.forwardRef)(({item:e,isLoading:t=!1,className:n=``,backgroundColor:r,style:i={}},a)=>{let o=e.isPublished??!0,s=v(`vl-c-seasonal-vertical-card`,t?`vl-c-seasonal-vertical-card--loading`:``,!o||!e.url?`vl-c-seasonal-vertical-card--unavailable`:``,n);return F(G,{FallbackComponent:Uo,children:F(Wo,{ref:a,url:e.url,isPublished:o,analyticsJSON:e.analyticsJSON,children:I(`article`,{className:s,style:{...i,backgroundColor:r},children:[F(Ko,{src:e.image,alt:e.title,isPublished:o}),F(Go,{title:e.title,isPublished:o})]})})})});var qo=(0,t.forwardRef)(({analyticsJSON:e,children:t,isLoading:n,isPublished:r,onClick:i,url:a},o)=>!a||!r?F(`div`,{ref:o,className:`vl-c-vertical-content-card__link`,children:t}):F(`a`,{ref:o,className:`vl-c-vertical-content-card__link`,href:a,"data-loaded":!n,"data-track-item":e,onClick:i,onKeyDown:e=>{e.key===` `&&(e.preventDefault(),i?.(),window.location.href=a)},children:t})),Jo={vl_recipe:`Resepti`,vl_product:`Tuote`,vl_article:`Artikkeli`,"vl_recipe-group":`Kokoelma`,page:`Sivu`}
2,Yo={vl_article:I(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,viewBox:`0 0 16 16`,fill:`none`,children:[F(`path`,{d:`M13.7142 4.57129H2.28564`,stroke:`#204DC6`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`}),F(`path`,{d:`M13.625 8.0625H2.375`,stroke:`#204DC6`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`}),F(`path`,{d:`M9.9375 11.75H2.375`,stroke:`#204DC6`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`})]})};function Xo({contentFamily:e,contentType:n}){return[Jo[n||``],e].filter(Boolean).length===0?null:I(`p`,{className:`vl-c-vertical-content-card__meta`,children:[n&&Yo[n],n?F(`span`,{className:`vl-c-vertical-content-card__meta-item`,children:Jo[n]}):null,e?I(t.Fragment,{children:[F(`span`,{className:`vl-c-vertical-content-card__meta-item`,children:`·`}),F(`span`,{className:`vl-c-vertical-content-card__meta-item`,children:e})]}):null]})}function Zo({contentFamily:e,contentType:t,isPublished:n,title:r}){return I(`div`,{className:`vl-c-vertical-content-card__content`,children:[F(`h2`,{className:`vl-c-vertical-content-card__title`,children:r}),n?F(Xo,{contentFamily:e,contentType:t}):null]})}function Qo({alt:e,isPublished:t,src:n}){return F(`div`,{className:`vl-c-vertical-content-card__image-wrapper`,children:n&&t?F(`img`,{className:`vl-c-vertical-content-card__image`,src:n,alt:e,loading:`lazy`}):F(`div`,{className:`vl-c-vertical-content-card__image-placeholder`})})}function $o(e){switch(e){case`vl_product`:return`vl-c-vertical-content-card--product`;case`vl_recipe`:return`vl-c-vertical-content-card--recipe`;case`vl_article`:return`vl-c-vertical-content-card--article`;case`vl_video`:return`vl-c-vertical-content-card--video`;case`vl_podcast-episode`:return`vl-c-vertical-content-card--podcast`;default:return``}}(0,t.forwardRef)(({item:e,isLoading:t,className:n=``,onClick:r,style:i={}},a)=>{let o=e.isPublished??!0;return F(G,{FallbackComponent:Do,children:F(`article`,{className:v(`vl-c-vertical-content-card`,!o||!e.url?`vl-c-vertical-content-card--unavailable`:``,$o(e.contentType),n),style:i,children:I(qo,{ref:a,url:e.url,isPublished:o,isLoading:t,analyticsJSON:e.analyticsJSON,onClick:r,children:[F(Qo,{src:e.image,alt:e.imageAlt||e.title,isPublished:o}),F(Zo,{title:e.title,contentType:e.contentType,contentFamily:e.contentFamily,isPublished:o})]})})})});function es({recipeItem:e}){no()&&Xa.open({view:$a.SAVE_RECIPE_TO_FOLDER,data:[{id:e.matterId?.toString()??e.id?.toString()??``,name:e.name??``,type:`RECIPE`}],allowSecondaryView:!0,source:`item_list`})}function ts(e,t){if(bt(e)){let n=Tt(e);return t?F(yo,{item:n,isLoading:!1,mode:t.cardMode,isChecked:t.isInList(n),onSaveRecipe:e=>t.toggleRecipe(n,e)}):F(yo,{item:n,isLoading:!1,mode:Q.FAVORITE,onSaveFavorite:es})}return xt(e)?F(Lo,{item:Et(e),isLoading:!1,hasProductMeta:!0}):St(e)?F(Ho,{item:Dt(e),isLoading:!1}):F(No,{item:Ot(e),isLoading:!1})}var ns=12;function rs(){return F(`ul`,{className:`vl-ai-search__result-grid vl-ai-search__result-grid--loading`,"aria-hidden":`true`,children:Array.from({length:ns},(e,t)=>F(`li`,{className:`vl-ai-search__result-grid-item vl-ai-search__result-grid-item--skeleton`,children:I(`div`,{className:`vl-ai-search__result-skeleton`,children:[F(z,{className:`vl-ai-search__result-skeleton-image`}),I(`div`,{className:`vl-ai-search__result-skeleton-content`,children:[F(z,{className:`vl-ai-search__result-skeleton-line vl-ai-search__result-skeleton-line--short`,height:`0.875rem`}),F(z,{className:`vl-ai-search__result-skeleton-line`,height:`0.875rem`}),F(z,{className:`vl-ai-search__result-skeleton-line vl-ai-search__result-skeleton-line--medium`,height:`0.875rem`})]})]})},t))})}function is({entry:e,queryText:t,totalCount:n,recipeListMode:r}){return F(`li`,{className:`vl-ai-search__result-grid-item`,onClick:()=>{vn(e.result.meta,e.position),bn(t,n)},children:ts(e.result,r)})}function as({entry:e}){return F(`li`,{className:`vl-ai-search__result-grid-item vl-ai-search__result-grid-item--ad`,onClick:()=>Ma(e.ad),children:F(ya,{item:e.ad})})}function os({entry:e}){return F(`li`,{className:`vl-ai-search__result-grid-item vl-ai-search__result-grid-item--ad-banner`,onClick:()=>Ma(e.banner),children:F(_a,{item:e.banner})})}function ss({gridEntries:e,queryText:t,totalCount:n,recipeListMode:r}){return F(`ul`,{className:`vl-ai-search__result-grid`,"aria-label":`Search results`,children:e.map(e=>e.kind===`ad`?F(as,{entry:e},e.key):e.kind===`ad-banner`?F(os,{entry:e},e.key):F(is,{entry:e,queryText:t,totalCount:n,recipeListMode:r},e.key))})}function cs({listId:e,...t}){let n=xo(e);return F(ss,{...t,recipeListMode:n})}function ls({listId:e,listName:t,dayOfWeek:n,...r}){let i=bo({listId:e,listName:t,dayOfWeek:n});return F(ss,{...r,recipeListMode:i})}function us(){let{query:e,contentType:n}=k(),r=Fe(),i=(0,t.useRef)(null),{results:a,totalCount:o,isLoading:s,isFetchingNextPage:c,isError:l,loadMoreRef:u}=Ln({trackViewItemList:!0}),{ad:d}=Ja(n),{banner:f}=Ya(n),p=e.trim(),m=To(a,d,f);return Na(!l&&a.length>0?Eo(m):[]),(0,t.useEffect)(()=>{let e=`${p}:${o}`;p.length===0||s||l||i.current===e||(i.current=e,yn(p,o))},[l,s,p,o]),s&&a.length===0?I(`section`,{className:`vl-ai-search__page-results`,"aria-label":`Search results`,"aria-busy":`true`,children:[F(`p`,{className:`vl-ai-search__result-loading-text`,children:`Ladataan...`}),F(rs,{})]}):l?F(`section`,{className:`vl-ai-search__page-results`,"aria-label":`Search results`,children:F(`p`,{children:`Haku epäonnistui.`})}):I(`section`,{className:`vl-ai-search__page-results`,"aria-label":`Search results`,children:[a.length>0?r.mode===E.SHOPPING_LIST?F(cs,{listId:r.listId,gridEntries:m,queryText:p,totalCount:o}):r.mode===E.MEAL_PLAN?F(ls,{listId:r.listId,listName:r.listName,dayOfWeek:r.dayOfWeek,gridEntries:m,queryText:p,totalCount:o}):F(ss,{gridEntries:m,queryText:p,totalCount:o}):F(`p`,{children:`Ei tuloksia.`}),F(`div`,{ref:u,"aria-hidden":`true`}),c?F(`p`,{children:`Ladataan lisää...`}):null]})}var ds={[E.NONE]:``,[E.MEAL_PLAN]:`Takaisin ruokalistaan`,[E.SHOPPING_LIST]:`Takaisin kauppalistaan`};function fs(){return F(`svg`,{width:`12`,height:`12`,viewBox:`0 0 12 12`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`,focusable:`false`,children:F(`path`,{d:`M11.25 5.75H0.75M0.75 5.75L5.75 10.75M0.75 5.75L5.75 0.75`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`})})}function ps({listMode:e}){let t=ds[e.mode];return!t||!e.returnUrl?null:F(`div`,{className:`vl-ai-search-content__back-to-list`,children:I(`a`,{className:`vl-ai-search-content__back-to-list-button`,href:e.returnUrl,children:[F(fs,{}),t]})})}function ms({query:e,totalCount:t,isLoading:n,isError:r}){return I(`h1`,{className:`vl-ai-search-content__title`,children:[F(`span`,{children:e.trim()||`Haku`}),` `,n?F(z,{className:`vl-ai-search-content__count-skeleton`,width:`2.4em`,height:`0.75em`}):I(`span`,{children:[`(`,r?0:t,`)`]})]})}var hs=({query:e,totalCount:n,isLoading:r,isError:i,contentType:a,setContentType:o,hasFilters:s,setIsFilterModalOpen:c})=>F(t.Fragment,{children:I(`div`,{className:`vl-ai-search-content__header vl-ai-search-content__header--mobile`,children:[F(ms,{query:e,totalCount:n,isLoading:r,isError:i}),F($r,{contentType:a,hasFilters:s||!1,onOpenFilters:()=>c&&c(!0),setContentType:o})]})}),gs=({query:e,totalCount:n,isLoading:r,isError:i,contentType:a,setContentType:o})=>F(t.Fragment,{children:I(`div`,{className:`vl-ai-search-content__header vl-ai-search-content__header--desktop`,children:[F(ms,{query:e,totalCount:n,isLoading:r,isError:i}),F(Qr,{contentType:a,setContentType:o})]})});function _s(){let{query:e}=k(),{contentType:n,setContentType:r}=$e(),{totalCount:i,isLoading:a,isError:o}=Ln(),s=Fe(),{isMobile:c}=_(),[l,u]=(0,t.useState)(!1),d=na(n);return I(`div`,{className:v(`vl-ai-search-content`,d?`has-filters`:void 0),children:[c?F(hs,{query:e,totalCount:i,isLoading:a,isError:o,contentType:n,setContentType:r,hasFilters:d,setIsFilterModalOpen:u}):F(gs,{query:e,totalCount:i,isLoading:a,isError:o,contentType:n,setContentType:r}),F(ra,{contentType:n,totalCount:i,isMobile:c,isOpen:l,onClose:()=>u(!1)}),F(us,{}),F(ps,{listMode:s})]})}function vs(){return F(h,{client:d,children:F(_s,{})})}function ys(){document.querySelectorAll(`[data-vl-ai-search-page]`).forEach(e
2=>{e.dataset.mounted!==`1`&&(e.dataset.mounted=`1`,(0,t.createRoot)(e).render(F(vs,{})))})}(0,e.default)(()=>{pt.prepare(),ys()})})(wp.domReady,wp.element,wp.htmlEntities);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.