body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.big-day-container{background-color:#f5f7fa;display:flex;height:calc(100vh - 80px)}.sidebar{background-color:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;gap:20px;overflow-y:auto;padding:20px;width:300px}.new-plan-btn{background-color:#4caf50;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:12px;width:100%}.new-plan-btn:hover{background-color:#45a049}.plan-item{align-items:center;background:#fff;border:1px solid #eee;border-radius:8px;box-shadow:0 2px 4px #0000000d;cursor:pointer;display:flex;justify-content:space-between;padding:15px;transition:all .2s}.plan-item:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.plan-item.active{background-color:#f0f9f0;border-color:#4caf50}.plan-info{display:flex;flex-direction:column}.plan-name{color:#333;font-weight:700}.plan-date{color:#666;font-size:.85rem;margin-top:4px}.delete-btn{background:none;border:none;color:#999;cursor:pointer;font-size:1.2rem;padding:4px 8px}.delete-btn:hover{color:#f44}.main-content{flex:1 1;overflow-y:auto;padding:40px}.editor-container{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000000d;margin:0 auto;max-width:800px;padding:30px}.plan-form{display:flex;flex-direction:column;gap:20px}.form-group{gap:8px}.form-row{display:flex;gap:20px}.form-row .form-group{flex:1 1}label{color:#444;font-weight:600}input,textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;padding:10px}input:focus,textarea:focus{border-color:#4caf50;box-shadow:0 0 0 2px #4caf501a;outline:none}.meals-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:20px}.meal-input-row{display:flex;gap:10px;margin-bottom:15px}.meal-input-row input{flex:1 1}.meal-input-row button{background-color:#2196f3;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:0 20px}.meals-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.meal-item{align-items:center;background:#fff;border:1px solid #eee;border-radius:6px;display:flex;justify-content:space-between;padding:10px 15px}.remove-meal-btn{background:none;border:none;color:#f44;cursor:pointer;font-size:.9rem}.form-actions{border-top:1px solid #eee;gap:15px;justify-content:flex-end;margin-top:20px}.form-actions button{border:none;border-radius:6px;cursor:pointer;font-weight:600;padding:10px 24px}.form-actions button[type=button]{background-color:#f1f3f5;color:#555}.save-btn{background-color:#4caf50;color:#fff}.welcome-message{color:#666;margin-top:100px;text-align:center}.welcome-message h2{color:#333;font-size:2rem;margin-bottom:10px}@media screen and (max-width:768px){.big-day-container{flex-direction:column;height:auto;min-height:calc(100vh - 80px)}.sidebar{border-bottom:1px solid #e0e0e0;border-right:none;flex:none;max-height:250px;padding:15px;width:auto}.main-content{padding:20px 15px}.form-row{gap:10px}.form-row,.meal-input-row{flex-direction:column}.meal-input-row button{margin-top:5px;padding:12px;width:100%}.meal-item{align-items:flex-start;flex-direction:column;gap:8px}.remove-meal-btn{align-self:flex-end;padding:4px 8px}.form-actions{flex-direction:column;gap:10px}.form-actions button{padding:12px;width:100%}.editor-container{padding:20px 15px}}.login-page{align-items:center;background:var(--background);display:flex;justify-content:center;min-height:100vh;padding:2rem}.login-card{animation:fadeInUp .5s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:450px;padding:3rem;width:100%}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-header{margin-bottom:2rem;text-align:center}.login-header h1{color:#2c3e50;font-size:2rem;font-weight:700;margin-bottom:.5rem}.login-header p{color:#7f8c8d;font-size:1rem;margin:0}.error-banner{background:#fee;border:1px solid #fcc;border-radius:8px;color:#c0392b;font-size:.9rem;margin-bottom:1.5rem;padding:1rem;text-align:center}.login-content{margin-top:2rem}.google-login-button{align-items:center;background:#fff;border:1px solid #dadce0;border-radius:8px;box-shadow:0 1px 2px #0000001a;color:#3c4043;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:12px;justify-content:center;padding:14px 20px;transition:all .2s ease;width:100%}.google-login-button:hover{background:#f8f9fa;box-shadow:0 2px 8px #00000026}.google-login-button:active{box-shadow:0 1px 2px #0000001a;transform:translateY(1px)}.google-icon{height:20px;width:20px}.login-divider{align-items:center;color:#7f8c8d;display:flex;margin:2rem 0}.login-divider:after,.login-divider:before{background:#ecf0f1;content:"";flex:1 1;height:1px}.login-divider span{font-size:.9rem;padding:0 1rem}.login-info{color:#7f8c8d;font-size:.9rem;line-height:1.6;margin:0;text-align:center}.oauth-notice{background:#fff3cd;border:1px solid #ffc107;border-radius:8px;margin-bottom:1.5rem;padding:1rem;text-align:center}.oauth-notice p{color:#856404;font-size:.9rem;margin:0}@media (max-width:480px){.login-card{padding:2rem}.login-header h1{font-size:1.5rem}}.login-form{gap:1.5rem}.form-group,.login-form{display:flex;flex-direction:column}.form-group{gap:.5rem;text-align:left}.form-group label{color:#34495e;font-size:.9rem}.form-group input{border:1px solid #dfe6e9;border-radius:8px;font-size:1rem;padding:12px;transition:border-color .2s}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.btn-login-submit{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-bottom:1rem;padding:14px;transition:background .2s}.btn-login-submit:hover{background:#5a6fd1}.btn-login-submit:disabled{background:#95a5a6;cursor:not-allowed}:root{--primary:#e67e22;--primary-dark:#d35400;--secondary:#2c3e50;--accent:#27ae60;--background:#fdfbf7;--surface:#fff;--text-main:#2c3e50;--text-muted:#7f8c8d;--border:#ecf0f1;--shadow-sm:0 2px 4px #0000000d;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 24px #0000001f;--radius-sm:8px;--radius-md:12px;--radius-lg:16px}body{background-color:#fdfbf7;background-color:var(--background);color:#2c3e50;color:var(--text-main);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6;margin:0}h1,h2,h3,h4{color:#2c3e50;color:var(--secondary);font-weight:700;margin-top:0}a{color:inherit;text-decoration:none;transition:color .2s ease}.app-header{background:#fff;background:var(--surface);box-shadow:0 2px 4px #0000000d;box-shadow:var(--shadow-sm);padding:1rem 0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 20px}.header-left .home-link{align-items:center;display:flex;gap:12px}.app-header h1,.home-icon{font-size:1.5rem}.app-header h1{color:#2c3e50;color:var(--secondary);letter-spacing:-.5px;margin:0}.nav-dropdown-container{position:relative}.menu-toggle{align-items:center;background:#0000;border:2px solid #ecf0f1;border:2px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#2c3e50;color:var(--secondary);cursor:pointer;display:flex;font-weight:600;gap:8px;padding:8px 16px;transition:all .2s ease}.menu-toggle:hover{background:#ecf0f1;background:var(--border);color:#d35400;color:var(--primary-dark)}.dropdown-menu{animation:slideDown .2s ease-out;background:#fff;background:var(--surface);border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius-md);box-shadow:0 8px 24px #0000001f;box-shadow:var(--shadow-lg);min-width:220px;overflow:hidden;position:absolute;right:0;top:120%}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{border-bottom:1px solid #ecf0f1;border-bottom:1px solid var(--border);color:#2c3e50;color:var(--text-main);display:block;font-weight:500;padding:12px 20px;transition:background .2s}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background:#f8f9fa;color:#e67e22;color:var(--primary)}.meal-schedule{margin:40px auto;max-width:1200px;padding:0 20px}.meal-schedule h2{color:#2c3e50;color:var(--secondary);font-size:2rem;margin-bottom:40px;text-align:center}.week-container{background:#fff;margin-bottom:60px}.schedule-dates{border-bottom:2px solid #ecf0f1;border-bottom:2px solid var(--border);margin-bottom:20px;padding-bottom:10px}.schedule-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(8,minmax(100px,1fr));overflow-x:auto;padding-bottom:20px;padding-top:10px}.day-card{background:#fff;background:var(--surface);border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius-md);display:flex;flex-direction:column;min-height:200px;padding:16px;position:relative;transition:transform .2s ease,box-shadow .2s ease}.day-card:not(.header):hover{border:2px solid #e67e22;border:2px solid var(--primary);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow-md);padding:15px;transform:translateY(-4px)}.day-card.header{background:#2c3e50;background:var(--secondary);border:none;color:#fff}.day-card.header h3,.day-card.header h4{color:#fff;margin:0;padding:8px 0}.day-header{border-bottom:1px solid #ecf0f1;border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:8px}.day-name{display:block;font-size:1.1rem;font-weight:700}.day-date{color:#7f8c8d;color:var(--text-muted);display:block;font-size:.85rem}.day-card.today{background-color:#f0fff4;border-color:#27ae60;border-color:var(--accent);box-shadow:0 0 0 1px #27ae60;box-shadow:0 0 0 1px var(--accent)}.meal-slot{border-bottom:1px dashed #ecf0f1;border-bottom:1px dashed var(--border);flex:1 1;padding:8px 0}.meal-slot:last-child{border-bottom:none}.meal-slot h4{color:#7f8c8d;color:var(--text-muted);font-size:.75rem;letter-spacing:1px;margin-bottom:4px;text-transform:uppercase}.meal-content{align-items:flex-start;display:flex;flex-direction:column;gap:4px}.no-meal{color:#bdc3c7;font-size:.85rem;font-style:italic;margin:0}.add-meal{background:none;border:none;color:#e67e22;color:var(--primary);cursor:pointer;font-size:1.8rem;opacity:.6;transition:opacity .2s}.add-meal:hover{opacity:1;transform:scale(1.1)}.remove-meal{background:none;border:none;color:#e74c3c;cursor:pointer;font-size:1.7rem;opacity:.6;padding:0}.remove-meal:hover{font-size:1.8rem;opacity:1}.lists-container{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin:0 auto 60px;max-width:1200px;padding:0 20px}.ingredient-list,.pantry-list{background:#fff;background:var(--surface);border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000000d;box-shadow:var(--shadow-sm);padding:30px}.ingredient-list h2,.pantry-list h2{align-items:center;color:#d35400;color:var(--primary-dark);display:flex;font-size:1.5rem;justify-content:space-between;margin-bottom:24px}.ingredient-list-header{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.ingredient-list-header h2{margin:0}.shopping-list-add-form{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 90px auto}.shopping-list-add-form button{background:#e67e22;background:var(--primary);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-weight:600;padding:0 14px}.shopping-list-add-form button:hover{background:#d35400;background:var(--primary-dark)}.shopping-list-qty-input{text-align:center}.shopping-list-search{margin-bottom:6px}.list-actions{display:flex;justify-content:flex-end}.ingredient-item{align-items:center;background:#f8f9fa;border-radius:8px;border-radius:var(--radius-sm);display:flex;justify-content:space-between;margin-bottom:8px;padding:12px 14px;transition:all .2s}.ingredient-item:hover{background:#fff;box-shadow:0 2px 4px #0000000d;box-shadow:var(--shadow-sm);transform:translateX(2px)}.ingredient-item.checked{background:#0000;opacity:.6}.ingredient-count{align-items:center;background:#fff;border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:20px;box-shadow:0 1px 2px #00000005;display:flex;gap:12px;padding:4px 8px}.qty-value{color:#2c3e50;color:var(--secondary);font-weight:600;min-width:24px;text-align:center}.qty-btn{align-items:center;background:#fdfbf7;background:var(--background);border:none;border-radius:50%;color:#7f8c8d;color:var(--text-muted);cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;transition:all .2s ease;width:24px}.qty-icon{font-size:1.2rem;font-weight:500;line-height:1}.qty-btn:hover{background:#e67e22;background:var(--primary);color:#fff;transform:scale(1.1)}.qty-btn:active{transform:scale(.95)}.qty-btn-minus:hover{background:#ff6b6b}button{font-family:inherit}.filter-btn{background:#fff;border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:20px;color:#7f8c8d;color:var(--text-muted);cursor:pointer;font-weight:600;padding:8px 20px;transition:all .2s}.filter-btn:hover{color:#e67e22;color:var(--primary)}.filter-btn.active,.filter-btn:hover{border-color:#e67e22;border-color:var(--primary)}.filter-btn.active{background:#e67e22;background:var(--primary);box-shadow:0 4px 10px #e67e224d;color:#fff}input[type=number],input[type=text],select,textarea{border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);box-sizing:border-box;font-size:1rem;padding:10px 14px;transition:border-color .2s;width:100%}input:focus,select:focus,textarea:focus{border-color:#e67e22;border-color:var(--primary);box-shadow:0 0 0 3px #e67e221a;outline:none}.recipes-page{margin:40px auto;max-width:1200px;padding:0 20px}.recipe-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.recipe-card{background:#fff;background:var(--surface);border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000000d;box-shadow:var(--shadow-sm);overflow:hidden;transition:all .3s cubic-bezier(.25,.8,.25,1)}.recipe-card:hover{box-shadow:0 8px 24px #0000001f;box-shadow:var(--shadow-lg);transform:translateY(-8px)}.recipe-thumbnail{height:220px;object-fit:cover;width:100%}.recipe-card-content{padding:20px}.recipe-card h3{color:#2c3e50;color:var(--text-main);font-size:1.25rem;margin-bottom:8px}.recipe-category{background:#fdfbf7;background:var(--background);border-radius:20px;color:#e67e22;color:var(--primary);font-size:.8rem;font-weight:600;padding:4px 12px;text-transform:uppercase}.add-recipe-form{background:#fff;background:var(--surface);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow-md);margin:40px auto;max-width:800px;padding:40px}.add-recipe-form h2{border-bottom:2px solid #ecf0f1;border-bottom:2px solid var(--border);color:#2c3e50;color:var(--secondary);font-size:2rem;margin-bottom:30px;padding-bottom:15px}.form-group{margin-bottom:24px}.form-group label{color:#2c3e50;color:var(--text-main);display:block;font-size:.95rem;font-weight:600;margin-bottom:8px}.form-group input[type=file],.form-group input[type=number],.form-group input[type=text],.form-group input[type=url],.form-group select,.form-group textarea{background:#fdfdfd;border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);font-size:1rem;padding:12px;transition:all .2s;width:100%}.form-group input:focus,.form-group textarea:focus{background:#fff;border-color:#e67e22;border-color:var(--primary);box-shadow:0 0 0 3px #e67e221a}.form-group textarea{line-height:1.6;min-height:150px;resize:vertical}.ingredient-input{display:flex;gap:10px;margin-bottom:10px}.ingredient-input input{flex:1 1}.remove-ingredient{align-items:center;background:#fff0eb;border:1px solid #fadbd8;border-radius:8px;border-radius:var(--radius-sm);color:#e74c3c;cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;transition:all .2s;width:44px}.remove-ingredient:hover{background:#e74c3c;border-color:#e74c3c;color:#fff}.add-ingredient{background:#f0fff4;border:2px dashed #27ae60;border:2px dashed var(--accent);border-radius:8px;border-radius:var(--radius-sm);color:#27ae60;color:var(--accent);cursor:pointer;font-weight:600;margin-top:10px;padding:12px;transition:all .2s;width:100%}.add-ingredient:hover{background:#27ae60;background:var(--accent);color:#fff}.form-actions{border-top:1px solid #ecf0f1;border-top:1px solid var(--border);display:flex;gap:16px;margin-top:40px;padding-top:20px}.submit.add-meal:hover{background:#e67e22;background:var(--primary);color:#fff;transform:scale(1.1)}.form-buttons{display:flex;gap:4px;justify-content:center;margin-top:16px}.btn-meal-add{background:#e67e22;background:var(--primary);border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:5px 12px;transition:all .2s}.btn-meal-add:hover:not(:disabled){background:#d35400;background:var(--primary-dark);box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.btn-meal-add:disabled{background:#ecf0f1;background:var(--border);cursor:not-allowed;opacity:.7}.btn-meal-cancel{background:#fff;border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:20px;color:#7f8c8d;color:var(--text-muted);cursor:pointer;font-size:.85rem;font-weight:600;padding:5px 12px;transition:all .2s}.btn-meal-cancel:hover{background:#f8f9fa;border-color:#7f8c8d;border-color:var(--text-muted);color:#2c3e50;color:var(--text-main)}.submit-recipe{background:#e67e22;background:var(--primary);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;flex:2 1;font-size:1rem;font-weight:600;padding:14px 28px;transition:all .2s}.submit-recipe:hover{background:#d35400;background:var(--primary-dark);box-shadow:0 4px 12px #e67e224d;transform:translateY(-2px)}.cancel-recipe{background:#fff;border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#7f8c8d;color:var(--text-muted);cursor:pointer;flex:1 1;font-weight:600;padding:14px 28px;transition:all .2s}.cancel-recipe:hover{background:#f8f9fa;color:#2c3e50;color:var(--text-main)}.recipe-detail{background:#fff;background:var(--surface);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow-md);margin:40px auto;max-width:1000px;padding:40px}.recipe-detail h2{color:#2c3e50;color:var(--secondary);font-size:2.5rem;margin-bottom:10px;text-align:center}.recipe-category-badge{background:#e67e22;background:var(--primary);border-radius:20px;color:#fff;display:inline-block;font-size:.9rem;font-weight:600;left:50%;margin-bottom:30px;padding:6px 16px;position:relative;text-align:center;text-transform:uppercase;transform:translateX(-50%)}.recipe-detail img.recipe-image{border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow-md);margin-bottom:40px;max-height:500px;object-fit:cover;width:100%}.recipe-stats{background:#f8f9fa;border-radius:12px;border-radius:var(--radius-md);display:flex;gap:40px;justify-content:center;margin-bottom:40px;padding:20px}.stat-item{text-align:center}.stat-label{color:#7f8c8d;color:var(--text-muted);display:block;font-size:.85rem;letter-spacing:1px;margin-bottom:4px;text-transform:uppercase}.stat-value{color:#2c3e50;color:var(--secondary);font-size:1.25rem;font-weight:700}.recipe-content{grid-gap:60px;display:grid;gap:60px;grid-template-columns:1fr 2fr}.recipe-section h4{border-bottom:2px solid #fdfbf7;color:#e67e22;color:var(--primary);font-size:1.5rem;margin-bottom:20px;padding-bottom:10px}.ingredients-list{list-style:none;margin:0;padding:0}.ingredients-list li{border-bottom:1px solid #ecf0f1;border-bottom:1px solid var(--border);color:#2c3e50;color:var(--text-main);font-size:1.05rem;padding:12px 0}.ingredients-list li:last-child{border-bottom:none}.instructions-text{color:#2c3e50;color:var(--text-main);font-size:1.1rem;line-height:1.8;white-space:pre-wrap}@media (max-width:768px){.recipe-content{gap:40px;grid-template-columns:1fr}.recipe-detail{padding:20px}.recipe-stats{gap:20px}.recipe-detail h2{font-size:1.8rem}.schedule-grid{min-width:auto}.lists-container,.schedule-grid{grid-template-columns:1fr}.header-content{flex-direction:row}.shopping-list-add-form{grid-template-columns:1fr}}.home-page{margin:0 auto;max-width:1200px}.home-hero{background:#fff;border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow-md);margin:40px 20px;overflow:hidden;padding:80px 20px;position:relative;text-align:center}.home-hero:before{background:linear-gradient(90deg,#e67e22,#27ae60);background:linear-gradient(90deg,var(--primary),var(--accent));content:"";height:6px;left:0;position:absolute;top:0;width:100%}.hero-content h1{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#2c3e50,#e67e22);background:linear-gradient(45deg,var(--secondary),var(--primary));-webkit-background-clip:text;background-clip:text;font-size:3.5rem;margin-bottom:20px}.hero-content p{color:#7f8c8d;color:var(--text-muted);font-size:1.25rem;margin:0 auto 40px;max-width:600px}.hero-actions{display:flex;gap:20px;justify-content:center}.btn{border:none;border-radius:30px;cursor:pointer;display:inline-block;font-size:1.1rem;font-weight:600;padding:14px 32px;transition:transform .2s,box-shadow .2s}.btn:hover{box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-primary{background:#e67e22;background:var(--primary);color:#fff}.btn-primary:hover{background:#d35400;background:var(--primary-dark)}.btn-secondary{background:#fff;border:2px solid #ecf0f1;border:2px solid var(--border);color:#2c3e50;color:var(--secondary)}.btn-secondary:hover{border-color:#2c3e50;border-color:var(--secondary)}.btn-modern-edit{align-items:center;background:#0000!important;border:2px solid #e67e22!important;border:2px solid var(--primary)!important;border-radius:30px;box-shadow:none!important;color:#e67e22!important;color:var(--primary)!important;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;padding:10px 24px;transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-modern-edit:hover{background:#e67e22!important;background:var(--primary)!important;box-shadow:0 4px 12px #e67e2240!important;color:#fff!important;transform:translateY(-2px)}.btn-nav{align-items:center;background:#fff;border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:30px;box-shadow:0 2px 4px #0000000d;box-shadow:var(--shadow-sm);color:#2c3e50;color:var(--text-main);cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;padding:10px 24px;transition:all .2s ease}.btn-nav:hover{border-color:#e67e22;border-color:var(--primary);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow-md);color:#e67e22;color:var(--primary);transform:translateY(-2px)}.features-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));padding:40px 20px 80px}.feature-card-link{color:inherit;display:block;height:100%;text-decoration:none;transition:transform .2s}.feature-card-link:hover{transform:translateY(-5px)}.feature-card{background:#fff;background:var(--surface);border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000000d;box-shadow:var(--shadow-sm);box-sizing:border-box;height:100%;padding:25px;text-align:center;transition:box-shadow .2s,border-color .2s}.feature-card-link:hover .feature-card{border-color:#27ae60;border-color:var(--accent);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow-md)}.feature-icon{font-size:2.5rem;margin-bottom:15px}.feature-card h3{color:#2c3e50;color:var(--secondary);font-size:1.25rem;margin-bottom:10px}.feature-card p{color:#7f8c8d;color:var(--text-muted);font-size:.95rem;line-height:1.5}.pantry-grid{display:flex;flex-direction:column;gap:12px}.pantry-item{align-items:center;background:#f8f9fa;border:1px solid #0000;border-radius:8px;border-radius:var(--radius-sm);display:flex;justify-content:space-between;padding:8px 12px;transition:all .2s ease}.pantry-item:hover{background:#fff;border-color:#ecf0f1;border-color:var(--border);box-shadow:0 2px 4px #0000000d;box-shadow:var(--shadow-sm);transform:translateX(2px)}.pantry-item-name{color:#2c3e50;color:var(--text-main);flex:1 1;font-size:.9rem;font-weight:500}.pantry-item-controls{align-items:center;display:flex;gap:6px}.quantity-input-pantry{border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);font-size:.85rem;padding:4px 6px;text-align:center;width:50px}.quantity-input-pantry:focus{border-color:#e67e22;border-color:var(--primary);box-shadow:0 0 0 3px #e67e221a;outline:none}.remove-pantry-item{align-items:center;background:#ff6b6b;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:.75rem;font-weight:300;height:20px;justify-content:center;padding:0;transition:all .2s ease;width:20px}.remove-pantry-item:hover{background:#ff5252;box-shadow:0 4px 12px #ff6b6b4d;transform:scale(1.1)}.remove-pantry-item:active{transform:scale(.95)}@media (max-width:768px){.hero-content h1{font-size:2.5rem}.hero-actions{flex-direction:column}}.create-account-page{align-items:center;background:linear-gradient(135deg,#fdfbf7,#f5f0e8);background:linear-gradient(135deg,var(--background) 0,#f5f0e8 100%);display:flex;justify-content:center;min-height:calc(100vh - 80px);padding:2rem}.create-account-card{background:#fff;background:var(--surface);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 8px 24px #0000001f;box-shadow:var(--shadow-lg);max-width:450px;padding:3rem;width:100%}.create-account-card h2{color:#2c3e50;color:var(--secondary);margin-bottom:.5rem;text-align:center}.create-account-card .subtitle{color:#7f8c8d;color:var(--text-muted);margin-bottom:2rem;text-align:center}.create-account-card .form-group{margin-bottom:1.5rem}.create-account-card label{color:#2c3e50;color:var(--secondary);display:block;font-weight:600;margin-bottom:.5rem}.create-account-card input{border:2px solid #ecf0f1;border:2px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);box-sizing:border-box;font-size:1rem;padding:.875rem 1rem;transition:border-color .2s,box-shadow .2s;width:100%}.create-account-card input:focus{border-color:#e67e22;border-color:var(--primary);box-shadow:0 0 0 3px #e67e2226;outline:none}.create-account-card .error-message{background:#fee;border-radius:8px;border-radius:var(--radius-sm);color:#c0392b;font-size:.9rem;margin-bottom:1rem;padding:.75rem 1rem}.create-account-card .btn{font-size:1rem;font-weight:600;padding:1rem;width:100%}.existing-users{border-top:1px solid #ecf0f1;border-top:1px solid var(--border);margin-top:2rem;padding-top:2rem}.existing-users p{color:#7f8c8d;color:var(--text-muted);font-size:.9rem;margin-bottom:1rem;text-align:center}.user-list{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.user-chip{background:#fdfbf7;background:var(--background);border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:20px;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.user-chip:hover{border-color:#e67e22;border-color:var(--primary)}.btn-signup,.user-chip:hover{background:#e67e22;background:var(--primary);color:#fff}.btn-signup{border-radius:8px;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;padding:.5rem 1rem;text-decoration:none;transition:all .2s}.btn-signup:hover{background:#d35400;background:var(--primary-dark)}.btn-login{background:#2c3e50;background:var(--secondary);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.5rem 1rem;text-decoration:none;transition:all .2s}.btn-login:hover{background:#34495e}.user-info{align-items:center;display:flex;gap:.75rem}.user-avatar{border-radius:50%;height:32px;object-fit:cover;width:32px}.user-name{color:#2c3e50;color:var(--text-main);font-weight:500}.btn-logout{background:#0000;border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#7f8c8d;color:var(--text-muted);cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.btn-logout:hover{background:#fdfbf7;background:var(--background);color:#2c3e50;color:var(--text-main)}.recipe-list-container{background:#fff;border:1px solid #ecf0f1;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);margin-bottom:15px;max-height:200px;overflow-x:auto;overflow-y:auto}.recipe-list-item{border-bottom:1px solid #f0f0f0;cursor:pointer;padding:8px 12px;transition:background-color .2s}.recipe-list-item:hover{background-color:#f8f9fa}.recipe-list-item.selected{background-color:#e3f2fd;color:#d35400;color:var(--primary-dark);font-weight:600}.recipe-list-item:last-child{border-bottom:none}.no-recipes-found{color:#7f8c8d;color:var(--text-muted);font-style:italic;padding:12px;text-align:center}
/*# sourceMappingURL=main.e176265b.css.map*/