.related-meals{border-top:1px solid var(--border-color);margin-top:30px;padding:30px 20px 20px}.related-meals h3{color:var(--text-primary);margin-bottom:20px;font-size:24px}.related-meals-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px;display:grid}.related-meal-card{background:var(--card-background);cursor:pointer;transition:var(--transition);border:1px solid var(--border-color);border-radius:12px;text-decoration:none;display:block;overflow:hidden}.related-meal-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #00000026}.related-meal-image{object-fit:cover;width:100%;height:150px}.related-meal-info{padding:12px}.related-meal-name{color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 8px;font-size:16px;font-weight:600;display:-webkit-box;overflow:hidden}.related-meal-stats{color:var(--text-secondary);gap:12px;margin-bottom:8px;font-size:13px;display:flex}.related-meal-stats span{align-items:center;gap:4px;display:flex}.related-meal-tags{flex-wrap:wrap;gap:6px;display:flex}.related-meal-tag{background:var(--tag-background);color:var(--text-secondary);border-radius:12px;padding:4px 8px;font-size:11px;font-weight:500}@media (max-width:768px){.related-meals-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px}.related-meal-image{height:120px}.related-meal-name{font-size:14px}.related-meals h3{font-size:20px}}
.modal-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-content{background:var(--card-background);border-radius:var(--border-radius);width:100%;max-width:900px;max-height:90vh;animation:.3s modalSlideIn;position:relative;overflow:hidden auto;box-shadow:0 20px 60px #0000004d}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.modal-breadcrumbs{padding:20px 20px 0}.modal-close{color:#fff;z-index:10;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:24px;display:flex;position:absolute;top:20px;right:20px}.modal-close:hover{background:#000000b3}.modal-header{border-bottom:1px solid var(--border-color);gap:30px;padding:30px;display:flex}.modal-image{object-fit:cover;border-radius:var(--border-radius);flex-shrink:0;width:250px;height:250px}.modal-header-info{flex-direction:column;flex:1;gap:15px;display:flex}.modal-header-info h2{margin:0;font-size:32px}.modal-cuisine{color:var(--text-secondary);text-transform:capitalize;font-size:16px}.modal-tags{flex-wrap:wrap;gap:8px;display:flex}.modal-tag{background:var(--background);color:var(--text-primary);border-radius:20px;padding:6px 14px;font-size:13px;font-weight:500}[data-theme=dark] .modal-tag{background:#00000080;border:1px solid #333}.modal-actions-header{gap:12px;margin-top:auto;display:flex}.modal-action-btn{background:var(--background);color:var(--text-primary);transition:var(--transition);border-radius:8px;padding:12px 24px;font-size:15px;font-weight:500}.modal-action-btn:hover{background:var(--border-color)}.modal-action-btn.active{background:var(--primary-color);color:#fff}.modal-action-btn.edit-btn{color:#fff;background:#4caf50}.modal-action-btn.edit-btn:hover{background:#45a049}[data-theme=dark] .modal-action-btn.edit-btn{background:#66bb6a}[data-theme=dark] .modal-action-btn.edit-btn:hover{background:#81c784}.modal-action-btn.delete-btn{color:#fff;background:#f44}.modal-action-btn.delete-btn:hover{background:#c00}.modal-body{max-width:100%;padding:20px 30px 30px;overflow-x:hidden}.content-section{margin-bottom:35px;animation:.3s fadeIn}.section-title{color:var(--text-primary);border-bottom:2px solid var(--border-color);margin-bottom:20px;padding-bottom:10px;font-size:24px;font-weight:600}.section-toggle{background:var(--background);cursor:pointer;width:100%;transition:var(--transition);text-align:left;border-radius:10px;justify-content:space-between;align-items:center;padding:15px 20px;display:flex}.section-toggle:hover{background:var(--border-color)}.section-toggle .section-title{border:none;margin:0;padding:0;font-size:20px}.toggle-icon{color:var(--text-secondary);font-size:18px;transition:transform .3s}.toggle-icon.open{transform:rotate(180deg)}.collapsible-content{margin-top:20px;animation:.3s fadeIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.meal-description-full{color:var(--text-secondary);margin-bottom:30px;font-size:16px;line-height:1.8}.meal-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:15px;margin-bottom:30px;display:grid}.stat-card{background:var(--background);border-radius:10px;align-items:center;gap:12px;padding:16px;display:flex}.stat-icon{font-size:28px}.stat-label{color:var(--text-secondary);font-size:13px;font-weight:500}.stat-value{color:var(--text-primary);font-size:18px;font-weight:600}.dietary-info-modal{background:var(--background);border-radius:10px;flex-direction:column;gap:20px;margin-bottom:30px;padding:20px;display:flex}.dietary-info-section h4{color:var(--text-primary);margin-bottom:12px;font-size:16px;font-weight:600}.dietary-badges{flex-wrap:wrap;gap:10px;display:flex}.dietary-badge{transition:var(--transition);border-radius:20px;padding:8px 16px;font-size:14px;font-weight:500}.allergen-badge{color:#ff9800;background:#ff980026;border:2px solid #ff98004d}[data-theme=dark] .allergen-badge{color:#ffb74d;background:#ff980033;border-color:#ff980066}.diet-badge{color:#4caf50;background:#4caf5026;border:2px solid #4caf504d}[data-theme=dark] .diet-badge{color:#81c784;background:#4caf5033;border-color:#4caf5066}.macros-overview h3{margin-bottom:20px;font-size:22px}.macros-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:20px;display:grid}.macro-card{flex-direction:column;align-items:center;gap:12px;display:flex}.macro-circle{width:100px;height:100px;box-shadow:var(--shadow-md);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;font-weight:600;display:flex}.macro-circle.calories{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}[data-theme=dark] .macro-circle.calories{background:linear-gradient(135deg,#d32f2f 0%,#b71c1c 100%)}.macro-circle.protein{color:#fff;background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%)}.macro-circle.carbs{color:#fff;background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%)}.macro-circle.fat{color:#fff;background:linear-gradient(135deg,#43e97b 0%,#38f9d7 100%)}.macro-circle.fiber{color:#fff;background:linear-gradient(135deg,#fa709a 0%,#fee140 100%)}.macro-circle.sugar{color:#fff;background:linear-gradient(135deg,#30cfd0 0%,#330867 100%)}.macro-value-large{font-size:28px;line-height:1}.macro-unit{opacity:.9;font-size:12px}.macro-label-large{color:var(--text-secondary);font-size:14px;font-weight:500}.ingredients-list{gap:12px;list-style:none;display:grid}.ingredient-item{background:var(--background);transition:var(--transition);border-radius:8px;justify-content:space-between;align-items:center;gap:15px;padding:14px 18px;display:flex}.ingredient-item:hover{background:var(--border-color)}.ingredient-info{flex:1;justify-content:space-between;align-items:center;gap:20px;display:flex}.ingredient-name{color:var(--text-primary);text-transform:capitalize;font-weight:500}.ingredient-amount{color:var(--text-secondary);white-space:nowrap;font-size:14px}.ingredient-shop-btn{cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#232f3e 0%,#37475a 100%);border:2px solid #0000;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:8px 14px;text-decoration:none;transition:all .2s;display:flex}.ingredient-shop-btn:hover{background:linear-gradient(135deg,#37475a 0%,#232f3e 100%);border-color:#f90;transform:translateY(-2px);box-shadow:0 4px 12px #f906}.amazon-icon{color:#fff;font-family:Arial,sans-serif;font-size:18px;font-style:italic;font-weight:700;line-height:1;position:relative}.amazon-icon:after{content:"";background:#f90;border-radius:2px;height:2px;position:absolute;bottom:-3px;left:-2px;right:-2px}.buy-text{color:#fff;letter-spacing:.3px;font-size:13px;font-weight:600}.amazon-shop-all-button{color:#fff;background:linear-gradient(135deg,#232f3e 0%,#37475a 100%);border:2px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:12px;width:100%;margin-top:20px;padding:16px 24px;font-size:16px;font-weight:600;text-decoration:none;transition:all .3s;display:flex;box-shadow:0 4px 12px #f903}.amazon-shop-all-button:hover{background:linear-gradient(135deg,#37475a 0%,#232f3e 100%);border-color:#f90;transform:translateY(-2px);box-shadow:0 6px 20px #f906}.amazon-icon-large{color:#fff;font-family:Arial,sans-serif;font-size:24px;font-style:italic;font-weight:700;line-height:1;position:relative}.amazon-icon-large:after{content:"";background:#f90;border-radius:2px;height:3px;position:absolute;bottom:-4px;left:-2px;right:-2px}.shop-all-text{color:#fff;letter-spacing:.3px;font-size:16px;font-weight:600}.external-link-icon{color:#f90;font-size:20px;font-weight:700}.instructions-list{flex-direction:column;gap:20px;display:flex}.instruction-step{background:var(--background);border-radius:10px;gap:20px;padding:20px;display:flex}.step-number{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;font-weight:600;display:flex}[data-theme=dark] .step-number{background:linear-gradient(135deg,#d32f2f 0%,#b71c1c 100%)}.step-content h4{margin-bottom:8px;font-size:18px}.step-content p{color:var(--text-secondary);line-height:1.6}.nutrition-disclaimer{background:#fff3cd;border-left:4px solid #ffc107;border-radius:.5rem;margin-bottom:2rem;padding:1.5rem}.nutrition-disclaimer h4{color:#856404;margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.nutrition-disclaimer p{color:#856404;margin:0;font-size:.9rem;line-height:1.6}[data-theme=dark] .nutrition-disclaimer{background:#ffc1071a;border-left-color:#ffc107}[data-theme=dark] .nutrition-disclaimer h4{color:#ffc107}[data-theme=dark] .nutrition-disclaimer p{color:#ffdb8b}.nutrition-section{margin-bottom:30px}.nutrition-section h4{color:var(--text-primary);margin-bottom:15px;font-size:18px}.nutrition-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.nutrition-item{background:var(--background);border-radius:8px;justify-content:space-between;padding:12px 16px;display:flex}.nutrition-label{color:var(--text-secondary);text-transform:capitalize;font-weight:500}.nutrition-value{color:var(--text-primary);font-weight:600}.comment-form{flex-direction:column;gap:12px;margin-bottom:30px;display:flex}.comment-input{border:2px solid var(--border-color);resize:vertical;transition:var(--transition);border-radius:8px;padding:14px;font-size:15px}.comment-input:focus{border-color:var(--primary-color);outline:none}.comment-submit{background:var(--primary-color);color:#fff;border-radius:8px;align-self:flex-end;padding:12px 30px;font-size:15px;font-weight:500}.comment-submit:hover{background:var(--primary-dark)}.comments-list{flex-direction:column;gap:16px;display:flex}.no-comments{text-align:center;color:var(--text-secondary);padding:40px}.comment-item{background:var(--background);border-radius:8px;padding:16px}.comment-header{justify-content:space-between;align-items:flex-start;margin-bottom:8px;display:flex}.comment-author-info{flex-direction:column;gap:4px;display:flex}.comment-author{color:var(--text-primary);font-weight:600}.comment-date{color:var(--text-secondary);font-size:13px}.comment-delete-btn{color:#f44;transition:var(--transition);background:#ff44441a;border-radius:6px;flex-shrink:0;padding:6px 12px;font-size:16px}.comment-delete-btn:hover{color:#fff;background:#f44}.comment-text{color:var(--text-secondary);line-height:1.6}@media (max-width:768px){.modal-overlay{align-items:flex-start;padding:0}.modal-content{border-radius:0;max-height:100vh}.modal-header{flex-direction:column;gap:20px}.modal-image{width:100%;height:200px}.modal-header-info h2{font-size:24px}.modal-body{padding:15px 20px 20px}.section-title{font-size:20px}.macros-grid{grid-template-columns:repeat(3,1fr)}.nutrition-grid{grid-template-columns:1fr}.content-section{margin-bottom:25px}.ingredient-item{flex-wrap:wrap;padding:12px 14px}.ingredient-info{flex-direction:column;align-items:flex-start;gap:8px;min-width:0}.ingredient-name{word-break:break-word;overflow-wrap:break-word}.ingredient-amount{word-break:break-word;white-space:normal;font-size:13px}.ingredient-shop-btn{gap:4px;min-width:60px;padding:6px 10px}.amazon-icon{font-size:16px}.buy-text{font-size:12px}}
.edit-recipe-page{z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0;overflow-y:auto}.edit-recipe-container{background:var(--card-background);border-radius:16px;flex-direction:column;width:100%;max-width:900px;max-height:90vh;animation:.3s ease-out slideUp;display:flex;box-shadow:0 20px 60px #0000004d}.edit-recipe-header{border-bottom:2px solid var(--border-color);justify-content:space-between;align-items:center;padding:30px;display:flex}.edit-recipe-header h1{color:var(--text-primary);margin:0;font-size:28px}.close-btn{background:var(--background);border:2px solid var(--border-color);width:40px;height:40px;color:var(--text-primary);cursor:pointer;transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;font-size:24px;display:flex}.close-btn:hover{background:var(--primary-color);color:#fff;transform:rotate(90deg)}.edit-recipe-form{flex:1;padding:30px;overflow-y:auto}.form-section{margin-bottom:40px}.form-section h2{color:var(--text-primary);border-bottom:2px solid var(--border-color);margin-bottom:20px;padding-bottom:10px;font-size:20px}.form-group{margin-bottom:20px}.form-group label{color:var(--text-primary);margin-bottom:8px;font-size:14px;font-weight:600;display:block}.form-group input,.form-group textarea,.form-group select{border:2px solid var(--border-color);background:var(--background);width:100%;color:var(--text-primary);transition:var(--transition);border-radius:8px;padding:12px;font-size:14px}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--primary-color);outline:none}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:20px;display:grid}.checkbox-group{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.checkbox-label{background:var(--background);border:2px solid var(--border-color);cursor:pointer;transition:var(--transition);border-radius:8px;align-items:center;gap:8px;padding:8px;display:flex}.checkbox-label:hover{border-color:var(--primary-color);transform:translateY(-2px)}.checkbox-label input[type=checkbox]{cursor:pointer;width:auto}.tags-input{gap:10px;margin-bottom:15px;display:flex}.tags-input input{border:2px solid var(--border-color);background:var(--background);color:var(--text-primary);border-radius:8px;flex:1;padding:10px}.tags-list{flex-wrap:wrap;gap:8px;display:flex}.tag{background:var(--primary-color);color:#fff;border-radius:16px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:inline-flex}.tag button{color:#fff;cursor:pointer;width:20px;height:20px;transition:var(--transition);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:18px;display:flex}.tag button:hover{background:#fff3}.ingredient-item,.instruction-item{background:var(--background);border:2px solid var(--border-color);border-radius:8px;margin-bottom:15px;padding:15px}.instruction-item{background:var(--background);border:2px solid var(--border-color);border-radius:8px;grid-template-columns:1fr auto;align-items:start;gap:10px;margin-bottom:15px;padding:15px;display:grid}.instruction-item h4{color:var(--text-primary);grid-column:1/-1;margin:0 0 10px}.instruction-item input,.instruction-item textarea{grid-column:1;width:100%;margin-bottom:10px}.instruction-item .remove-btn{grid-column:2;align-self:center}.add-btn,.remove-btn{cursor:pointer;transition:var(--transition);border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600}.add-btn{background:var(--primary-color);color:#fff}.add-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.remove-btn{color:#fff;background:#f44336}.remove-btn:hover{background:#d32f2f;transform:translateY(-2px)}.form-actions{border-top:2px solid var(--border-color);justify-content:flex-end;gap:15px;padding:20px 0 0;display:flex}.cancel-btn,.save-btn{cursor:pointer;transition:var(--transition);border:none;border-radius:8px;padding:12px 30px;font-size:16px;font-weight:600}.cancel-btn{background:var(--background);color:var(--text-primary);border:2px solid var(--border-color)}.cancel-btn:hover{background:var(--border-color)}.save-btn{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.save-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea4d}[data-theme=dark] .save-btn{background:linear-gradient(135deg,#d32f2f 0%,#b71c1c 100%)}@media (max-width:768px){.edit-recipe-page{padding:10px}.edit-recipe-header{padding:20px}.edit-recipe-header h1{font-size:22px}.edit-recipe-form{padding:20px}.form-row,.checkbox-group{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.cancel-btn,.save-btn{width:100%}}
