@import "https://fonts.googleapis.com/css2?family=Inter:opsz,wght@14..32,300;14..32,400;14..32,500;14..32,600;14..32,700&family=Playfair+Display:wght@400;500;600;700;800&display=swap";*{box-sizing:border-box;margin:0;padding:0}:root{--color-primary:#c85a54;--color-primary-dark:#d35400;--color-star:#d4a574;--color-star-light:#f0dfc7;--color-secondary:#2c2825;--color-background:#faf8f5;--color-card:#fff;--color-text:#8b7e6e;--color-border:#e8dfd4;--color-dark-accent:#7c6f5b;--color-dark-accent-transparent:#7c6f5b1a;--font-heading:"Playfair Display", Georgia, "Times New Roman", serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-hero:3rem;--text-hero-mobile:2rem;--text-title:1.5rem;--text-body:1rem;--text-small:.875rem;--text-caption:.75rem;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-loose:1.6;--spacing-xxs:.125rem;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--radius-sm:12px;--radius-md:16px;--radius-lg:20px;--radius-xl:28px;--shadow-sm:0 2px 8px #0000000d;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 8px 24px #0000001a;--container-max-width:1200px;--container-padding:var(--spacing-lg)}body{font-family:var(--font-body);background-color:var(--color-background);color:var(--color-text);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,.heading{font-family:var(--font-heading);font-weight:600;line-height:var(--line-height-tight);color:var(--color-secondary)}h1{font-size:var(--text-hero);letter-spacing:-.02em;font-weight:700}h2{font-size:2rem;font-weight:600}h3{font-size:1.25rem;font-weight:500}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}@media (width<=768px){:root{--text-hero:var(--text-hero-mobile);--container-padding:var(--spacing-md)}h1{font-size:var(--text-hero-mobile)}h2{font-size:1.5rem}}#root{flex-direction:column;min-height:100vh;display:flex}#root>*{width:100%}.recipe-card{background:var(--color-card);border-radius:var(--radius-md);border:1px solid var(--color-border);width:100%;max-width:300px;box-shadow:var(--shadow-sm);font-family:var(--font-body);overflow:hidden}.card-header{aspect-ratio:3/2;width:100%;position:relative}.card-image{object-fit:cover;width:100%;height:100%;display:block}.category-badge{top:var(--spacing-md);left:var(--spacing-md);background:var(--color-card);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);font-size:var(--text-small);color:var(--color-text);box-shadow:var(--shadow-sm);position:absolute}.favorite-circle{top:var(--spacing-md);right:var(--spacing-md);background:var(--color-card);cursor:pointer;width:40px;height:40px;color:var(--color-text);box-shadow:var(--shadow-sm);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;padding:0!important}.favorite-circle svg{width:20px!important;height:20px!important}.card-body{padding:var(--spacing-lg)}.card-body h2{margin:0 0 var(--spacing-sm) 0;font-size:var(--text-title);font-family:var(--font-heading);color:var(--color-secondary)}.recipe-desc{color:var(--color-text);font-size:var(--font-body);line-height:var(--line-height-normal);margin-bottom:var(--spacing-md)}.rating-row{align-items:center;gap:8px;margin-bottom:24px;display:flex}.card-footer{justify-content:space-between;align-items:center;display:flex}.meta-info{gap:var(--spacing-md);display:flex}.icon-text{align-items:center;gap:var(--spacing-sm);font-size:var(--text-small);color:var(--color-text);display:flex}.icon-text svg{color:var(--color-text)}.difficulty-tag{background:var(--color-background);color:var(--color-text);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--text-small)}.star-rating{align-items:center;gap:8px;display:flex}.stars-list{gap:var(--spacing-xs);display:flex}.star-clickable{cursor:pointer;transition:transform .1s}.star-clickable:hover{transform:scale(1.2)}.rating-number{color:var(--color-text);font-size:var(--text-small);font-weight:500}.hero{justify-content:center;align-items:center;gap:var(--spacing-3xl);background-color:var(--color-background);padding:var(--spacing-3xl);flex-direction:row;display:flex}.hero-text{flex-direction:column;align-self:center;max-width:50%;display:flex}.featured-recipes{margin-bottom:var(--spacing-md)}.header-h1{font-family:var(--font-heading);margin-bottom:var(--spacing-xl);max-width:500px}.header-icons{gap:var(--spacing-md);flex-direction:row;display:flex}.category-icon,.servings-icon{align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);font-size:var(--text-small);flex-direction:row;display:flex}.rating{align-items:center;gap:8px;margin-bottom:24px;display:flex}.view-recipe-btn{background-color:var(--color-dark-accent);color:var(--color-background);border-radius:var(--radius-xl);font-family:var(--font-body);cursor:pointer;border-style:none;align-self:flex-start;align-items:center;padding:1rem 2rem;display:flex}.view-recipe-btn span{font-size:var(--text-body);margin-left:var(--spacing-sm);display:flex}.hero-img{object-fit:cover;border-radius:var(--radius-lg);width:400px;height:500px;box-shadow:var(--shadow-lg)}.search-function{background-color:var(--color-card);border:1px solid var(--color-border);flex-direction:row;justify-content:center;display:flex}.searchbar{background-color:var(--color-card);width:100%;max-width:60%;padding:var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--color-border);margin:var(--spacing-2xl);align-items:center;display:flex}.searchbar input{background-color:var(--color-card);width:100%;font-family:var(--text-body);margin-left:var(--spacing-sm);border-style:none;outline:none}.search-icon{cursor:pointer;flex-direction:row;align-items:center;display:flex}.category-btn{background-color:var(--color-card);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-xl);border-style:none;border:1px solid var(--color-border);box-shadow:var(--shadow-sm);font-family:var(--font-body);color:var(--color-text);cursor:pointer}.category-btns{justify-content:center;gap:var(--radius-xl);margin:var(--spacing-2xl) auto;flex-direction:row;display:flex}.category-btn.active{background-color:var(--color-dark-accent);color:var(--color-card)}.recipe-list-header{max-width:1350px;margin:0 auto;margin-bottom:var(--spacing-xl);margin-top:var(--spacing-3xl);padding:0 var(--spacing-xl);flex-direction:row;justify-content:space-between;align-items:center;display:flex}.recipe-cards{justify-content:center;gap:var(--spacing-lg);max-width:1300px;margin:0 auto;margin-bottom:var(--spacing-2xl);flex-flow:wrap;display:flex}.recipe-cards .recipe-card{width:340px;margin:0}.show-more-btn{padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-xl);background-color:var(--color-dark-accent);color:var(--color-background);cursor:pointer;border:none;justify-self:center;display:flex}.show-more-wrapper{margin-bottom:var(--spacing-2xl);justify-content:center;display:flex}@media (width<=900px){.recipe-cards .recipe-card{width:calc(50% - var(--spacing-lg))}}@media (width<=768px){.hero{padding:var(--spacing-xl);overflow:hidden}.hero-img{width:100%;max-width:100%;height:350px}.searchbar{margin:var(--spacing-xl);max-width:80%}.category-btns{gap:var(--spacing-sm);margin:var(--spacing-lg) auto;padding:0 var(--spacing-md);box-sizing:border-box;flex-wrap:wrap;width:100%}.recipe-list-header{padding:0 var(--spacing-lg)}}@media (width<=650px){.recipe-cards{gap:var(--spacing-md)}}@media (width<=480px){.hero{padding:var(--spacing-sm);flex-direction:column}.hero-img{object-fit:cover;width:100%;height:400px;margin-bottom:var(--spacing-3xl);align-self:center}.hero-text{max-width:100%;margin-left:var(--spacing-md);align-self:flex-start;align-items:flex-start}.featured-recipes{margin-top:var(--spacing-2xl)}.searchbar{max-width:90%;margin:var(--spacing-2xl) var(--spacing-sm)}.category-btns{margin:var(--spacing-xl) auto;padding:0 var(--spacing-md)}.recipe-cards .recipe-card{width:100%}}@media (width<=375px){.recipe-list-header{padding:0 var(--spacing-sm);max-width:100%}.recipe-cards{padding:var(--spacing-sm)}}.recipe-detail-page{max-width:900px;padding:var(--spacing-xl);margin:0 auto}.back-button{align-items:center;gap:var(--spacing-xs);cursor:pointer;color:var(--color-text);font-size:var(--text-body);margin-bottom:var(--spacing-lg);background:0 0;border:none;display:flex}.recipe-hero{gap:var(--spacing-lg);align-items:flex-end;display:flex}.hero-img-wrapper{position:relative}.hero-img-wrapper img{object-fit:cover;border-radius:var(--radius-md);width:400px;height:500px;box-shadow:var(--shadow-lg);max-width:none}.hero-info{gap:var(--spacing-md);flex-direction:column;width:100%;min-width:400px;display:flex}.hero-info h1{font-size:var(--text-hero);color:var(--color-secondary)}.hero-info .category-badge{background-color:var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--text-small);color:var(--color-secondary);box-shadow:none;align-self:flex-start;display:inline-block;position:static}.info-card{gap:var(--spacing-sm);padding:var(--spacing-lg);background-color:var(--color-border);border-radius:var(--radius-sm);grid-template-columns:1fr 1fr;display:grid}.info-item{flex-direction:column;display:flex}.info-item span{gap:var(--spacing-sm);font-size:var(--text-caption);color:var(--color-text);display:flex}.info-item p{font-size:var(--text-title);margin-top:var(--spacing-xs);color:var(--color-secondary);font-weight:500;font-family:var(--font-heading)}.action-buttons-wrapper{position:relative}.action-buttons{gap:var(--spacing-md);display:flex}.action-buttons button{height:3rem;font-size:var(--text-small);border-radius:var(--radius-xl);padding:var(--spacing-sm);cursor:pointer;border:none;flex:1}.save-button{background-color:var(--color-background);color:var(--color-secondary);border:3px solid var(--color-border)!important}.print-button{background-color:var(--color-dark-accent);color:var(--color-card)}.share-wrapper{flex:1;position:relative}.share-button{align-items:center;gap:var(--spacing-xs);background-color:var(--color-background);width:100%;color:var(--color-secondary);justify-content:center;display:flex;border:3px solid var(--color-border)!important}.share-button:hover,.share-button-active{background-color:var(--color-border)}.share-dropdown{background-color:var(--color-background);border-radius:var(--radius-md);min-width:180px;box-shadow:var(--shadow-md);z-index:10;flex-direction:column;display:flex;position:absolute;top:calc(100% + .5rem);left:50%;overflow:hidden;transform:translate(-50%)}.share-dropdown button{justify-content:center;align-items:center;gap:var(--spacing-xs);background-color:var(--color-background);padding:var(--spacing-md) var(--spacing-lg);text-align:center;cursor:pointer;color:var(--color-secondary);font-size:var(--text-small);border-radius:0;width:100%;display:flex}.share-dropdown button:hover{background-color:var(--color-border)!important}.recipe-content{gap:var(--spacing-xl);margin-top:var(--spacing-xl);align-items:flex-start;display:flex}.ingredient-list,.instructions-list{border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md) var(--spacing-xl) var(--spacing-xl) var(--spacing-xl)}.ingredient-list{flex:1}.instructions-list{flex:2}.ingredient-list h2,.instructions-list h2{margin-bottom:var(--spacing-md)}.instructions-list ol{gap:var(--spacing-md);flex-direction:column;padding:0;list-style:none;display:flex}.instructions-list li{align-items:flex-start;gap:var(--spacing-md);counter-increment:step-counter;display:flex}.instructions-list li:before{content:counter(step-counter);background-color:var(--color-dark-accent);color:#fff;min-width:2rem;height:2rem;font-size:var(--text-small);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.instructions-list ol{counter-reset:step-counter}.more-recipes{background-color:var(--color-border);padding:var(--spacing-xl) 0;margin-top:var(--spacing-xl)}.more-recipes-content{max-width:var(--container-max-width);padding:0 var(--spacing-xl);margin:0 auto}.more-recipes-content>h2{margin-bottom:var(--spacing-lg);text-align:center}.more-recipes-grid{gap:var(--spacing-xl);display:flex}.more-recipes-grid>*{flex:1;max-width:none}.not-found{justify-content:center;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-3xl);flex-direction:column;display:flex}.not-found-button{height:3rem;padding:0 var(--spacing-xl);font-size:var(--text-body);border-radius:var(--radius-xl);border:3px solid var(--color-border);background-color:var(--color-background);color:var(--color-secondary);cursor:pointer}.not-found-button:hover{background-color:var(--color-border)}.loading{justify-content:center;align-items:center;height:50vh;display:flex}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner{color:var(--color-dark-accent);animation:1s linear infinite spin}@media (width<=900px){.recipe-hero{padding:var(--spacing-md);flex-direction:column;align-items:stretch}.hero-img-wrapper img{width:100%;max-width:100%;height:400px}.hero-info{min-width:unset;width:100%}.more-recipes-grid{padding:0 var(--spacing-md) var(--spacing-sm) var(--spacing-md);gap:var(--spacing-md);-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.more-recipes-grid>*{flex:0 0 300px;max-width:none}.more-recipes-content{padding:0}}@media (width<=768px){.hero-info{min-width:unset;width:100%}.hero-img-wrapper{width:100%}.hero-img-wrapper img{width:100%;height:350px}.recipe-content{flex-direction:column}.ingredient-list,.instructions-list{width:100%}}@media (width<=480px){.recipe-detail-page{padding:var(--spacing-md);width:100%}.hero-img-wrapper img{height:250px}.hero-info{width:100%}.hero-info h1{font-size:var(--text-hero-mobile)}.info-card{padding:var(--spacing-md);width:100%}.action-buttons-wrapper,.action-buttons{width:100%}.recipe-content{flex-direction:column}.ingredient-list,.instructions-list{width:100%}.ingredient-list ul{padding-left:var(--spacing-md)}.instructions-list{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md) var(--spacing-md)}.instructions-list li:before{min-width:1.5rem;height:1.5rem;font-size:var(--text-caption)}}@media (width<=375px){.recipe-hero{padding:var(--spacing-xs)}.more-recipes-grid{padding:0 var(--spacing-xs) var(--spacing-xs) var(--spacing-xs);gap:var(--spacing-xs)}}@media (width<=320px){.info-item p{font-size:var(--text-body)}.more-recipes-grid{gap:var(--spacing-xxs)}}.favourites-page{background-color:var(--color-background);min-height:100vh}.favourites-header{padding:var(--spacing-3xl) var(--spacing-3xl) var(--spacing-2xl);text-align:center;background-color:var(--color-background);border-bottom:1px solid var(--color-border);flex-direction:column;justify-content:center;align-items:center;display:flex}.favourites-icon{margin-bottom:var(--spacing-lg);background-color:var(--color-card);border:1px solid var(--color-border);border-radius:50%;place-items:center;width:5.5rem;height:5.5rem;display:grid}.favourites-icon svg{width:2rem;height:2rem}.favourites-header h1{font-family:var(--font-heading);font-size:var(--text-hero);color:var(--color-secondary);margin-bottom:var(--spacing-sm);margin-top:0}.favourites-subtitle{font-family:var(--font-body);font-size:var(--text-body);color:var(--color-text);max-width:600px;line-height:var(--line-height-normal);margin:0}.favourites-container{max-width:1350px;padding:var(--spacing-3xl) var(--spacing-xl);margin:0 auto}.favourites-count{font-family:var(--font-body);font-size:var(--text-small);color:var(--color-text);margin:0 0 var(--spacing-2xl) 0;text-transform:capitalize}.favourites-grid{justify-content:center;gap:var(--spacing-lg);max-width:1350px;margin:0 auto;margin-bottom:var(--spacing-2xl);flex-flow:wrap;display:flex}.favourites-grid .recipe-card{width:340px;margin:0}.no-favorites{padding:var(--spacing-3xl) var(--spacing-2xl);text-align:center;background-color:var(--color-card);border-radius:var(--radius-md);flex-direction:column;justify-content:center;align-items:center;min-height:300px;display:flex}.no-favorites p{font-family:var(--font-body);font-size:var(--text-body);color:var(--color-text);margin:var(--spacing-sm) 0}.no-favorites p:first-child{color:var(--color-secondary);font-weight:600}@media (width<=768px){.favourites-header{padding:var(--spacing-2xl) var(--spacing-lg) var(--spacing-xl)}.favourites-header h1{font-size:var(--text-hero-mobile)}.favourites-container{padding:var(--spacing-xl) var(--spacing-lg)}.favourites-grid{gap:var(--spacing-xl);grid-template-columns:1fr}.no-favorites{min-height:250px;padding:var(--spacing-2xl) var(--spacing-lg)}}.login-container{padding:var(--spacing-3xl) var(--spacing-lg);max-width:450px;margin:var(--spacing-3xl) auto;background-color:var(--color-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.login-title{margin-bottom:var(--spacing-xl);text-align:center}.login-form{gap:var(--spacing-md);flex-direction:column;display:flex}.login-input{padding:var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--color-border);font-family:var(--font-body);font-size:var(--text-body)}.login-button{padding:var(--spacing-md);background-color:var(--color-dark-accent);color:#fff;border-radius:var(--radiussm);font-family:var(--font-body);cursor:pointer;font-weight:600;font-size:var(--text-body);border:none}.login-error{color:#d9534f;text-align:center;margin:0;font-size:.85rem}.profile-container{padding:var(--spacing-xl);max-width:var(--container-max-width);margin:0 auto}.profile-header{margin-bottom:var(--spacing-xl);justify-content:space-between;align-items:center;display:flex}.profile-card{background-color:var(--color-card);padding:var(--spacing-xl);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:40px}.recipe-form{flex-direction:column;gap:15px;display:flex}.recipe-form-grid{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px;display:grid}.ingredients-container,.instructions-container{flex-direction:column;gap:8px;display:flex}.ingredients-container label,.instructions-container label{color:var(--color-text);font-size:.9rem;font-weight:600}.recipe-input,.recipe-textarea{border-radius:var(--radius-sm);border:1px solid var(--color-border);font-family:var(--font-body);font-size:var(--text-body);box-sizing:border-box;padding:10px}.recipe-textarea{resize:none;min-height:150px}.add.ingredient-line{border:1px dashed var(--color-primary);color:var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;background-color:#0000;margin-top:5px;padding:8px;font-weight:600;transition:background .2s}.add-ingredient-line:hover{background-color:#0000000d}.add-recipe-button{background-color:var(--color-secondary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;margin-top:10px;padding:12px;font-weight:600}.cancel-button{color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;background-color:#0000;padding:10px;font-size:.9rem}.my-recipes-list{gap:15px;display:grid}.recipe-card-mini{background-color:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:15px}.recipe-card-actions{border-top:1px solid var(--color-border);gap:15px;margin-top:15px;padding-top:10px;display:flex}.edit-button{color:var(--color-primary);cursor:pointer;background:0 0;border:none;font-size:.85rem;font-weight:600}.delete-button{color:#d9534f;cursor:pointer;background:0 0;border:none;font-size:.85rem}@media (width<=768px){.recipe-form-grid{grid-template-columns:1fr}}.about-page{background-color:var(--color-background)}.about-hero{text-align:center;padding:var(--spacing-3xl) var(--spacing-lg);max-width:700px;margin:0 auto}.about-label{font-size:var(--text-caption);font-family:var(--font-body);letter-spacing:.12em;color:var(--color-text);margin-bottom:var(--spacing-md)}.about-title{font-family:var(--font-heading);font-size:var(--text-hero);color:var(--color-secondary);font-weight:700;line-height:var(--line-height-tight);margin-bottom:var(--spacing-lg)}.about-subtitle{font-size:var(--text-body);color:var(--color-text);line-height:var(--line-height-loose);max-width:560px;margin:0 auto}.about-story-wrapper{padding:var(--spacing-3xl) var(--spacing-lg);justify-content:center;display:flex}.about-story{border-radius:var(--radius-lg);padding:var(--spacing-3xl);text-align:center;width:100%;max-width:700px;box-shadow:var(--shadow-sm);background-color:#fff}.about-story h2{font-family:var(--font-heading);color:var(--color-secondary);margin-bottom:var(--spacing-xl);font-size:2rem}.about-story p{font-size:var(--text-body);color:var(--color-text);line-height:var(--line-height-loose);margin-bottom:var(--spacing-lg)}.about-story p:last-child{margin-bottom:0}.about-values{padding:var(--spacing-3xl) var(--spacing-lg);background-color:var(--color-background)}.about-values-title{font-family:var(--font-heading);color:var(--color-secondary);text-align:center;margin-bottom:var(--spacing-2xl);font-size:2rem}.about-values-grid{gap:var(--spacing-lg);max-width:var(--container-max-width);grid-template-columns:repeat(4,1fr);margin:0 auto;display:grid}.value-card{border-radius:var(--radius-md);padding:var(--spacing-xl);text-align:center;box-shadow:var(--shadow-sm);background-color:#fff;transition:box-shadow .2s,transform .2s}.value-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.value-icon{background-color:var(--color-card);width:56px;height:56px;margin:0 auto var(--spacing-lg);color:var(--color-dark-accent);border-radius:50%;justify-content:center;align-items:center;display:flex}.value-card h3{font-family:var(--font-heading);font-size:var(--text-body);color:var(--color-secondary);margin-bottom:var(--spacing-sm);font-weight:600}.value-card p{font-size:var(--text-small);color:var(--color-text);line-height:var(--line-height-loose)}.about-cta-wrapper{padding:var(--spacing-3xl) var(--spacing-lg);justify-content:center;display:flex}.about-cta{background-color:var(--color-dark-accent);border-radius:var(--radius-lg);padding:var(--spacing-3xl);text-align:center;width:100%;max-width:700px;box-shadow:var(--shadow-md)}.about-cta h2{font-family:var(--font-heading);font-size:var(--text-title);color:#fff;margin-bottom:var(--spacing-md);font-weight:700}.about-cta p{font-size:var(--text-body);color:#ffffffd9;line-height:var(--line-height-loose);margin-bottom:var(--spacing-xl)}.cta-button{color:var(--color-secondary);font-family:var(--font-body);font-size:var(--text-small);padding:var(--spacing-sm) var(--spacing-xl);border-radius:var(--radius-xl);background-color:#fff;font-weight:500;transition:background-color .2s,color .2s;display:inline-block}.cta-button:hover{background-color:var(--color-background);color:var(--color-secondary)}@media (width<=768px){.about-title{font-size:var(--text-hero-mobile)}.about-values-grid{grid-template-columns:repeat(2,1fr)}.about-story,.about-cta{padding:var(--spacing-xl)}}@media (width<=480px){.about-values-grid{grid-template-columns:1fr}}.search-results-page{background-color:var(--color-background);min-height:100vh}.search-results-header{padding:var(--spacing-3xl) var(--spacing-3xl) var(--spacing-2xl);text-align:center;background-color:var(--color-background);border-bottom:1px solid var(--color-border);flex-direction:column;justify-content:center;align-items:center;display:flex}.search-results-header h1{font-family:var(--font-heading);font-size:var(--text-hero);color:var(--color-secondary);margin-bottom:var(--spacing-sm);margin-top:0}.search-query{font-family:var(--font-body);font-size:var(--text-body);color:var(--color-text);max-width:600px;line-height:var(--line-height-normal);margin:0}.search-results-list-header{max-width:1350px;margin:0 auto;margin-bottom:var(--spacing-xl);margin-top:var(--spacing-3xl);padding:0 var(--spacing-xl);flex-direction:row;justify-content:space-between;align-items:center;display:flex}.results-count{font-family:var(--font-body);font-size:var(--text-small);color:var(--color-text);margin-bottom:var(--spacing-2xl);text-transform:capitalize}.search-results-grid{justify-content:center;gap:var(--spacing-lg);max-width:1350px;margin:0 auto;margin-bottom:var(--spacing-2xl);flex-flow:wrap;display:flex}.search-results-grid .recipe-card{width:340px;margin:0}.loading,.error{text-align:center;padding:var(--spacing-3xl)}.loading{color:var(--color-text-secondary);font-size:var(--text-lg)}.error h2{color:var(--color-error);margin-bottom:var(--spacing-md)}.error p{color:var(--color-text-secondary)}.no-results{text-align:center;padding:var(--spacing-3xl)}.no-results h2{font-family:var(--font-body);font-size:var(--text-body);color:var(--color-secondary);margin:var(--spacing-sm) 0}.no-results p{color:var(--color-text-secondary);max-width:400px;margin:0 auto;line-height:1.6}@media (width<=768px){.search-results-page{padding:var(--spacing-xl) var(--spacing-md)}.search-results-header h1{font-size:var(--text-2xl)}.search-results-grid{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (width<=480px){.search-results-page{padding:var(--spacing-lg) var(--spacing-sm)}.search-results-grid{gap:var(--spacing-md);grid-template-columns:1fr}}.header{background:var(--color-surface,white);z-index:10;border-bottom:1px solid var(--color-border);font-family:var(--font-body);position:relative}.header__container{max-width:var(--container-max-width);padding:1rem var(--spacing-3xl);justify-content:space-between;align-items:center;margin:0 auto;display:flex;position:relative}.header__logo{font-family:var(--font-heading);font-size:var(--text-title);color:var(--color-secondary);font-weight:600}.header__right{align-items:center;gap:2rem;display:flex}.header__nav{gap:2rem;display:flex}.header__burger{background:0 0;border:none;font-size:1.5rem;display:none}.header__nav a{align-items:center;gap:.5rem;display:inline-flex}.header__favorites-link{position:relative}.header__favorites-badge{color:#fff;background:#7c6f5b;border-radius:999px;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.header__search-icon{border:1px solid var(--color-border);border-radius:var(--radius,.5rem);cursor:pointer;background:0 0;padding:.5rem;transition:border-color .2s}.header__search-icon:hover{border-color:var(--color-dark-accent)}.header__search-dropdown{transform-origin:top;opacity:0;pointer-events:none;border-top:1px solid var(--color-border);border-bottom-left-radius:var(--radius,1rem);border-bottom-right-radius:var(--radius,1rem);z-index:20;background:#fff;width:100%;transition:transform .25s,opacity .25s;position:absolute;top:100%;left:0;right:0;overflow:hidden;transform:scaleY(0)}.header__search-dropdown--open{opacity:1;pointer-events:auto;transform:scaleY(1)}.header__search-dropdown-inner{max-width:var(--container-max-width);width:100%;padding:1.5rem var(--spacing-3xl);box-sizing:border-box;margin:0 auto}.header__search-form{align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.header__search-input{border:1px solid var(--color-border);border-radius:var(--radius,.5rem);font-size:1rem;font-family:var(--font-body);color:var(--color-text);background:#fff;outline:none;flex:1;padding:.75rem 1rem}.header__search-input:focus{border-color:var(--color-dark-accent)}.header__search-input::placeholder{color:var(--color-text);opacity:1}.header__categories{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.header__category{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius,.5rem);cursor:pointer;font-family:var(--font-body);color:var(--color-dark-accent);padding:.5rem 1rem;transition:background-color .2s}.header__category:hover{background:var(--color-background);color:var(--color-secondary)}.header__overlay{z-index:15;background:#0000001a;position:fixed;inset:0}@media (width<=768px){.header__container{padding:1rem var(--spacing-xl)}.header__nav{transform-origin:top;opacity:0;pointer-events:none;border-top:1px solid var(--color-border);border-bottom-left-radius:var(--radius,1rem);border-bottom-right-radius:var(--radius,1rem);z-index:20;background:#fff;flex-direction:column;gap:1rem;width:100%;padding:1.5rem 1.5rem 2rem;transition:transform .25s,opacity .25s;position:absolute;top:100%;left:0;right:0;transform:scaleY(0)}.header__nav--open{opacity:1;pointer-events:auto;transform:scaleY(1)}.header__nav a{padding:.75rem 0;display:block}.header__burger{display:block}.header__right{gap:1rem}.header__search-dropdown{padding:1rem}.header__categories{gap:.75rem}.header__category{border-color:var(--color-border);padding:.75rem .9rem;font-size:.95rem}.header__search-dropdown-inner{padding:1.5rem var(--spacing-xl)}.header__search-form{margin-bottom:1.5rem}}.footer{padding:var(--spacing-3xl) 0 var(--spacing-xl);background-color:#fff;margin-top:auto}.footer-container{max-width:var(--container-max-width);padding:0 var(--spacing-3xl);margin:0 auto}.footer-top{gap:var(--spacing-3xl);margin-bottom:var(--spacing-2xl);justify-content:space-between;display:flex}.footer-brand{flex:2;max-width:380px}.footer-logo{font-family:var(--font-heading);font-size:var(--text-title);color:var(--color-secondary);margin-bottom:var(--spacing-md);font-weight:600}.footer-desc{font-size:var(--text-small);color:var(--color-text);line-height:var(--line-height-loose)}.footer-nav{flex:1}.footer-heading{font-family:var(--font-body);font-size:var(--text-body);color:var(--color-secondary);margin-bottom:var(--spacing-md);font-weight:600}.footer-links{gap:var(--spacing-sm);flex-direction:column;list-style:none;display:flex}.footer-links a{font-size:var(--text-small);color:var(--color-text);transition:color .2s}.footer-links a:hover{color:var(--color-secondary)}.footer-social{flex:1}.social-icons{gap:var(--spacing-sm);margin-top:var(--spacing-xs);display:flex}.social-circle{background-color:var(--color-border);width:40px;height:40px;color:var(--color-secondary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:background-color .2s,color .2s;display:flex}.social-circle:hover{background-color:var(--color-dark-accent);color:var(--color-background)}.footer-divider{border:none;border-top:1px solid var(--color-border);margin-bottom:var(--spacing-lg)}.footer-copyright{font-size:var(--text-small);color:var(--color-text);text-align:center}@media (width<=768px){.footer-container{padding:0 var(--spacing-xl)}.footer-top{gap:var(--spacing-2xl);flex-direction:column}.footer-brand{max-width:100%}}.toast{z-index:60;color:var(--color-secondary);font-family:var(--font-body);box-shadow:var(--shadow-lg);background:#fff;border:1px solid #2c282514;border-radius:1.5rem;align-items:center;gap:1rem;padding:1rem 1.25rem;animation:.22s toast-enter;display:flex;position:fixed;top:1rem;right:1rem;width:min(360px,100vw - 2rem)!important;left:auto!important}.toast__icon{background:var(--color-dark-accent);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:2.4rem;height:2.4rem;display:grid}.toast__text{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.toast__title{overflow-wrap:anywhere;-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;margin:0;font-size:clamp(.88rem,1vw + .2rem,1rem);font-weight:700;line-height:1.2;display:-webkit-box;overflow:hidden}.toast__subtitle{color:var(--color-text);overflow-wrap:anywhere;margin:0;font-size:.9rem;line-height:1.3}@keyframes toast-enter{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.scroll-to-top{bottom:var(--spacing-3xl);right:var(--spacing-3xl);background-color:var(--color-dark-accent);color:var(--color-background);width:var(--spacing-2xl);height:var(--spacing-2xl);cursor:pointer;box-shadow:var(--shadow-md);z-index:100;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed}@media (width<=768px){.scroll-to-top{bottom:var(--spacing-lg);right:var(--spacing-lg)}}
