*{box-sizing:border-box}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;color:#282c34;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}::-webkit-scrollbar-thumb{background:#888;border-radius:10px;-webkit-transition:background .3s ease;transition:background .3s ease}::-webkit-scrollbar-thumb:hover{background:#555}:focus-visible{outline:2px solid #61dafb;outline-offset:2px}a,button,input,select,textarea{transition:all .3s cubic-bezier(.4,0,.2,1)}button{user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.layout{background:linear-gradient(180deg,#f8f9fa 0,#fff);display:flex;flex-direction:column;min-height:100vh}.navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#282c34,#1a1d23);box-shadow:0 4px 12px #00000026;padding:1rem 0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.nav-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 2rem}.nav-title{color:#fff;font-size:1.5rem;font-weight:700;letter-spacing:.5px;margin:0;transition:transform .3s cubic-bezier(.4,0,.2,1)}.nav-title:hover{transform:scale(1.05)}.nav-links{display:flex;gap:2rem;list-style:none;margin:0;padding:0}.nav-links a,.nav-links li{position:relative}.nav-links a{border-radius:6px;color:#fff;display:block;font-size:1rem;font-weight:500;padding:.5rem 1rem;text-decoration:none}.nav-links a,.nav-links a:after{transition:all .3s cubic-bezier(.4,0,.2,1)}.nav-links a:after{background-color:#61dafb;bottom:0;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);width:0}.nav-links a:hover{background-color:#61dafb1a;color:#61dafb}.nav-links a:hover:after{width:80%}.nav-links a:active{transform:scale(.95)}.main-content{animation:fadeIn .5s ease-in;flex:1 1;margin:0 auto;max-width:1200px;padding:2rem;width:100%}@media (max-width:768px){.nav-container{flex-wrap:wrap;gap:1rem;padding:0 1.5rem}.nav-title{font-size:1.3rem}.nav-links{gap:1rem;justify-content:center;width:100%}.nav-links a{font-size:.95rem;padding:.4rem .8rem}.main-content{padding:1.5rem 1rem}}@media (max-width:480px){.nav-container{padding:0 1rem}.nav-title{font-size:1.2rem}.nav-links{gap:.5rem}.nav-links a{font-size:.9rem;padding:.4rem .6rem}.main-content{padding:1rem .75rem}}.ingredient-input-container{animation:fadeIn .5s ease-in;margin:0 auto;max-width:600px;padding:20px}.input-group{display:flex;gap:10px;margin-bottom:20px}.input-wrapper{flex:1 1;position:relative}.ingredient-input{border:2px solid #ddd;border-radius:8px;box-sizing:border-box;font-size:16px;outline:none;padding:12px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.ingredient-input:focus{border-color:#61dafb;box-shadow:0 0 0 3px #61dafb1a;transform:translateY(-1px)}.ingredient-input:hover:not(:focus){border-color:#b0b0b0}.suggestions-dropdown{animation:slideDown .2s ease-out;background-color:#fff;border:2px solid #61dafb;border-radius:0 0 8px 8px;border-top:none;box-shadow:0 4px 12px #00000026;left:0;margin-top:-8px;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.suggestion-item{border-left:3px solid #0000;color:#282c34;cursor:pointer;font-size:16px;padding:12px 16px;text-transform:capitalize;transition:all .2s cubic-bezier(.4,0,.2,1)}.suggestion-item:hover{background-color:#f0f0f0;border-left-color:#61dafb;padding-left:20px}.suggestion-item:active{background-color:#e0e0e0}.suggestion-item:last-child{border-radius:0 0 6px 6px}.add-button{background-color:#61dafb;border:none;border-radius:8px;color:#282c34;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.add-button:hover:not(:disabled){background-color:#4fa8c5;box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.add-button:active:not(:disabled){box-shadow:0 2px 4px #0000001a;transform:translateY(0)}.add-button:disabled{background-color:#bdc3c7;cursor:not-allowed;opacity:.5}.ingredients-list{margin-top:30px}.ingredients-list h3{color:#282c34;font-size:18px;margin-bottom:15px;text-align:left}.ingredients-list ul{list-style:none;margin:0;padding:0}.ingredient-item{align-items:center;animation:slideIn .3s ease-out;background-color:#f5f5f5;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:8px;padding:12px 16px;transition:all .3s cubic-bezier(.4,0,.2,1)}.ingredient-item:hover{background-color:#e8e8e8;box-shadow:0 2px 4px #00000014;transform:translateX(4px)}.ingredient-name{color:#282c34;font-size:16px;text-transform:capitalize}.remove-button{align-items:center;background-color:#ff6b6b;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:24px;height:28px;justify-content:center;line-height:1;padding:0;transition:all .3s cubic-bezier(.4,0,.2,1);width:28px}.remove-button:hover{background-color:#ff5252;box-shadow:0 2px 6px #ff6b6b66;transform:scale(1.1) rotate(90deg)}.remove-button:active{transform:scale(.95) rotate(90deg)}@media (max-width:600px){.ingredient-input-container{padding:15px 10px}.input-group{flex-direction:column;gap:8px}.add-button{padding:12px;width:100%}.ingredient-input{font-size:15px}}@media (max-width:480px){.ingredient-input-container{padding:10px 5px}.ingredient-item{padding:10px 12px}.ingredient-name{font-size:15px}.remove-button{font-size:22px;height:26px;width:26px}}.loading-spinner-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:40px 20px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border-radius:50%}.loading-spinner.small{border:3px solid #f3f3f3;border-top-color:#61dafb;height:30px;width:30px}.loading-spinner.medium{border:4px solid #f3f3f3;border-top-color:#61dafb;height:50px;width:50px}.loading-spinner.large{border:5px solid #f3f3f3;border-top-color:#61dafb;height:70px;width:70px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-message{animation:fadeIn .5s ease-in;color:#666;font-size:18px;margin-bottom:0;margin-top:20px}@media (max-width:768px){.loading-spinner-container{padding:30px 15px}.loading-message{font-size:16px}}.recipe-display-container{animation:fadeInUp .6s ease-out;margin:40px auto;max-width:1200px;padding:20px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.recipes-title{animation:fadeIn .5s ease-in;color:#282c34;font-size:28px;font-weight:700;margin-bottom:30px;text-align:center}.recipes-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.recipe-card{animation:scaleIn .4s ease-out backwards;background-color:#fff;border:2px solid #e0e0e0;border-radius:12px;display:flex;flex-direction:column;padding:24px;transition:all .3s cubic-bezier(.4,0,.2,1)}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.recipe-card:first-child{animation-delay:.1s}.recipe-card:nth-child(2){animation-delay:.2s}.recipe-card:nth-child(3){animation-delay:.3s}.recipe-card:nth-child(4){animation-delay:.4s}.recipe-card:hover{border-color:#61dafb;box-shadow:0 12px 24px #0000001f;transform:translateY(-6px)}.recipe-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px}.recipe-title{color:#282c34;flex:1 1;font-size:22px;font-weight:700;line-height:1.3;margin:0}.prep-time{background-color:#f5f5f5;border-radius:20px;color:#666;font-size:14px;font-weight:500;padding:6px 12px;white-space:nowrap}.recipe-description{color:#555;font-size:16px;font-style:italic;line-height:1.6;margin-bottom:20px}.save-message{align-items:center;animation:fadeIn .3s ease-in;border-radius:6px;display:flex;font-size:14px;font-weight:500;gap:12px;justify-content:space-between;margin-bottom:12px;padding:10px 16px}.save-message.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.save-message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.retry-save-button{background-color:#fff;border:1px solid #721c24;border-radius:4px;color:#721c24;cursor:pointer;flex-shrink:0;font-size:13px;font-weight:500;padding:6px 12px;transition:all .2s ease}.retry-save-button:hover{background-color:#721c24;color:#fff}.save-button{background-color:#61dafb;border:none;border-radius:8px;color:#282c34;cursor:pointer;font-size:16px;font-weight:600;margin-top:auto;overflow:hidden;padding:14px 24px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.save-button:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.save-button:hover:not(:disabled):before{height:300px;width:300px}.save-button:hover:not(:disabled){background-color:#4fa8c5;box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.save-button:active:not(:disabled){box-shadow:0 2px 4px #0000001a;transform:translateY(0)}.save-button:disabled{cursor:not-allowed;opacity:.7}.save-button.saved{background-color:#4caf50;color:#fff}.save-button.saved:hover{background-color:#45a049;box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.empty-recipe-state{animation:fadeIn .5s ease-in;color:#666;font-size:16px;padding:60px 20px;text-align:center}@media (max-width:768px){.recipes-grid{gap:20px;grid-template-columns:1fr}.recipe-display-container{margin:20px auto;padding:15px}.recipes-title{font-size:24px;margin-bottom:20px}.recipe-card{padding:20px}.recipe-title{font-size:20px}.recipe-header{align-items:flex-start;flex-direction:column}.prep-time{align-self:flex-start}}@media (max-width:480px){.recipe-display-container{margin:15px auto;padding:10px}.recipe-card{padding:16px}.recipe-title{font-size:18px}.section-title{font-size:16px}.ingredient-item,.instruction-item{font-size:14px}.save-button{font-size:15px;padding:12px 20px}}@media (max-width:768px){.recipes-grid{grid-template-columns:1fr}.recipe-display-container{margin:20px auto;padding:15px}.recipes-title{font-size:24px;margin-bottom:20px}.recipe-card{padding:20px}.recipe-title{font-size:20px}.recipe-header{align-items:flex-start;flex-direction:column}.prep-time{align-self:flex-start}}@media (max-width:480px){.recipe-display-container{padding:10px}.recipe-card{padding:16px}.recipe-title{font-size:18px}.section-title{font-size:16px}.ingredient-item,.instruction-item{font-size:14px}}.error-message{animation:slideIn .3s ease-out;justify-content:space-between;margin:16px 0;padding:16px 20px}.error-message-error{background-color:#fee;border:1px solid #fcc;color:#c33}.error-message-warning{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.error-message-info{background-color:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.error-content{align-items:center;display:flex;flex:1 1;gap:12px}.error-icon{flex-shrink:0;font-size:24px}.error-text{font-size:15px;line-height:1.5}.retry-button{background-color:#fff;border:1px solid #ddd;border-radius:6px;flex-shrink:0;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.retry-button:hover{background-color:#f8f9fa;border-color:#adb5bd;transform:translateY(-1px)}.retry-button:active{transform:translateY(0)}@media (max-width:768px){.error-message{align-items:flex-start;flex-direction:column;gap:12px}.retry-button{width:100%}}.home-container{animation:fadeIn .5s ease-in;margin:0 auto;max-width:1200px;padding:2rem}.home-header{margin-bottom:2rem;text-align:center}.home-header h1{color:#2c3e50;font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.home-header p{color:#7f8c8d;font-size:1.1rem;line-height:1.6}.generate-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 6px #0000001a;color:#fff;cursor:pointer;display:block;font-size:1.1rem;font-weight:600;margin:2rem auto;max-width:400px;overflow:hidden;padding:1rem 2rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.generate-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.generate-button:hover:not(:disabled):before{left:100%}.generate-button:hover:not(:disabled){box-shadow:0 6px 12px #00000026;transform:translateY(-2px)}.generate-button:active:not(:disabled){box-shadow:0 2px 4px #0000001a;transform:translateY(0)}.generate-button:disabled{background:#bdc3c7;box-shadow:none;cursor:not-allowed;opacity:.7}.error-message{background-color:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;font-size:1rem;gap:.5rem;margin:1rem auto;max-width:600px;padding:1rem}.error-icon{font-size:1.2rem}@media (max-width:768px){.home-container{padding:1.5rem 1rem}.home-header h1{font-size:2rem}.home-header p{font-size:1rem}.generate-button{font-size:1rem;max-width:100%;padding:.875rem 1.5rem}}@media (max-width:480px){.home-container{padding:1rem .75rem}.home-header h1{font-size:1.75rem}.home-header p{font-size:.95rem}.generate-button{font-size:.95rem;padding:.75rem 1.25rem}}.saved-recipes-container{animation:fadeIn .5s ease-in;margin:0 auto;max-width:1200px;padding:20px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.saved-recipes-title{color:#282c34;font-size:32px;font-weight:700;margin-bottom:30px;text-align:center}.saved-recipes-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.saved-recipe-card{animation:slideIn .4s ease-out backwards;background-color:#fff;border:2px solid #e0e0e0;border-radius:12px;display:flex;flex-direction:column;padding:24px;transition:all .3s cubic-bezier(.4,0,.2,1)}@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.saved-recipe-card:first-child{animation-delay:.05s}.saved-recipe-card:nth-child(2){animation-delay:.1s}.saved-recipe-card:nth-child(3){animation-delay:.15s}.saved-recipe-card:nth-child(4){animation-delay:.2s}.saved-recipe-card:hover{border-color:#61dafb;box-shadow:0 8px 16px #0000001f;transform:translateY(-4px)}.saved-recipe-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px}.header-content{flex:1 1}.saved-recipe-title{color:#282c34;font-size:22px;font-weight:700;line-height:1.3;margin:0 0 8px}.saved-date{color:#888;font-size:13px;font-weight:400}.delete-button{background:none;border:none;border-radius:6px;cursor:pointer;flex-shrink:0;font-size:20px;opacity:.7;padding:4px 8px;transition:all .3s cubic-bezier(.4,0,.2,1)}.delete-button:hover{background-color:#ffebee;opacity:1;transform:scale(1.1)}.delete-button:active{transform:scale(.95)}.saved-recipe-description{color:#555;font-size:16px;font-style:italic;line-height:1.6;margin-bottom:16px}.prep-time-badge{border-radius:20px;color:#666;display:inline-block;font-size:14px;font-weight:500;padding:8px 14px}.expand-button,.prep-time-badge{background-color:#f5f5f5;margin-bottom:16px}.expand-button{border:1px solid #e0e0e0;border-radius:8px;color:#282c34;cursor:pointer;font-size:15px;font-weight:600;padding:12px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.expand-button:hover{background-color:#e8e8e8;border-color:#d0d0d0;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.expand-button:active{box-shadow:none;transform:translateY(0)}.recipe-details{animation:slideDown .3s ease-out;border-top:2px solid #f0f0f0;padding-top:20px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.recipe-section{margin-bottom:20px}.section-title{border-bottom:2px solid #61dafb;color:#282c34;font-size:18px;font-weight:600;margin-bottom:12px;padding-bottom:6px}.ingredients-list{list-style:none;margin:0;padding:0}.ingredient-item{color:#444;font-size:15px;line-height:1.5;padding:8px 0 8px 24px;position:relative}.ingredient-item:before{color:#61dafb;content:"•";font-size:18px;font-weight:700;left:8px;position:absolute}.instructions-list{margin:0;padding-left:24px}.instruction-item{color:#444;font-size:15px;line-height:1.6;margin-bottom:8px;padding:8px 0}.instruction-item::marker{color:#61dafb;font-weight:700}.error-message{align-items:center;background-color:#fff3cd;border:2px solid #ffc107;border-radius:12px;display:flex;flex-direction:column;justify-content:center;margin:20px;padding:60px 20px;text-align:center}.error-icon{font-size:48px;margin-bottom:16px}.error-message span:not(.error-icon){color:#856404;font-size:16px;margin-bottom:20px}.retry-button{background-color:#61dafb;border:none;border-radius:8px;color:#282c34;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:background-color .3s}.retry-button:hover{background-color:#4fa8c5}.empty-state{align-items:center;animation:fadeIn .6s ease-in;display:flex;flex-direction:column;justify-content:center;padding:80px 20px;text-align:center}.empty-icon{animation:bounce 2s ease-in-out infinite;font-size:80px;margin-bottom:20px;opacity:.5}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.empty-state h3{color:#282c34;font-size:24px;font-weight:700;margin:0 0 12px}.empty-state p{color:#666;font-size:16px;line-height:1.6;margin:0;max-width:400px}@media (max-width:768px){.saved-recipes-grid{grid-template-columns:1fr}.saved-recipes-container{padding:15px}.saved-recipes-title{font-size:26px;margin-bottom:20px}.saved-recipe-card{padding:20px}.saved-recipe-title{font-size:20px}}@media (max-width:480px){.saved-recipes-container{padding:10px}.saved-recipe-card{padding:16px}.saved-recipe-title{font-size:18px}.section-title{font-size:16px}.ingredient-item,.instruction-item{font-size:14px}.empty-icon{font-size:60px}.empty-state h3{font-size:20px}.empty-state p{font-size:14px}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.39288066.css.map*/