:root{--primary-50:#fff3e0;--primary-100:#ffe0b2;--primary-200:#ffcc80;--primary-300:#ffb74d;--primary-400:#ffa726;--primary-500:#ff9800;--primary-600:#fb8c00;--primary-700:#f57c00;--primary-800:#ef6c00;--primary-900:#e65100;--neutral-50:#fafafa;--neutral-100:#f5f5f5;--neutral-200:#e5e5e5;--neutral-300:#d4d4d4;--neutral-400:#a3a3a3;--neutral-500:#737373;--neutral-600:#525252;--neutral-700:#404040;--neutral-800:#262626;--neutral-900:#171717;--success-500:#10b981;--warning-500:#f59e0b;--danger-500:#ef4444;--info-500:#3b82f6;--danger-100:#fee2e2;--danger-200:#fecaca;--danger-800:#991b1b;--success-100:#dcfce7;--success-200:#bbf7d0;--success-800:#166534;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--font-heading:"Inter",-apple-system,blinkmacsystemfont,sans-serif;--font-body:"Inter",-apple-system,blinkmacsystemfont,sans-serif;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--primary-color:var(--neutral-50);--secondary-color:#fff;--accent-color:var(--primary-500);--text-color:var(--neutral-900);--background-color:var(--neutral-50);--heading-font:var(--font-heading);--body-font:var(--font-body);--background:#fff;--foreground:#171717;--primary-green:#52c55a;--primary-orange:var(--primary-500);--hover-green:#47b854}*,:before,:after{box-sizing:border-box}*{margin:0}body{background-color:var(--background-color);color:var(--text-color);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"kern" 1;margin:0;line-height:1.6}html,body{max-width:100vw;overflow-x:hidden}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.2}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}html{scroll-behavior:smooth}button{cursor:pointer;background:0 0;border:none;padding:0}ul,ol{padding:0;list-style:none}@media (prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}.landing-page{color:var(--neutral-800);font-family:var(--font-body);background-color:#fff}.container{max-width:1200px;padding:0 var(--space-8);margin:0 auto}.hero{padding:var(--space-20)0;text-align:center}.hero-content{align-items:center;gap:var(--space-12);flex-direction:column;display:flex}.hero-text h1{font-size:var(--text-4xl);margin-bottom:var(--space-4);max-width:20ch;margin-left:auto;margin-right:auto;font-weight:700;line-height:1.1}.hero-text p{margin:0 auto var(--space-8);color:var(--neutral-600);font-size:var(--text-lg);max-width:65ch}.hero-buttons{justify-content:center;gap:var(--space-4);display:flex}.hero-image{border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-lg);max-width:600px;overflow:hidden}.features{padding:var(--space-20)0;background-color:var(--neutral-50)}.features h2{font-size:var(--text-3xl);text-align:center;margin-bottom:var(--space-12)}.features-grid{gap:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.feature-card{padding:var(--space-8);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-md);background:#fff}.feature-icon{width:72px;height:72px;margin:0 auto var(--space-4);background-color:var(--primary-100);border-radius:50%;justify-content:center;align-items:center;display:flex}.feature-card h3{font-size:var(--text-xl);margin-bottom:var(--space-2)}.feature-card p{color:var(--neutral-600)}.how-it-works{padding:var(--space-20)0}.how-it-works h2{font-size:var(--text-3xl);text-align:center;margin-bottom:var(--space-12)}.steps{justify-content:space-between;gap:var(--space-8);display:flex}.step{text-align:center;max-width:350px}.step-number{width:60px;height:60px;margin:0 auto var(--space-6);border:2px solid var(--primary-500);color:var(--primary-500);font-size:var(--text-2xl);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex}.step-content h3{font-size:var(--text-xl);margin-bottom:var(--space-2)}.step-content p{color:var(--neutral-600)}.cta{padding:var(--space-20)0;background-color:var(--primary-600);color:#fff;text-align:center}.cta-content h2{font-size:var(--text-3xl);margin-bottom:var(--space-4)}.cta-content p{font-size:var(--text-lg);opacity:.9;margin-bottom:var(--space-8)}.landing-footer{padding:var(--space-16)0;background-color:var(--neutral-900);color:var(--neutral-300)}.footer-content{justify-content:space-between;gap:var(--space-12);margin-bottom:var(--space-12);display:flex}.footer-section h4{color:#fff;font-size:var(--text-lg);margin-bottom:var(--space-4)}.footer-section p,.footer-section li{font-size:var(--text-sm);margin-bottom:var(--space-2)}.footer-section ul{padding:0;list-style:none}.footer-bottom{font-size:var(--text-sm);text-align:center;border-top:1px solid var(--neutral-700);padding-top:var(--space-8)}.btn-primary,.btn-secondary{padding:var(--space-3)var(--space-6);border-radius:var(--radius-md);font-weight:500;transition:all .2s ease-in-out;display:inline-block}.btn-primary{background-color:var(--primary-500);color:#fff}.btn-primary:hover{background-color:var(--primary-600);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-secondary{background-color:var(--neutral-200);color:var(--neutral-800)}.btn-secondary:hover{background-color:var(--neutral-300);box-shadow:var(--shadow-md);transform:translateY(-2px)}.allergen-buttons-container,.allergen-display-scroll-container{scrollbar-width:thin;scrollbar-color:var(--neutral-300)transparent;padding:8px 0;display:flex;overflow-x:auto}.allergen-buttons-container::-webkit-scrollbar{height:8px}.allergen-display-scroll-container::-webkit-scrollbar{height:8px}.allergen-buttons-container::-webkit-scrollbar-track{background:0 0}.allergen-display-scroll-container::-webkit-scrollbar-track{background:0 0}.allergen-buttons-container::-webkit-scrollbar-thumb{background-color:var(--neutral-300);background-clip:content-box;border:3px solid transparent;border-radius:10px}.allergen-display-scroll-container::-webkit-scrollbar-thumb{background-color:var(--neutral-300);background-clip:content-box;border:3px solid transparent;border-radius:10px}.allergen-manager .allergen-button{flex-shrink:0;background-color:var(--neutral-100)!important;border:1px solid var(--neutral-300)!important;border-radius:var(--radius-md)!important;color:var(--neutral-800)!important;cursor:pointer!important;outline:none!important;margin-right:8px!important;padding:8px 16px!important;font-weight:500!important;transition:all .2s!important}.allergen-manager .allergen-button:focus-visible{box-shadow:0 0 0 3px var(--primary-200)!important}.allergen-manager .allergen-button-danger:focus-visible{box-shadow:0 0 0 3px var(--danger-200)!important}.allergen-manager .allergen-button-safe:focus-visible{box-shadow:0 0 0 3px var(--success-200)!important}.allergen-manager .allergen-button-danger:not(.allergen-button-selected):hover{background-color:var(--danger-100)!important;border-color:var(--danger-200)!important;color:var(--danger-800)!important}.allergen-manager .allergen-button-safe:not(.allergen-button-selected):hover{background-color:var(--success-100)!important;border-color:var(--success-200)!important;color:var(--success-800)!important}.allergen-manager .allergen-button-danger.allergen-button-selected{background-color:var(--danger-500)!important;border-color:var(--danger-500)!important;color:#fff!important}.allergen-manager .allergen-button-safe.allergen-button-selected{background-color:var(--success-500)!important;border-color:var(--success-500)!important;color:#fff!important}@media (max-width:768px){.hero-content{flex-direction:column-reverse}.steps{flex-direction:column;align-items:center}.footer-content{text-align:center;flex-direction:column}.container{padding:0 var(--space-4)}.hero,.features,.how-it-works,.cta{padding:var(--space-12)0}.hero-text h1{font-size:var(--text-3xl)}}
