/* Scoped Elementor presentation; existing Foodvuro designs keep their own tokens. */
.foodvuro-widget { min-width:0; max-width:100%; }
.foodvuro-widget--local { padding:16px; border-radius:12px; }
.foodvuro-widget--layout-modern .gastrovo-structured-menu__category { padding:16px; border:1px solid currentColor; border-radius:12px; }
.foodvuro-widget--layout-elegant h2,.foodvuro-widget--layout-elegant h3 { font-family:Georgia,serif; }
.foodvuro-widget--layout-elegant .gastrovo-structured-menu__item { border-bottom:1px solid currentColor; }
.foodvuro-widget .gastrovo-editor-preview__paper { min-height:clamp(400px,var(--gvo-pdf-height,760px),1400px); }
.foodvuro-menu-filters { display:flex; flex-wrap:wrap; gap:12px; margin-block:16px; }
.foodvuro-menu-filters[hidden],.gastrovo-structured-menu [hidden] { display:none!important; }
.foodvuro-menu-filters label { display:flex; flex:1 1 180px; flex-direction:column; gap:6px; min-width:0; }
.foodvuro-menu-filters input,.foodvuro-menu-filters select { width:100%; max-width:100%; min-height:44px; font:inherit; padding:8px; box-sizing:border-box; }
.foodvuro-menu-filters p { flex-basis:100%; margin:0; }
.foodvuro-menu-filters :focus-visible { outline:2px solid currentColor; outline-offset:3px; }
.foodvuro-filter-active .gastrovo-structured-menu__category > h3 { display:block!important; }

.foodvuro-widget--layout-modern .gastrovo-announcements { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); gap:16px; }
.foodvuro-widget--layout-elegant .gastrovo-announcement__title { font-family:Georgia,serif; }
.foodvuro-widget--layout-modern .gastrovo-weekly-menu__day { border-radius:12px; }
.foodvuro-widget--layout-elegant .gastrovo-weekly-menu__item { border-top:1px solid currentColor; }
