*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #e8622b;--color-primary-light: #ff8a50;--color-primary-dark: #c04d1c;--color-secondary: #2d6a4f;--color-secondary-light: #52b788;--color-accent: #f9a826;--color-bg: #fdf8f4;--color-bg-card: #ffffff;--color-bg-section: #fef5ed;--color-text: #2c1810;--color-text-secondary: #6b5a4e;--color-text-light: #9a8a7e;--color-border: #e8ddd4;--color-border-light: #f0e8e0;--color-protein: #e85d04;--color-carbs: #f9a826;--color-fat: #52b788;--color-error: #d32f2f;--color-success: #2e7d32;--color-info: #1565c0;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--shadow-sm: 0 1px 3px rgba(44, 24, 16, .06);--shadow-md: 0 4px 12px rgba(44, 24, 16, .08);--shadow-lg: 0 8px 30px rgba(44, 24, 16, .12);--shadow-xl: 0 16px 50px rgba(44, 24, 16, .15);--transition: .2s ease;--max-width: 1280px}html{font-size:16px;scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--color-bg);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}img{max-width:100%}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;font-size:.925rem}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding-top:72px}.header{position:fixed;top:0;left:0;right:0;z-index:100;background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border-light);height:72px}.header-inner{max-width:var(--max-width);margin:0 auto;padding:0 24px;height:100%;display:flex;align-items:center;justify-content:space-between}.header-logo{display:flex;align-items:center;gap:10px;font-size:1.4rem;font-weight:800;color:var(--color-primary)}.logo-icon{font-size:1.6rem}.logo-text{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-nav{display:flex;gap:6px}.nav-link{padding:8px 16px;border-radius:var(--radius-md);font-size:.9rem;font-weight:500;color:var(--color-text-secondary);transition:var(--transition)}.nav-link:hover{background:var(--color-bg-section);color:var(--color-primary)}.nav-link.active{background:var(--color-primary);color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border:none;border-radius:var(--radius-md);font-size:.925rem;font-weight:600;transition:var(--transition);white-space:nowrap}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--color-bg-section);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-border-light)}.btn-text{background:none;border:none;color:var(--color-primary);font-size:.9rem;font-weight:600;padding:4px 8px;border-radius:var(--radius-sm);transition:var(--transition)}.btn-text:hover{background:var(--color-bg-section)}.btn-back{background:none;border:1px solid var(--color-border);color:var(--color-text-secondary);padding:8px 16px;border-radius:var(--radius-md);font-size:.9rem;margin-bottom:20px;transition:var(--transition)}.btn-back:hover{background:var(--color-bg-section);color:var(--color-text)}.hero{background:linear-gradient(135deg,#fff5ee,#fde8d8,#fef0e4);padding:60px 24px 70px;text-align:center}.hero-content{max-width:700px;margin:0 auto}.hero h1{font-size:2.8rem;font-weight:800;line-height:1.15;color:var(--color-text);margin-bottom:16px;letter-spacing:-.02em}.hero p{font-size:1.15rem;color:var(--color-text-secondary);margin-bottom:32px}.hero-search{display:flex;gap:8px;max-width:540px;margin:0 auto}.hero-search input{flex:1;padding:14px 20px;border:2px solid var(--color-border);border-radius:var(--radius-lg);font-size:1rem;background:#fff;transition:var(--transition)}.hero-search input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #e8622b26}.hero-search .btn{padding:14px 28px;border-radius:var(--radius-lg);font-size:1rem}.section{max-width:var(--max-width);margin:0 auto;padding:40px 24px}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.section-title{font-size:1.5rem;font-weight:700;color:var(--color-text);margin-bottom:20px}.section-header .section-title{margin-bottom:0}.category-strip,.cuisine-strip{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;-webkit-overflow-scrolling:touch}.category-chip{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#fff;border-radius:var(--radius-xl);font-weight:600;font-size:.9rem;white-space:nowrap;box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);transition:var(--transition)}.category-chip:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.category-icon{font-size:1.2rem}.cuisine-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 24px;background:#fff;border-radius:var(--radius-lg);font-weight:600;font-size:.85rem;white-space:nowrap;box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);transition:var(--transition);min-width:100px}.cuisine-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.cuisine-icon{font-size:1.8rem}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}.recipe-card{background:var(--color-bg-card);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);transition:var(--transition);display:flex;flex-direction:column}.recipe-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-light)}.recipe-card-image{position:relative;height:200px;overflow:hidden}.recipe-card-img{width:100%;height:100%;background-size:cover;background-position:center;background-color:var(--color-bg-section);display:flex;align-items:center;justify-content:center}.recipe-card-img-placeholder{font-size:4rem;font-weight:800;color:var(--color-primary-light);opacity:.4}.recipe-card-difficulty{position:absolute;top:12px;right:12px;padding:4px 12px;border-radius:var(--radius-xl);color:#fff;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.recipe-card-body{padding:16px;flex:1;display:flex;flex-direction:column}.recipe-card-cuisine{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--color-primary);margin-bottom:4px}.recipe-card-title{font-size:1.1rem;font-weight:700;margin-bottom:6px;line-height:1.3}.recipe-card-desc{font-size:.85rem;color:var(--color-text-secondary);line-height:1.5;margin-bottom:10px;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recipe-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.tag{display:inline-block;padding:2px 10px;border-radius:var(--radius-xl);font-size:.72rem;font-weight:600;background:#e8f5e9;color:var(--color-secondary);border:1px solid #c8e6c9}.tag-large{padding:4px 14px;font-size:.8rem}.recipe-card-meta{display:flex;justify-content:space-between;padding-top:12px;border-top:1px solid var(--color-border-light)}.meta-item{font-size:.8rem;color:var(--color-text-secondary);display:flex;align-items:center;gap:4px}.meta-icon{font-size:.9rem}.cta-section{padding-bottom:60px}.cta-card{background:linear-gradient(135deg,#fff5ee,#fde8d8);border-radius:var(--radius-xl);padding:48px;text-align:center;border:1px solid var(--color-border-light)}.cta-card h2{font-size:1.6rem;margin-bottom:12px}.cta-card p{color:var(--color-text-secondary);margin-bottom:24px;max-width:500px;margin-left:auto;margin-right:auto}.page-search{max-width:var(--max-width);margin:0 auto;padding:32px 24px}.search-header{margin-bottom:28px}.search-header h1{font-size:2rem;margin-bottom:16px}.search-bar{display:flex;gap:8px;max-width:600px}.search-bar input{flex:1;padding:12px 18px;border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:.95rem;transition:var(--transition)}.search-bar input:focus{outline:none;border-color:var(--color-primary)}.search-result-count{margin-top:12px;color:var(--color-text-secondary);font-size:.9rem}.search-layout{display:grid;grid-template-columns:260px 1fr;gap:32px}.search-sidebar,.search-results{min-width:0}.filter-panel{background:#fff;border-radius:var(--radius-lg);padding:20px;border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm);position:sticky;top:88px}.filter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.filter-header h3{font-size:1.1rem;font-weight:700}.filter-group{margin-bottom:18px}.filter-group label{display:block;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);margin-bottom:6px}.filter-group select,.filter-group input{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;transition:var(--transition)}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:var(--color-primary)}.dietary-chips{display:flex;flex-wrap:wrap;gap:6px}.chip{padding:5px 12px;border:1px solid var(--color-border);border-radius:var(--radius-xl);font-size:.78rem;font-weight:500;background:#fff;color:var(--color-text-secondary);transition:var(--transition)}.chip:hover{border-color:var(--color-secondary)}.chip-active{background:var(--color-secondary);color:#fff;border-color:var(--color-secondary)}.empty-state{text-align:center;padding:60px 20px}.empty-icon{font-size:4rem;margin-bottom:16px}.empty-state h3{font-size:1.3rem;margin-bottom:8px}.empty-state p{color:var(--color-text-secondary);margin-bottom:24px}.page-detail{max-width:var(--max-width);margin:0 auto;padding:32px 24px}.detail-hero{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:40px}.detail-hero-image{border-radius:var(--radius-xl);overflow:hidden;aspect-ratio:4/3}.detail-img{width:100%;height:100%;background-size:cover;background-position:center;background-color:var(--color-bg-section);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-xl)}.detail-img-placeholder{font-size:6rem;font-weight:800;color:var(--color-primary-light);opacity:.3}.detail-hero-info{display:flex;flex-direction:column;justify-content:center}.detail-tags-row{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.cuisine-badge,.category-badge{padding:4px 14px;border-radius:var(--radius-xl);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.cuisine-badge{background:#fff3e0;color:var(--color-primary);border:1px solid #ffe0b2}.category-badge{background:#e8f5e9;color:var(--color-secondary);border:1px solid #c8e6c9}.difficulty-badge{padding:4px 14px;border-radius:var(--radius-xl);font-size:.78rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.5px}.detail-hero-info h1{font-size:2.2rem;font-weight:800;margin-bottom:10px;line-height:1.2}.detail-description{color:var(--color-text-secondary);font-size:1.05rem;margin-bottom:20px;line-height:1.6}.detail-meta-row{display:flex;gap:24px;margin-bottom:16px}.detail-meta-item{display:flex;flex-direction:column;align-items:center;gap:2px}.meta-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-light)}.meta-val{font-size:1.15rem;font-weight:700;color:var(--color-text)}.detail-dietary{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.detail-rating{display:flex;align-items:center;gap:12px;margin-bottom:20px}.stars-display{display:flex;gap:2px}.star-btn{background:none;border:none;font-size:1.6rem;color:#ddd;transition:var(--transition);padding:0 2px}.star-btn:hover,.star-filled{color:var(--color-accent)}.rating-text{font-size:.9rem;color:var(--color-text-secondary)}.detail-actions{margin-bottom:12px}.add-to-plan-panel{display:flex;gap:8px;align-items:center;padding:12px 16px;background:var(--color-bg-section);border-radius:var(--radius-md);border:1px solid var(--color-border-light)}.add-to-plan-panel select{padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff}.detail-body{display:grid;grid-template-columns:1fr 340px;gap:40px}.detail-section{margin-bottom:36px}.detail-section h2{font-size:1.4rem;font-weight:700;margin-bottom:18px;padding-bottom:10px;border-bottom:2px solid var(--color-border-light)}.ingredient-list{list-style:none}.ingredient-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--color-border-light)}.ingredient-item:last-child{border-bottom:none}.ingredient-amount{min-width:100px;font-weight:600;color:var(--color-primary);font-size:.9rem}.ingredient-name{font-size:.95rem}.steps-list{list-style:none;counter-reset:none}.step-item{display:flex;gap:16px;margin-bottom:20px}.step-number{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem}.step-item p{font-size:.95rem;line-height:1.7;padding-top:6px}.nutrition-info{background:#fff;border-radius:var(--radius-lg);padding:24px;border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm);position:sticky;top:88px}.nutrition-info h4{font-size:1.1rem;margin-bottom:20px}.nutrition-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:20px}.nutrition-item{text-align:center}.nutrition-circle{width:72px;height:72px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto 6px}.calories-circle{background:#fff3e0;border:3px solid var(--color-primary-light)}.protein-circle{background:#fbe9e7;border:3px solid var(--color-protein)}.carbs-circle{background:#fff8e1;border:3px solid var(--color-carbs)}.fat-circle{background:#e8f5e9;border:3px solid var(--color-fat)}.nutrition-value{font-size:1rem;font-weight:700}.nutrition-unit{font-size:.7rem;color:var(--color-text-light)}.nutrition-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary)}.nutrition-bar-large,.nutrition-bar{display:flex;height:10px;border-radius:5px;overflow:hidden;margin-bottom:8px;background:var(--color-border-light)}.bar-protein{background:var(--color-protein)}.bar-carbs{background:var(--color-carbs)}.bar-fat{background:var(--color-fat)}.nutrition-bar-legend{display:flex;justify-content:space-between;font-size:.75rem;font-weight:600}.legend-protein{color:var(--color-protein)}.legend-carbs{color:var(--color-carbs)}.legend-fat{color:var(--color-fat)}.nutrition-compact{padding:12px 0}.nutrition-compact .nutrition-bar{height:8px;margin-bottom:8px}.nutrition-compact-labels{display:flex;justify-content:space-between;font-size:.78rem;font-weight:600}.label-protein{color:var(--color-protein)}.label-carbs{color:var(--color-carbs)}.label-fat{color:var(--color-fat)}.page-planner{max-width:var(--max-width);margin:0 auto;padding:32px 24px}.planner-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.planner-header h1{font-size:2rem;font-weight:800}.planner-subtitle{color:var(--color-text-secondary);font-size:.9rem;margin-top:4px}.day-tabs{display:none;gap:4px;overflow-x:auto;padding-bottom:12px;margin-bottom:20px}.day-tab{display:flex;align-items:center;gap:6px;padding:10px 18px;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:#fff;font-size:.85rem;font-weight:600;white-space:nowrap;transition:var(--transition)}.day-tab-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.day-tab-count{width:20px;height:20px;border-radius:50%;background:#ffffff40;display:flex;align-items:center;justify-content:center;font-size:.72rem}.day-tab-active .day-tab-count{background:#ffffff4d}.planner-grid{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm);overflow:hidden;margin-bottom:32px}.planner-grid-header{display:grid;grid-template-columns:100px repeat(7,1fr);background:var(--color-bg-section);border-bottom:1px solid var(--color-border-light)}.planner-day-header{padding:14px 8px;text-align:center;font-size:.85rem;font-weight:700;color:var(--color-text-secondary)}.planner-day-header.active{color:var(--color-primary);background:#e8622b0d}.planner-grid-row{display:grid;grid-template-columns:100px repeat(7,1fr);border-bottom:1px solid var(--color-border-light)}.planner-grid-row:last-child{border-bottom:none}.planner-meal-label{padding:16px 12px;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);display:flex;align-items:center;background:var(--color-bg-section);border-right:1px solid var(--color-border-light)}.planner-cell{padding:8px;min-height:80px;border-right:1px solid var(--color-border-light)}.planner-cell:last-child{border-right:none}.meal-slot{border-radius:var(--radius-sm);padding:8px;height:100%;display:flex;align-items:center;gap:6px;transition:var(--transition);position:relative}.meal-slot-empty{border:2px dashed var(--color-border);color:var(--color-text-light);justify-content:center;flex-direction:column;font-size:.75rem}.meal-slot-filled{background:var(--color-bg-section);border:1px solid var(--color-border-light)}.meal-slot-link{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.meal-slot-icon{font-size:.9rem;flex-shrink:0}.meal-slot-title{font-size:.78rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meal-slot-placeholder{font-size:.75rem}.meal-slot-remove{position:absolute;top:2px;right:2px;background:none;border:none;color:var(--color-text-light);font-size:1rem;padding:0 4px;border-radius:50%;opacity:0;transition:var(--transition)}.meal-slot-filled:hover .meal-slot-remove{opacity:1}.meal-slot-remove:hover{color:var(--color-error);background:#d32f2f1a}.planner-mobile-detail{display:none;margin-bottom:32px}.planner-mobile-detail h3{font-size:1.2rem;margin-bottom:16px}.planner-mobile-slot{margin-bottom:12px}.mobile-meal-label{display:block;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);margin-bottom:6px}.planner-nutrition{display:grid;grid-template-columns:1fr 1fr;gap:24px}.nutrition-panel{background:#fff;border-radius:var(--radius-lg);padding:24px;border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm)}.nutrition-panel h3{font-size:1rem;font-weight:700;margin-bottom:12px}.nutrition-empty{color:var(--color-text-light);font-size:.9rem;font-style:italic}.nutrition-avg{font-size:.82rem;color:var(--color-text-secondary);margin-top:8px}.page-shopping{max-width:900px;margin:0 auto;padding:32px 24px}.shopping-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:28px}.shopping-header h1{font-size:2rem;font-weight:800}.shopping-subtitle{color:var(--color-text-secondary);font-size:.9rem;margin-top:4px}.shopping-actions{display:flex;gap:8px}.shopping-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-bottom:32px}.shopping-category{background:#fff;border-radius:var(--radius-lg);padding:20px;border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm)}.category-title{display:flex;align-items:center;gap:10px;font-size:1rem;font-weight:700;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--color-border-light)}.category-dot{width:10px;height:10px;border-radius:50%;background:var(--color-primary)}.category-count{margin-left:auto;background:var(--color-bg-section);padding:2px 10px;border-radius:var(--radius-xl);font-size:.78rem;color:var(--color-text-secondary)}.shopping-items{list-style:none}.shopping-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--color-border-light);cursor:pointer;transition:var(--transition)}.shopping-item:last-child{border-bottom:none}.shopping-item:hover{background:var(--color-bg-section);margin:0 -8px;padding-left:8px;padding-right:8px;border-radius:var(--radius-sm)}.item-checked{opacity:.5}.item-checked .item-name{text-decoration:line-through}.checkbox{width:22px;height:22px;border:2px solid var(--color-border);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--transition);font-size:.8rem;color:#fff}.checkbox-checked{background:var(--color-secondary);border-color:var(--color-secondary)}.item-name{flex:1;font-size:.9rem}.item-amount{font-size:.82rem;font-weight:600;color:var(--color-text-secondary);white-space:nowrap}.shopping-progress{display:flex;align-items:center;gap:16px;padding:20px 24px;background:#fff;border-radius:var(--radius-lg);border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm)}.progress-bar{flex:1;height:10px;background:var(--color-border-light);border-radius:5px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--color-secondary-light),var(--color-secondary));border-radius:5px;transition:width .4s ease}.progress-text{font-size:.85rem;font-weight:600;color:var(--color-text-secondary);white-space:nowrap}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:200;padding:24px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:var(--radius-xl);width:100%;max-width:640px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 0}.modal-header h2{font-size:1.4rem}.modal-close{background:none;border:none;font-size:1.6rem;color:var(--color-text-light);padding:4px 8px}.modal-close:hover{color:var(--color-text)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:24px}.form-full{grid-column:1 / -1}.form-group label{display:block;font-size:.82rem;font-weight:600;margin-bottom:4px;color:var(--color-text-secondary)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;transition:var(--transition)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #e8622b1a}.form-group textarea{resize:vertical;font-size:.88rem}.form-actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px 24px;border-top:1px solid var(--color-border-light)}.toast-container{position:fixed;bottom:24px;right:24px;z-index:300;display:flex;flex-direction:column;gap:10px;max-width:380px}.toast{display:flex;align-items:center;gap:10px;padding:14px 18px;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);animation:slideIn .3s ease;color:#fff;font-size:.9rem;font-weight:500}.toast-success{background:var(--color-success)}.toast-error{background:var(--color-error)}.toast-info{background:var(--color-info)}.toast-icon{font-size:1.1rem}.toast-text{flex:1}.toast-close{background:none;border:none;color:#ffffffb3;font-size:1.2rem;padding:0 4px}.toast-close:hover{color:#fff}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media(max-width:1024px){.search-layout{grid-template-columns:220px 1fr;gap:24px}.detail-hero{grid-template-columns:1fr;gap:24px}.detail-body{grid-template-columns:1fr}.detail-sidebar{order:-1}.nutrition-info{position:static}.planner-grid{display:none}.day-tabs{display:flex}.planner-mobile-detail{display:block}}@media(max-width:768px){.header-inner{padding:0 16px}.header-nav{gap:2px}.nav-link{padding:8px 10px;font-size:.82rem}.hero{padding:40px 16px 50px}.hero h1{font-size:2rem}.hero-search{flex-direction:column}.section{padding:28px 16px}.recipe-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.search-layout{grid-template-columns:1fr}.search-sidebar{order:1}.filter-panel{position:static}.planner-nutrition{grid-template-columns:1fr}.shopping-header{flex-direction:column;gap:12px}.shopping-grid,.form-grid{grid-template-columns:1fr}.cta-card{padding:32px 20px}.detail-hero-info h1{font-size:1.6rem}.detail-meta-row{flex-wrap:wrap;gap:16px}}@media(max-width:480px){.header-logo .logo-text{display:none}.nav-link{padding:8px;font-size:.78rem}.hero h1{font-size:1.6rem}.recipe-grid{grid-template-columns:1fr}}
