:root{--widget-primary: #8AA79C;--widget-secondary: #DDB89A;--widget-text: #3D4945;--widget-text-secondary: #9AA6A1;--widget-bg: #F9F7F2;--widget-border: #EAEBE6;--widget-success: #7CB342;--widget-shadow: 0 2px 8px rgba(138, 167, 156, .15)}.menu-demo-widget{background:var(--widget-bg);border-radius:24px;padding:16px;box-shadow:var(--widget-shadow);max-width:100%;overflow:hidden}.menu-demo-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.menu-demo-title{font-family:Merriweather,serif;font-size:.85rem;font-weight:600;color:var(--widget-text)}.menu-demo-autofill-btn{display:flex;align-items:center;gap:4px;padding:6px 12px;background:transparent;border:1px solid var(--widget-secondary);border-radius:20px;color:var(--widget-secondary);font-size:.7rem;font-weight:600;cursor:pointer;transition:all .2s}.menu-demo-autofill-btn:hover{background:var(--widget-secondary);color:#fff}.menu-demo-grid{display:flex;flex-direction:column;gap:4px}.menu-demo-row{display:flex;gap:4px;align-items:center}.menu-demo-day{width:50px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-right:4px}.menu-demo-day-short{font-size:.65rem;font-weight:600;color:var(--widget-text-secondary)}.menu-demo-day-num{font-size:.9rem;font-weight:700;color:var(--widget-text)}.menu-demo-meal{flex:1;min-width:0;padding:4px}.menu-demo-meal-card{background:#fff;border-radius:12px;padding:4px;height:100%;cursor:pointer;transition:all .2s}.menu-demo-meal-card:hover{box-shadow:0 4px 12px #8aa79c33}.menu-demo-meal-empty{background:transparent;border:1px dashed var(--widget-border);border-radius:12px;display:flex;align-items:center;justify-content:center;min-height:60px;cursor:pointer;transition:all .2s}.menu-demo-meal-empty:hover{border-color:var(--widget-secondary);background:#ddb89a0d}.menu-demo-meal-image{width:100%;aspect-ratio:4/3;border-radius:8px;overflow:hidden;background:var(--widget-border);margin-bottom:4px}.menu-demo-meal-image img{width:100%;height:100%;object-fit:cover}.menu-demo-meal-title{font-size:clamp(.6rem,2.5vw,.8rem);font-weight:600;color:var(--widget-text);text-align:center;line-height:1.15;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word;padding:0 2px}.menu-demo-calories{background:#fff;border-radius:16px;padding:12px;margin-top:12px;box-shadow:0 1px 4px #0000000d}.menu-demo-calories-title{font-size:.75rem;font-weight:600;color:var(--widget-text-secondary);margin-bottom:8px}.menu-demo-calories-grid{display:flex;justify-content:space-around;gap:8px}.menu-demo-calorie-item{text-align:center}.menu-demo-calorie-value{font-size:1.25rem;font-weight:700;color:var(--widget-primary)}.menu-demo-calorie-label{font-size:.65rem;color:var(--widget-text-secondary);margin-top:2px}.shopping-demo-widget{background:var(--widget-bg);border-radius:24px;padding:16px;box-shadow:var(--widget-shadow);max-width:100%}.shopping-demo-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.shopping-demo-title{font-family:Merriweather,serif;font-size:.85rem;font-weight:600;color:var(--widget-text);display:flex;align-items:center;gap:6px}.shopping-demo-share-btn{padding:8px;background:transparent;border:none;color:var(--widget-primary);cursor:pointer;border-radius:50%;transition:all .2s}.shopping-demo-share-btn:hover{background:#8aa79c1a}.shopping-demo-category{margin-bottom:16px}.shopping-demo-category-title{font-size:.75rem;font-weight:600;color:var(--widget-text-secondary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;display:flex;align-items:center;gap:6px}.shopping-demo-item{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--widget-border)}.shopping-demo-item:last-child{border-bottom:none}.shopping-demo-checkbox{width:20px;height:20px;border:2px solid var(--widget-primary);border-radius:6px;cursor:pointer;flex-shrink:0;transition:all .2s}.shopping-demo-checkbox.checked{background:var(--widget-success);border-color:var(--widget-success);position:relative}.shopping-demo-checkbox.checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:.75rem;font-weight:700}.shopping-demo-item-text{flex:1;font-size:.875rem;color:var(--widget-text)}.shopping-demo-item-text.checked{text-decoration:line-through;color:var(--widget-text-secondary)}.shopping-demo-item-quantity{font-size:.75rem;color:var(--widget-text-secondary);margin-left:4px}.shopping-demo-always-have{background:#7cb3421a;border-radius:16px;padding:12px;margin-top:16px}.shopping-demo-always-have-title{font-size:.75rem;font-weight:600;color:var(--widget-success);margin-bottom:8px;display:flex;align-items:center;gap:6px}.shopping-demo-always-have-items{display:flex;flex-wrap:wrap;gap:6px}.shopping-demo-always-have-chip{padding:4px 10px;background:#fff;border-radius:16px;font-size:.7rem;color:var(--widget-text);border:1px solid var(--widget-border)}.recipe-demo-widget{background:var(--widget-bg);border-radius:24px;padding:16px;box-shadow:var(--widget-shadow);max-width:100%}.recipe-demo-image{width:100%;height:200px;border-radius:16px;overflow:hidden;margin-bottom:16px;background:var(--widget-border)}.recipe-demo-image img{width:100%;height:100%;object-fit:cover}.recipe-demo-title{font-family:Merriweather,serif;font-size:1.5rem;font-weight:700;color:var(--widget-text);margin-bottom:12px;line-height:1.2}.recipe-demo-meta{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.recipe-demo-chip{padding:6px 12px;background:#fff;border:1px solid var(--widget-border);border-radius:16px;font-size:.75rem;font-weight:600;color:var(--widget-text);display:flex;align-items:center;gap:4px}.recipe-demo-nutrition{background:#fff;border-radius:16px;padding:12px;margin-bottom:16px}.recipe-demo-nutrition-title{font-size:.875rem;font-weight:600;color:var(--widget-text);margin-bottom:12px}.recipe-demo-nutrition-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.recipe-demo-nutrition-item{text-align:center}.recipe-demo-nutrition-value{font-size:1.25rem;font-weight:700;margin-bottom:4px}.recipe-demo-nutrition-value.calories{color:var(--widget-primary)}.recipe-demo-nutrition-value.protein{color:var(--widget-success)}.recipe-demo-nutrition-value.fat{color:#ffa726}.recipe-demo-nutrition-value.carbs{color:#42a5f5}.recipe-demo-nutrition-label{font-size:.65rem;color:var(--widget-text-secondary)}.recipe-demo-section{margin-bottom:16px}.recipe-demo-section-title{font-size:.875rem;font-weight:600;color:var(--widget-text);margin-bottom:12px;display:flex;align-items:center;gap:6px}.recipe-demo-ingredients{display:flex;flex-direction:column;gap:8px}.recipe-demo-ingredient{display:flex;align-items:center;gap:8px;padding:8px;background:#fff;border-radius:12px;font-size:.875rem;color:var(--widget-text)}.recipe-demo-ingredient-bullet{width:6px;height:6px;background:var(--widget-primary);border-radius:50%;flex-shrink:0}.recipe-demo-steps{display:flex;flex-direction:column;gap:12px}.recipe-demo-step{display:flex;gap:12px;padding:12px;background:#fff;border-radius:12px}.recipe-demo-step-number{width:28px;height:28px;background:var(--widget-primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem;flex-shrink:0}.recipe-demo-step-text{flex:1;font-size:.875rem;color:var(--widget-text);line-height:1.5}.fridge-demo-widget{background:var(--widget-bg);border-radius:24px;padding:16px;box-shadow:var(--widget-shadow);max-width:100%}.fridge-demo-title{font-family:Merriweather,serif;font-size:.85rem;font-weight:600;color:var(--widget-text);margin-bottom:12px}.fridge-demo-subtitle{font-size:.75rem;color:var(--widget-text-secondary);margin-bottom:12px}.fridge-demo-ingredients{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.fridge-demo-ingredient-tag{padding:6px 12px;background:#fff;border:2px solid var(--widget-primary);border-radius:16px;font-size:.75rem;font-weight:600;color:var(--widget-text);cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:4px}.fridge-demo-ingredient-tag.selected{background:var(--widget-primary);color:#fff}.fridge-demo-ingredient-tag:hover{transform:scale(1.05)}.fridge-demo-results-title{font-size:.875rem;font-weight:600;color:var(--widget-text);margin-bottom:12px}.fridge-demo-recipe-card{background:#fff;border-radius:16px;padding:12px;margin-bottom:12px;cursor:pointer;transition:all .2s}.fridge-demo-recipe-card:hover{box-shadow:0 4px 12px #8aa79c33;transform:translateY(-2px)}.fridge-demo-recipe-header{display:flex;gap:12px;margin-bottom:8px}.fridge-demo-recipe-image{width:68px;height:68px;border-radius:12px;overflow:hidden;background:var(--widget-border);flex-shrink:0}.fridge-demo-recipe-image img{width:100%;height:100%;object-fit:cover}.fridge-demo-recipe-info{flex:1;min-width:0}.fridge-demo-recipe-title{font-size:.875rem;font-weight:600;color:var(--widget-text);margin-bottom:4px}.fridge-demo-recipe-match{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:#7cb3421a;border:1px solid var(--widget-success);border-radius:12px;font-size:.7rem;font-weight:600;color:var(--widget-success)}.fridge-demo-recipe-missing{background:#8aa79c1a;border-radius:12px;padding:8px;margin-top:8px}.fridge-demo-recipe-missing-title{font-size:.65rem;font-weight:600;color:var(--widget-text-secondary);margin-bottom:4px}.fridge-demo-recipe-missing-text{font-size:.65rem;color:var(--widget-text-secondary)}.fridge-demo-premium-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:linear-gradient(135deg,#ddb89a,#cda888);border-radius:12px;font-size:.7rem;font-weight:600;color:#fff;margin-top:8px}@media(max-width:768px){.menu-demo-grid{font-size:.9em}.recipe-demo-nutrition-grid{grid-template-columns:repeat(2,1fr);gap:8px}}@media(hover:none)and (pointer:coarse){.menu-demo-autofill-btn,.shopping-demo-share-btn,.shopping-demo-checkbox,.fridge-demo-ingredient-tag{min-width:44px;min-height:44px}.menu-demo-meal-card,.menu-demo-meal-empty{min-height:44px}.menu-demo-meal-card:active,.shopping-demo-checkbox:active,.fridge-demo-ingredient-tag:active,.fridge-demo-recipe-card:active{opacity:.7;transform:scale(.98)}.menu-demo-autofill-btn:active,.shopping-demo-share-btn:active{opacity:.7}}#landing-page a{text-decoration:none!important}#landing-page .logo-link,#landing-page nav a,#landing-page .cta-button,#landing-page button a,#landing-page .pricing-button{text-decoration:none!important}#landing-page .telegram-button,#landing-page a[href*="t.me"]{background-color:#5b9bd5!important}#landing-page .telegram-button:hover,#landing-page a[href*="t.me"]:hover{background-color:#4a8ac4!important}#landing-page .vk-button,#landing-page a[href*="vk.com"]{background-color:#4a90e2!important}#landing-page .vk-button:hover,#landing-page a[href*="vk.com"]:hover{background-color:#3980d1!important}#landing-page footer .telegram-button,#landing-page footer a[href*="t.me"]{background-color:#5b9bd5!important}#landing-page footer .vk-button,#landing-page footer a[href*="vk.com"]{background-color:#4a90e2!important}#landing-page .faq-btn,#landing-page .faq-button{border:1px solid #e0e0e0!important;border-radius:8px!important;background-clip:padding-box!important}#landing-page .faq-answer,#landing-page .faq-content{padding-top:12px!important}#landing-page footer a{color:inherit!important;text-decoration:none!important}#landing-page footer a:hover{text-decoration:underline!important}.legal-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:1rem}.legal-modal--open{display:flex;animation:fadeIn .3s ease-out}.legal-modal--closing{animation:fadeOut .2s ease-in}.legal-modal-overlay{position:absolute;inset:0;background-color:#00000080;cursor:pointer}.legal-modal-content{position:relative;background-color:#fff;border-radius:8px;box-shadow:0 10px 25px #0003;max-width:800px;width:100%;max-height:80vh;display:flex;flex-direction:column;z-index:1}.legal-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e5e7eb;flex-shrink:0}.legal-modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#111827}.legal-modal-close{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;background:none;border:none;border-radius:4px;cursor:pointer;color:#374151;transition:background-color .15s,color .15s}.legal-modal-close:hover{background-color:#f3f4f6;color:#111827}.legal-modal-close:focus{outline:2px solid #3b82f6;outline-offset:2px}.legal-modal-close svg{width:1.25rem;height:1.25rem}.legal-modal-body{padding:1.5rem;overflow-y:auto;flex:1;min-height:0;scroll-behavior:smooth}.legal-modal-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center}.legal-modal-loading .spinner{width:2.5rem;height:2.5rem;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}.legal-modal-loading p{color:#6b7280;font-size:.875rem}.legal-modal-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center}.legal-modal-error svg{width:3rem;height:3rem;color:#ef4444;margin-bottom:1rem}.legal-modal-error .error-message{color:#111827;font-size:1rem;margin-bottom:1.5rem}.legal-modal-error button{padding:.5rem 1rem;background-color:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .15s}.legal-modal-error button:hover{background-color:#2563eb}.legal-modal-error button:focus{outline:2px solid #3b82f6;outline-offset:2px}.legal-modal-document{color:#374151;line-height:1.6}.legal-modal-document h1,.legal-modal-document h2,.legal-modal-document h3{color:#111827;margin-top:1.5rem;margin-bottom:.75rem;font-weight:600}.legal-modal-document h1{font-size:1.875rem}.legal-modal-document h2{font-size:1.5rem}.legal-modal-document h3{font-size:1.25rem}.legal-modal-document p{margin-bottom:1rem}.legal-modal-document ul,.legal-modal-document ol{margin-bottom:1rem;padding-left:1.5rem}.legal-modal-document li{margin-bottom:.5rem}.legal-modal-document a{color:#3b82f6;text-decoration:underline}.legal-modal-document a:hover{color:#2563eb}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.legal-modal{padding:.5rem}.legal-modal-content{max-width:none;width:90%;max-height:90vh}.legal-modal-header{padding:1rem}.legal-modal-header h2{font-size:1.25rem}.legal-modal-body{padding:1rem}.legal-modal-document h1{font-size:1.5rem}.legal-modal-document h2{font-size:1.25rem}.legal-modal-document h3{font-size:1.125rem}}body.modal-open{overflow:hidden}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stagger-item{animation:fadeInUp .2s ease-out forwards;opacity:0}.stagger-item:nth-child(1){animation-delay:0ms}.stagger-item:nth-child(2){animation-delay:30ms}.stagger-item:nth-child(3){animation-delay:60ms}.stagger-item:nth-child(4){animation-delay:90ms}.stagger-item:nth-child(5){animation-delay:.12s}.stagger-item:nth-child(6){animation-delay:.15s}.stagger-item:nth-child(7){animation-delay:.18s}.stagger-item:nth-child(8){animation-delay:.21s}@media(prefers-reduced-motion:reduce){.stagger-item{animation:none;opacity:1;transform:none}}.stagger-hidden{opacity:0}@font-face{font-family:Merriweather;font-style:normal;font-weight:300;font-display:swap;src:url(/assets/merriweather-cyrillic-ext-300-C93DEYlH.woff2) format("woff2")}@font-face{font-family:Merriweather;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/merriweather-cyrillic-ext-400-C1tWQprx.woff2) format("woff2")}@font-face{font-family:Merriweather;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/merriweather-cyrillic-ext-700-CPgGJn6k.woff2) format("woff2")}@font-face{font-family:Merriweather;font-style:normal;font-weight:900;font-display:swap;src:url(/assets/merriweather-cyrillic-ext-900-D7bEG9jD.woff2) format("woff2")}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}:root{--app-height: 100vh;--vk-safe-area-inset-top: 0px;--vk-safe-area-inset-bottom: 0px;--vk-safe-area-inset-left: 0px;--vk-safe-area-inset-right: 0px;--vk-viewport-width: 100vw;--vk-viewport-height: 100vh;--vk-appearance: light;--tg-header-padding: 0px;--tg-safe-area-inset-top: 0px;--tg-safe-area-inset-bottom: 0px;--tg-safe-area-inset-left: 0px;--tg-safe-area-inset-right: 0px;--tg-content-safe-area-inset-top: 0px;--tg-content-safe-area-inset-bottom: 0px;--app-safe-area-inset-top: max(var(--tg-safe-area-inset-top, 0px), var(--vk-safe-area-inset-top, 0px), env(safe-area-inset-top, 0px));--app-safe-area-inset-bottom: max(var(--tg-safe-area-inset-bottom, 0px), var(--vk-safe-area-inset-bottom, 0px), env(safe-area-inset-bottom, 0px));--app-safe-area-inset-left: max(var(--tg-safe-area-inset-left, 0px), var(--vk-safe-area-inset-left, 0px), env(safe-area-inset-left, 0px));--app-safe-area-inset-right: max(var(--tg-safe-area-inset-right, 0px), var(--vk-safe-area-inset-right, 0px), env(safe-area-inset-right, 0px));--app-content-safe-area-inset-top: max(var(--tg-content-safe-area-inset-top, 0px), var(--app-safe-area-inset-top));--app-content-safe-area-inset-bottom: max(var(--tg-content-safe-area-inset-bottom, 0px), var(--app-safe-area-inset-bottom));--app-viewport-height: var(--tg-viewport-stable-height, var(--tg-viewport-height, var(--vk-viewport-height, var(--app-height, 100dvh))));--app-bottom-nav-height: 68px;--app-bottom-nav-elevated-overlap: 32px;--app-bottom-nav-content-gap: 20px;--app-bottom-nav-total-height: calc(var(--app-bottom-nav-height) + var(--app-safe-area-inset-bottom));--app-content-bottom-padding: calc(var(--app-bottom-nav-height) + var(--app-bottom-nav-elevated-overlap) + var(--app-bottom-nav-content-gap) + var(--app-safe-area-inset-bottom));--app-fab-bottom: calc(var(--app-bottom-nav-height) + var(--app-safe-area-inset-bottom) + 22px);--color-primary: #8AA79C;--color-secondary: #DDB89A;--color-text-main: #3D4945;--color-text-muted: #9AA6A1;--color-bg-main: #F3EFE7;--color-bg-card: #F9F7F2;--color-bg-sage: #EAEBE6;--color-bg-peach: #F5ECE5;--color-dashed-border: #D2CDC0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;min-height:100dvh;margin:0;padding:0;overscroll-behavior:none;overflow-x:hidden;background-color:transparent!important}html{overscroll-behavior:none;overflow-x:hidden;height:100%}#root{height:100%;overflow:visible;overscroll-behavior:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.skip-link{position:absolute;top:-40px;left:0;z-index:1000;padding:7px 14px;background-color:#8aa79c;color:#fff5eb;text-decoration:none;border-radius:0 0 4px;font-weight:600;transition:top .2s ease-out}.skip-link:focus{top:0;outline:2px solid #FFFFFF;outline-offset:2px}.bottom-navigation{padding-bottom:max(8px,env(safe-area-inset-bottom))}@supports (-webkit-touch-callout: none){.MuiDialog-container{align-items:flex-start!important}.MuiDialog-paper{max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 32px)!important;margin-top:calc(env(safe-area-inset-top,0px) + 60px)!important;margin-left:16px!important;margin-right:16px!important}}.app-shell{background-image:url(/textures/paper-noise-128.png)!important;background-repeat:repeat!important;background-size:128px 128px!important}
