.export-modal{max-width:400px}.export-modal h2{margin-bottom:.75rem}.export-format-info{font-size:.95rem;margin-bottom:1.25rem;color:#555}.export-dimensions{display:flex;align-items:flex-end;gap:.75rem;margin-bottom:.75rem}.export-dim-field{flex:1;display:flex;flex-direction:column;gap:.25rem}.export-dim-field label{font-size:.85rem;font-weight:600;color:#444}.export-dim-field input{padding:.5rem;border:1px solid #ccc;border-radius:8px;font-size:1rem;width:100%}.export-dim-x{font-size:1.25rem;color:#888;padding-bottom:.4rem}.export-lock-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#666;margin-bottom:1rem;cursor:pointer}.export-error{background:#ffeaea;color:#c00;padding:.5rem .75rem;border-radius:8px;font-size:.85rem;margin-bottom:.75rem}.export-actions{display:flex;gap:.75rem;justify-content:flex-end}.btn-cancel{background:#e5e7eb;color:#333;border:none;padding:.6rem 1.5rem;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-cancel:hover{background:#d1d5db}.btn-download{background:#2563eb;color:#fff;border:none;padding:.6rem 1.5rem;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-download:hover{background:#1d4ed8}.btn-download:disabled{background:#93c5fd;cursor:not-allowed}@media(max-width:480px){.export-dimensions{flex-direction:column;align-items:stretch}.export-dim-x{text-align:center;padding:0}.export-actions{flex-direction:column}.export-actions button{width:100%;min-height:44px}.export-modal{max-width:100%}}.auth-page{display:flex;justify-content:center;align-items:flex-start;padding:3rem 1rem}.auth-card{background:var(--white);border-radius:var(--border-radius);box-shadow:var(--shadow);padding:2.5rem 2rem;width:100%;max-width:420px}.auth-title{font-size:1.6rem;font-weight:800;color:var(--text-dark);margin-bottom:.25rem;letter-spacing:-.5px}.auth-subtitle{color:var(--text-gray);font-size:.95rem;margin-bottom:1.75rem}.auth-error{background:#fee;color:#c33;border:1px solid #fcc;padding:.75rem 1rem;border-radius:8px;margin-bottom:1.25rem;font-size:.9rem;font-weight:500}.auth-form{display:flex;flex-direction:column;gap:1.1rem}.auth-field{display:flex;flex-direction:column;gap:.35rem}.auth-label{font-size:.9rem;font-weight:600;color:var(--text-dark)}.auth-input{padding:.75rem 1rem;border:3px dashed var(--accent-orange);border-radius:var(--border-radius);font-size:.95rem;font-family:inherit;background:var(--white);color:var(--text-dark);transition:border-color .2s,box-shadow .2s}.auth-input::placeholder{color:var(--gray-medium)}.auth-input:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px #f5a62326}.auth-btn-primary{background:var(--accent-green);color:var(--text-dark);border:none;padding:.85rem 1rem;border-radius:10px;font-size:1rem;font-weight:700;cursor:pointer;margin-top:.4rem;transition:background .2s,transform .1s}.auth-btn-primary:hover:not(:disabled){background:var(--accent-green-dark);transform:translateY(-1px)}.auth-btn-primary:disabled{opacity:.55;cursor:not-allowed}.auth-switch{text-align:center;margin-top:1.5rem;font-size:.9rem;color:var(--text-gray)}.auth-link-btn{background:none;border:none;padding:0;color:var(--text-dark);font-weight:700;font-size:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.auth-link-btn:hover{color:var(--accent-orange)}@media(max-width:480px){.auth-card{padding:1.75rem 1.25rem}}.tag-badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 14px;font-size:.9rem;font-weight:600;line-height:1.4;white-space:nowrap;transition:opacity .15s}.tag-badge-sm{padding:3px 10px;font-size:.78rem}.tag-badge-remove{background:none;border:none;cursor:pointer;font-size:1.1rem;line-height:1;padding:0;margin-left:2px;opacity:.7;transition:opacity .15s;color:inherit;display:inline-flex;align-items:center;justify-content:center}.tag-badge-remove:hover{opacity:1}.tag-input{position:relative}.tag-input-selected{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.tag-input-field{width:100%;padding:.6rem .9rem;border:2px solid var(--gray-light);border-radius:8px;font-size:.9rem;font-family:inherit;background:var(--white);color:var(--text-dark)}.tag-input-field:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px #f5a62326}.tag-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--white);border:1px solid var(--gray-light);border-radius:8px;box-shadow:0 4px 16px #0000001a;z-index:20;max-height:200px;overflow-y:auto;margin-top:4px}.tag-dropdown-item{padding:8px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:.9rem;transition:background .1s}.tag-dropdown-item:hover{background:var(--bg-cream)}.tag-dropdown-item-swatch{width:14px;height:14px;border-radius:50%;flex-shrink:0}.tag-dropdown-create{border-top:1px solid var(--gray-light);color:var(--accent-orange);font-weight:600}.color-picker{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.color-swatch{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .1s,border-color .15s;position:relative}.color-swatch:hover{transform:scale(1.15)}.color-swatch-selected{border-color:var(--text-dark);box-shadow:0 0 0 2px var(--white),0 0 0 4px var(--text-dark)}.color-picker-custom{width:28px;height:28px;border:2px dashed var(--gray-medium);border-radius:50%;cursor:pointer;padding:0;background:none;overflow:hidden}.color-picker-custom input[type=color]{width:40px;height:40px;border:none;padding:0;cursor:pointer;margin:-6px}.tag-manager{margin-top:1.5rem}.tag-manager-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.tag-manager-title{font-size:1.1rem;font-weight:700;color:var(--text-dark)}.tag-manager-list{display:flex;flex-direction:column;gap:8px}.tag-manager-item{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--white);border-radius:8px;box-shadow:var(--shadow)}.tag-manager-item-preview{width:20px;height:20px;border-radius:50%;flex-shrink:0}.tag-manager-item-name{flex:1;font-weight:600;font-size:.9rem}.tag-manager-item-input{flex:1;padding:4px 8px;border:2px solid var(--accent-orange);border-radius:6px;font-size:.9rem;font-family:inherit}.tag-manager-item-input:focus{outline:none;box-shadow:0 0 0 2px #f5a62326}.tag-manager-actions{display:flex;gap:4px}.tag-manager-btn{background:none;border:none;cursor:pointer;font-size:.85rem;padding:4px 8px;border-radius:4px;font-family:inherit;font-weight:600;transition:background .15s}.tag-manager-btn:hover{background:var(--gray-light)}.tag-manager-btn-edit{color:var(--text-gray)}.tag-manager-btn-delete{color:#e74c3c}.tag-manager-btn-save{color:var(--accent-green-dark)}.tag-manager-btn-cancel{color:var(--text-gray)}.tag-manager-empty{text-align:center;color:var(--text-gray);padding:1rem;font-size:.9rem}.tag-manager-create{display:flex;gap:8px;align-items:center;margin-top:12px;padding-top:12px;border-top:1px solid var(--gray-light)}.tag-manager-create-input{flex:1;padding:6px 10px;border:2px solid var(--gray-light);border-radius:8px;font-size:.9rem;font-family:inherit}.tag-manager-create-input:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 2px #f5a62326}.tag-manager-create-btn{background:var(--accent-green);color:var(--text-dark);border:none;padding:6px 14px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;font-family:inherit;white-space:nowrap;transition:background .15s}.tag-manager-create-btn:hover{background:var(--accent-green-dark)}.tag-filter-bar{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:1.25rem;align-items:center}.tag-filter-label{font-size:.85rem;font-weight:600;color:var(--text-gray);margin-right:4px}.tag-filter-chip{display:inline-flex;align-items:center;border-radius:999px;padding:3px 12px;font-size:.8rem;font-weight:600;cursor:pointer;border:2px solid transparent;transition:border-color .15s,opacity .15s;opacity:.6}.tag-filter-chip:hover{opacity:.85}.tag-filter-chip-active{opacity:1;border-color:var(--text-dark)}.tag-filter-clear{background:none;border:none;cursor:pointer;font-size:.8rem;color:var(--text-gray);font-family:inherit;padding:3px 8px;text-decoration:underline}.tag-filter-clear:hover{color:var(--text-dark)}.recipe-card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.recipe-detail-tags{margin-bottom:1.5rem}.recipe-detail-tags-title{font-size:1.05rem;font-weight:700;color:var(--text-dark);margin-bottom:10px}.btn-manage-tags{background:var(--white);color:var(--text-dark);border:2px solid var(--gray-light);padding:6px 14px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;font-family:inherit;transition:border-color .15s,background .15s}.btn-manage-tags:hover{border-color:var(--accent-orange);background:var(--bg-cream)}.tag-manager-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.tag-manager-modal{background:var(--white);border-radius:var(--border-radius);padding:1.5rem;width:100%;max-width:500px;max-height:80vh;overflow-y:auto;box-shadow:0 8px 30px #00000026}.tag-manager-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.tag-manager-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-gray);padding:0;line-height:1}.tag-manager-modal-close:hover{color:var(--text-dark)}@media(max-width:768px){.tag-filter-bar{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px;scrollbar-width:thin}.tag-filter-chip{padding:8px 14px;font-size:.82rem;min-height:44px;display:inline-flex;align-items:center;flex-shrink:0}.tag-filter-clear{padding:8px 12px;min-height:44px;display:inline-flex;align-items:center;flex-shrink:0}.tag-filter-label{flex-shrink:0}.tag-manager-modal-overlay{padding:1rem}.tag-manager-modal{max-width:100%;max-height:85vh}.tag-manager-btn{padding:10px 12px;min-height:44px;font-size:.88rem}.tag-manager-create-btn,.btn-manage-tags{padding:10px 16px;min-height:44px}}.account-page{padding:2rem 1rem;max-width:900px;margin:0 auto}.account-page-title{font-size:1.6rem;font-weight:800;color:var(--text-dark);margin-bottom:1.5rem;letter-spacing:-.5px}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start}.account-card{background:var(--white);border-radius:var(--border-radius);box-shadow:var(--shadow);padding:1.75rem 1.5rem}.account-card-title{font-size:1.15rem;font-weight:700;color:var(--text-dark);margin-bottom:1.25rem}.account-field{margin-bottom:1.1rem}.account-field-label{font-size:.85rem;font-weight:600;color:var(--text-gray);margin-bottom:.3rem}.account-field-value{font-size:.95rem;color:var(--text-dark);font-weight:500}.account-field-readonly{background:#f5f5f5;padding:.6rem .85rem;border-radius:8px;font-size:.95rem;color:var(--text-gray)}.account-name-display{display:flex;align-items:center;gap:.75rem}.account-name-display .account-field-value{flex:1}.account-edit-btn{background:none;border:2px solid var(--accent-orange);color:var(--text-dark);padding:.35rem .85rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s}.account-edit-btn:hover{background:#f5a6231a}.account-name-edit{display:flex;gap:.5rem;align-items:center}.account-name-input{flex:1;padding:.6rem .85rem;border:3px dashed var(--accent-orange);border-radius:var(--border-radius);font-size:.95rem;font-family:inherit;background:var(--white);color:var(--text-dark);transition:border-color .2s,box-shadow .2s}.account-name-input:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px #f5a62326}.account-save-btn{background:var(--accent-green);color:var(--text-dark);border:none;padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:700;cursor:pointer;transition:background .2s}.account-save-btn:hover:not(:disabled){background:var(--accent-green-dark)}.account-save-btn:disabled{opacity:.55;cursor:not-allowed}.account-cancel-btn{background:none;border:2px solid var(--gray-medium);color:var(--text-dark);padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:border-color .2s}.account-cancel-btn:hover{border-color:var(--text-dark)}.account-name-error{color:#c33;font-size:.85rem;margin-top:.35rem}.account-coming-soon{display:inline-block;background:var(--gray-light);color:var(--text-gray);font-size:.75rem;font-weight:700;padding:.2rem .5rem;border-radius:4px;margin-left:.5rem;text-transform:uppercase;letter-spacing:.5px}.account-password-row{display:flex;align-items:center;gap:.5rem}.account-password-btn{background:none;border:2px solid var(--gray-medium);color:var(--text-gray);padding:.35rem .85rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:not-allowed;opacity:.6}.account-logout-btn{margin-top:1rem;background:none;border:2px solid var(--text-dark);color:var(--text-dark);padding:.6rem 1.25rem;border-radius:10px;font-size:.9rem;font-weight:700;cursor:pointer;width:100%;transition:background .2s}.account-logout-btn:hover{background:#0000000d}.account-stat{margin-bottom:1rem}.account-stat-value{font-size:1.5rem;font-weight:800;color:var(--text-dark)}.account-stat-label{font-size:.85rem;color:var(--text-gray)}.account-dashboard-link{background:none;border:none;color:var(--text-dark);font-weight:700;font-size:.9rem;cursor:pointer;text-decoration:underline;text-underline-offset:2px;padding:0}.account-dashboard-link:hover{color:var(--accent-orange)}.account-member-since{font-size:.9rem;color:var(--text-gray);margin-top:.5rem}.account-danger{border:2px solid #e53e3e}.account-danger .account-card-title{color:#e53e3e}.account-danger-text{font-size:.9rem;color:var(--text-gray);margin-bottom:1rem;line-height:1.5}.account-delete-btn{background:#e53e3e;color:#fff;border:none;padding:.6rem 1.25rem;border-radius:10px;font-size:.9rem;font-weight:700;cursor:pointer;transition:background .2s}.account-delete-btn:hover:not(:disabled){background:#c53030}.account-delete-btn:disabled{opacity:.55;cursor:not-allowed}.account-confirm-inline{display:flex;align-items:center;gap:.75rem;margin-top:.75rem}.account-confirm-text{font-size:.9rem;font-weight:600;color:var(--text-dark)}.account-confirm-yes{background:#e53e3e;color:#fff;border:none;padding:.4rem 1rem;border-radius:8px;font-size:.85rem;font-weight:700;cursor:pointer}.account-confirm-yes:hover{background:#c53030}.account-confirm-no{background:none;border:2px solid var(--gray-medium);color:var(--text-dark);padding:.4rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer}.account-confirm-no:hover{border-color:var(--text-dark)}.account-delete-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem}.account-delete-modal{background:var(--white);border-radius:var(--border-radius);padding:2rem 1.75rem;max-width:440px;width:100%;box-shadow:0 8px 30px #00000026}.account-delete-modal-title{font-size:1.2rem;font-weight:800;color:#e53e3e;margin-bottom:.75rem}.account-delete-modal-text{font-size:.9rem;color:var(--text-gray);margin-bottom:1.25rem;line-height:1.5}.account-delete-modal-input{width:100%;padding:.65rem .85rem;border:2px solid #e53e3e;border-radius:8px;font-size:.95rem;font-family:inherit;margin-bottom:1.25rem;box-sizing:border-box}.account-delete-modal-input:focus{outline:none;box-shadow:0 0 0 3px #e53e3e26}.account-delete-modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.account-delete-error{color:#c33;font-size:.85rem;margin-bottom:1rem}.account-loading{text-align:center;padding:3rem 1rem;color:var(--text-gray);font-size:1rem}@media(max-width:768px){.account-grid{grid-template-columns:1fr}.account-edit-btn{padding:.6rem 1rem;min-height:44px}.account-password-btn{min-height:44px;padding:.6rem 1rem}.account-delete-btn{min-height:44px}.account-confirm-yes,.account-confirm-no{min-height:44px;padding:.6rem 1rem}.account-delete-modal-actions{flex-direction:column}.account-delete-modal-actions button{width:100%;min-height:44px}}.home-page{width:100%;overflow-x:hidden}.home-section{padding:80px 24px}.home-section-inner{max-width:1100px;margin:0 auto}.home-section-title{font-size:2rem;font-weight:700;color:var(--text-dark);text-align:center;margin:0 0 12px}.home-section-title--left{text-align:left}.home-section-subtitle{font-size:1.1rem;color:var(--text-gray);text-align:center;margin:0 0 48px}.btn-home-primary{display:inline-flex;align-items:center;gap:6px;background:var(--accent-orange);color:var(--text-dark);font-weight:700;font-size:.95rem;padding:12px 24px;border:none;border-radius:8px;cursor:pointer;transition:background .18s,transform .1s}.btn-home-primary:hover{background:#e8960e;transform:translateY(-1px)}.btn-home-primary--large{font-size:1.05rem;padding:14px 32px}.btn-home-secondary{display:inline-flex;align-items:center;gap:6px;background:transparent;color:var(--text-dark);font-weight:600;font-size:.95rem;padding:12px 20px;border:2px solid var(--gray-light);border-radius:8px;cursor:pointer;transition:border-color .18s,background .18s,transform .1s}.btn-home-secondary:hover{border-color:var(--accent-orange);background:#f5a6230f;transform:translateY(-1px)}.home-hero{display:flex;align-items:center;gap:64px;max-width:1100px;margin:0 auto;padding:72px 24px 80px}.home-hero-text{flex:1;min-width:0}.home-hero-badge{display:inline-block;background:#f5a62326;color:#b07200;font-size:.78rem;font-weight:600;padding:4px 12px;border-radius:20px;margin-bottom:20px;letter-spacing:.02em;text-transform:uppercase}.home-hero-heading{font-size:2.8rem;font-weight:800;line-height:1.15;color:var(--text-dark);margin:0 0 18px}.home-hero-accent{color:var(--accent-orange)}.home-hero-subheading{font-size:1.1rem;line-height:1.65;color:var(--text-gray);margin:0 0 32px;max-width:500px}.home-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.home-hero-note{font-size:.8rem;color:var(--gray-medium);margin:0}.home-hero-visual{flex-shrink:0}.home-hero-visual-label{filter:drop-shadow(0 8px 32px rgba(0,0,0,.14))}.mock-label{background:#fff;border:2px solid #222;width:240px;padding:6px 8px;font-family:Arial Narrow,Arial,sans-serif;font-size:11px;color:#111}.mock-label-title{font-size:28px;font-weight:900;line-height:1;border-bottom:8px solid #111;padding-bottom:4px;margin-bottom:4px}.mock-label-servings{font-size:10px;margin-bottom:2px}.mock-label-serving-size{display:flex;justify-content:space-between;font-weight:700;font-size:11px;border-bottom:4px solid #111;padding-bottom:4px;margin-bottom:0}.mock-label-calories-bar{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:4px solid #111;padding:2px 0 4px}.mock-label-amount-per{font-size:9px;font-weight:400}.mock-label-calories-label{font-size:18px;font-weight:900;line-height:1}.mock-label-calories-value{font-size:36px;font-weight:900;line-height:1}.mock-label-divider{border:none;border-top:1px solid #888;margin:2px 0}.mock-label-divider--thin{border-top-width:1px}.mock-label-divider--thick{border-top:6px solid #111;margin:4px 0}.mock-label-dv-header{text-align:right;font-weight:700;font-size:9px;margin-bottom:2px}.mock-label-row{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid #ccc;padding:1px 0}.mock-label-row--indent .mock-label-row-name{padding-left:12px;font-weight:400;font-size:10px}.mock-label-row-name{font-weight:700;font-size:10.5px}.mock-label-row-right{display:flex;gap:6px;font-size:10px}.mock-label-row-dv{font-weight:700}.mock-label-micronutrients{display:grid;grid-template-columns:1fr 1fr;gap:2px;font-size:9px;margin-top:4px}.home-features{background:#fff;border-top:1px solid rgba(0,0,0,.06);border-bottom:1px solid rgba(0,0,0,.06)}.home-features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.home-feature-card{background:var(--bg-cream);border:1px solid rgba(0,0,0,.07);border-radius:var(--border-radius);padding:28px 24px;transition:box-shadow .18s,transform .12s}.home-feature-card:hover{box-shadow:0 4px 20px #00000017;transform:translateY(-2px)}.home-feature-icon{font-size:2rem;margin-bottom:14px;line-height:1}.home-feature-title{font-size:1rem;font-weight:700;color:var(--text-dark);margin:0 0 8px}.home-feature-desc{font-size:.88rem;line-height:1.6;color:var(--text-gray);margin:0}.home-how{background:var(--bg-cream)}.home-steps{display:flex;align-items:flex-start;gap:0;position:relative}.home-step{flex:1;text-align:center;padding:0 20px;position:relative}.home-step-num{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--accent-orange);color:var(--text-dark);font-size:1.2rem;font-weight:800;margin-bottom:12px}.home-step-icon{font-size:2rem;margin-bottom:12px;line-height:1}.home-step-title{font-size:1rem;font-weight:700;color:var(--text-dark);margin:0 0 8px}.home-step-desc{font-size:.88rem;line-height:1.6;color:var(--text-gray);margin:0}.home-step-arrow{position:absolute;top:20px;right:-12px;font-size:1.4rem;color:var(--gray-medium);z-index:1}.home-examples{background:#fff;border-top:1px solid rgba(0,0,0,.06)}.home-examples-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:40px}.home-example-card{border:1px solid rgba(0,0,0,.1);border-radius:var(--border-radius);overflow:hidden;background:var(--bg-cream);transition:box-shadow .18s}.home-example-card:hover{box-shadow:0 4px 20px #0000001a}.home-example-img-placeholder{background:linear-gradient(135deg,#f8ede0,#fdf5ec);border-bottom:1px solid rgba(0,0,0,.08);height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:16px}.home-example-logo-placeholder{height:80px;width:auto;opacity:.5;object-fit:contain}.home-example-placeholder-note{font-size:.72rem;color:var(--gray-medium);font-style:italic}.home-example-info{padding:16px}.home-example-title{font-size:.95rem;font-weight:700;color:var(--text-dark);margin:0 0 4px}.home-example-meta{font-size:.82rem;color:var(--text-gray);margin:0}.home-examples-cta{text-align:center}.home-about{background:var(--bg-cream);border-top:1px solid rgba(0,0,0,.06)}.home-about-inner{display:flex;gap:64px;align-items:flex-start}.home-about-text{flex:1}.home-about-desc{font-size:.95rem;line-height:1.75;color:var(--text-gray);margin:0 0 16px}.home-about-desc strong{color:var(--text-dark)}.home-about-tech{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.home-tech-badge{background:#fff;border:1px solid var(--gray-light);border-radius:6px;padding:4px 10px;font-size:.78rem;font-weight:600;color:var(--text-dark)}.home-about-team{flex-shrink:0;width:260px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:var(--border-radius);padding:24px;box-shadow:var(--shadow)}.home-about-team-title{font-size:1rem;font-weight:700;color:var(--text-dark);margin:0 0 20px;text-align:center}.home-team-list{display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.home-team-member{display:flex;align-items:center;gap:12px}.home-team-avatar{width:40px;height:40px;border-radius:50%;background:var(--accent-orange);color:var(--text-dark);font-weight:800;font-size:.85rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.home-team-name{font-size:.9rem;font-weight:600;color:var(--text-dark)}.home-team-role{font-size:.78rem;color:var(--text-gray)}.home-team-advisor{font-size:.82rem;color:var(--text-gray);border-top:1px solid var(--gray-light);padding-top:16px;text-align:center}.home-team-advisor-label{font-weight:600;color:var(--text-dark)}.home-cta-section{background:linear-gradient(135deg,#fff8ee,#fef6f0);border-top:1px solid rgba(245,166,35,.2)}.home-cta-inner{text-align:center}.home-cta-title{font-size:2.2rem;font-weight:800;color:var(--text-dark);margin:0 0 12px}.home-cta-subtitle{font-size:1.05rem;color:var(--text-gray);margin:0 0 36px}.home-cta-actions{justify-content:center}.home-footer{background:var(--text-dark);padding:28px 24px}.home-footer-inner{max-width:1100px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.home-footer-brand{display:flex;align-items:center;gap:10px}.home-footer-logo{height:32px;width:auto;filter:brightness(0) invert(1);opacity:.9}.home-footer-name{color:#fff;font-size:.9rem;font-weight:600}.home-footer-links{display:flex;align-items:center;gap:20px;font-size:.82rem;color:#ffffff8c;flex-wrap:wrap}.home-footer-link{color:#ffffffbf;text-decoration:none;font-weight:500;transition:color .15s}.home-footer-link:hover{color:var(--accent-orange)}@media(max-width:900px){.home-hero{flex-direction:column;gap:40px;padding:48px 20px 60px}.home-hero-heading{font-size:2.1rem}.home-hero-visual{display:flex;justify-content:center;width:100%}.home-features-grid{grid-template-columns:repeat(2,1fr)}.home-about-inner{flex-direction:column;gap:32px}.home-about-team{width:100%}.home-examples-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.home-section{padding:56px 16px}.home-section-title{font-size:1.6rem}.home-features-grid{grid-template-columns:1fr}.home-steps{flex-direction:column;align-items:center}.home-step{width:100%;max-width:360px;padding:0;margin-bottom:24px}.home-step-arrow{display:none}.home-examples-grid{grid-template-columns:1fr}.home-cta-title{font-size:1.7rem}.home-footer-inner{flex-direction:column;text-align:center}.home-footer-links{justify-content:center}}@media print{.home-page{display:none}}:root{--bg-cream: #fef6f0;--accent-orange: #f5a623;--accent-green: #a8c5a0;--accent-green-dark: #7fb077;--table-orange: #f5d4a0;--table-header-orange: #e8b868;--text-dark: #2d2d2d;--text-gray: #666;--gray-light: #d5d5d5;--gray-medium: #b0b0b0;--white: #ffffff;--border-radius: 12px;--shadow: 0 2px 12px rgba(0, 0, 0, .06)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-cream);color:var(--text-dark);overflow-x:hidden}.app{min-height:100vh}.header{background:var(--bg-cream);padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eee}.header-left{display:flex;align-items:center;gap:.75rem}.header-logo{height:70px;width:auto}.header-title{font-size:1.6rem;font-weight:800;color:var(--text-dark);letter-spacing:-.5px}.header-nav{display:flex;gap:2.5rem}.nav-link{text-decoration:none;color:var(--text-dark);font-size:1.1rem;font-weight:600;padding-bottom:4px;border-bottom:3px solid transparent;transition:border-color .2s}.nav-link:hover{border-bottom-color:var(--accent-orange)}.nav-link.active{border-bottom-color:var(--text-dark)}.header-home-btn{background:none;border:none;cursor:pointer;font-family:inherit;padding:0}.nav-btn{background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-family:inherit;padding:0 0 4px;line-height:inherit;vertical-align:baseline}.hamburger-btn{display:none;background:none;border:none;cursor:pointer;padding:8px;flex-direction:column;gap:5px}.hamburger-line{display:block;width:24px;height:3px;background:var(--text-dark);border-radius:2px;transition:transform .2s,opacity .2s}.container{max-width:900px;margin:2rem auto;padding:0 1rem}.page-title{text-align:center;font-size:1.8rem;font-weight:800;color:var(--text-dark);margin-bottom:1.25rem}.step-indicator{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:2rem}.step-wrapper{display:flex;align-items:center;gap:.5rem}.step-pill{padding:.5rem 1.5rem;border-radius:20px;font-size:.95rem;font-weight:600;background:var(--gray-light);color:var(--text-dark);transition:background .2s}.step-pill.active{background:var(--accent-green);color:var(--text-dark)}.step-pill.completed{background:var(--accent-green);opacity:.7;color:var(--text-dark)}.step-arrow{font-size:1.4rem;color:var(--gray-medium);margin:0 .25rem}.error{background:#fee;color:#c33;border:1px solid #fcc;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-weight:500}.recipe-input{background:transparent;padding:0}.recipe-textarea{width:100%;padding:1rem 1.25rem;border:3px dashed var(--accent-orange);border-radius:var(--border-radius);font-family:inherit;font-size:1rem;resize:vertical;margin-bottom:1.25rem;min-height:180px;background:var(--white);color:var(--text-dark)}.recipe-textarea::placeholder{color:var(--gray-medium)}.recipe-textarea:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px #f5a62326}.input-row{display:flex;gap:1rem;margin-bottom:1.5rem;justify-content:center}.field{flex:0 1 280px}.field input{width:100%;padding:.75rem 1rem;border:3px dashed var(--accent-orange);border-radius:30px;font-size:.95rem;font-family:inherit;background:var(--white);color:var(--text-dark);text-align:center}.field input::placeholder{color:var(--gray-medium)}.field input:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px #f5a62326}.button-center{display:flex;justify-content:center}.btn-create{background:var(--accent-green);color:var(--text-dark);border:none;padding:.85rem 3rem;border-radius:10px;font-size:1.15rem;font-weight:700;cursor:pointer;transition:background .2s,transform .1s}.btn-create:hover:not(:disabled){background:var(--accent-green-dark);transform:translateY(-1px)}.btn-create:disabled{opacity:.5;cursor:not-allowed}.input-actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;margin-bottom:1.25rem}.input-action-btn{display:inline-flex;align-items:center;gap:.4rem;background:none;border:2px solid var(--gray-light);border-radius:8px;padding:.5rem .85rem;font-family:inherit;font-size:.85rem;font-weight:600;color:var(--text-gray);cursor:pointer;transition:border-color .2s,color .2s,background .2s;min-width:44px;min-height:44px}.input-action-btn:hover{border-color:var(--accent-orange);color:var(--text-dark)}.input-action-btn:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.mic-btn--listening{border-color:var(--accent-orange);color:var(--accent-orange);background:#f5a62314;animation:mic-pulse 1.5s ease-in-out infinite}@keyframes mic-pulse{0%,to{box-shadow:0 0 #f5a6234d}50%{box-shadow:0 0 0 8px #f5a62300}}.voice-error{background:#fee;color:#c33;border:1px solid #fcc;padding:.5rem .75rem;border-radius:8px;margin-bottom:1rem;font-size:.85rem;font-weight:500}.ingredient-review{background:transparent;padding:0}.review-table-wrapper{background:var(--table-orange);border-radius:var(--border-radius);padding:1.5rem;margin-bottom:1.5rem;box-shadow:var(--shadow)}.review-table{width:100%;border-collapse:collapse}.review-table thead th{font-weight:700;font-size:1rem;padding:.75rem 1rem;text-align:left;color:var(--text-dark);border-bottom:2px solid rgba(0,0,0,.15)}.review-table tbody td{padding:.75rem 1rem;border-bottom:1px solid rgba(0,0,0,.1);font-size:.95rem;vertical-align:middle}.review-table tbody tr:last-child td{border-bottom:none}.ingredient-name{font-weight:600;text-transform:capitalize}.usda-select{padding:.5rem .75rem;border:1px solid rgba(0,0,0,.15);border-radius:8px;font-size:.85rem;background:var(--gray-light);color:var(--text-dark);cursor:pointer;max-width:200px}.usda-select:focus{outline:none;box-shadow:0 0 0 2px var(--accent-orange)}.no-match{color:#c33;font-style:italic;font-size:.85rem}.status-cell{text-align:center;font-size:1.4rem}.status-ok,.status-err{display:inline-flex;align-items:center;justify-content:center}.compliance-notice{margin-bottom:1rem;padding:.6rem 1rem;background:#fff3e0;border-left:4px solid #fb8c00;border-radius:4px;font-size:.85rem}.excluded-warning{margin-top:1rem;margin-bottom:1.5rem;padding:.75rem 1rem;background:#fff8e1;border:1px solid #ffe082;border-radius:8px;font-size:.9rem}.excluded-warning ul{margin-top:.4rem;margin-left:1.25rem}.excluded-warning li{margin-bottom:.2rem}.button-row{display:flex;gap:1rem;justify-content:center}.btn-secondary{background:var(--gray-light);color:var(--text-dark);border:none;padding:.8rem 2rem;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-secondary:hover{background:var(--gray-medium)}.btn-primary{background:var(--accent-green);color:var(--text-dark);border:none;padding:.8rem 2rem;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s,transform .1s}.btn-primary:hover:not(:disabled){background:var(--accent-green-dark);transform:translateY(-1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.nutrition-display{background:transparent;padding:0}.results-layout{display:flex;gap:2.5rem;align-items:flex-start;margin-top:1rem}.label-container{flex:1;display:flex;justify-content:center}.nutrition-label{border:2px solid #000;padding:6px 8px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;width:380px;background:#fff;font-size:13px;line-height:1.3;color:#000}.nf-title{font-size:2rem;font-weight:900;letter-spacing:-1px;border-bottom:1px solid #000;padding-bottom:2px;margin-bottom:2px}.nf-servings-info{font-size:.85rem;padding-bottom:4px}.nf-serving-size-row{display:flex;justify-content:space-between;font-size:.95rem}.nf-bold{font-weight:700}.nf-thick-bar{height:8px;background:#000;margin:2px 0}.nf-medium-bar{height:4px;background:#000;margin:2px 0}.nf-thin-bar{height:1px;background:#000;margin:2px 0}.nf-cal-table{width:100%;border-collapse:collapse}.nf-cal-table th{font-weight:400;font-size:.75rem;text-align:right;padding:0 8px 2px;background:transparent;border-bottom:none}.nf-col-head{text-align:right}.nf-cal-row td{padding:0;border-bottom:none}.nf-cal-label{font-weight:900;font-size:1.1rem}.nf-cal-value{font-weight:900;font-size:1.5rem;text-align:right;padding-right:8px!important}.nf-nutrients-table{width:100%;border-collapse:collapse}.nf-nutrients-table th{font-weight:400;font-size:.7rem;text-align:right;padding:0 4px 2px;background:transparent;border-bottom:none}.nf-dv-head{font-weight:700;text-align:right}.nf-nutrients-table td{padding:2px 4px;border-bottom:1px solid #000;font-size:.82rem;text-align:left}.nf-nutrients-table td:nth-child(2),.nf-nutrients-table td:nth-child(4){text-align:right;white-space:nowrap}.nf-dv{text-align:right!important;font-weight:700}.nf-bold-row td:first-child{font-weight:700}.nf-vitamins-table td{border-bottom:1px solid #000}.nf-footnote{font-size:.7rem;line-height:1.3;margin-top:4px;color:#333}.results-actions{display:flex;flex-direction:column;align-items:center;gap:1.25rem;margin-top:1rem;flex-shrink:0}.btn-start-new{background:var(--accent-orange);color:var(--text-dark);border:none;padding:1rem 2.5rem;border-radius:14px;font-size:1.25rem;font-weight:700;cursor:pointer;transition:background .2s,transform .1s;white-space:nowrap}.btn-start-new:hover{background:#e09518;transform:translateY(-1px)}.btn-save-label{background:var(--accent-green);color:var(--text-dark);border:none;padding:1rem 2.5rem;border-radius:14px;font-size:1.25rem;font-weight:700;cursor:pointer;transition:background .2s,transform .1s;white-space:nowrap}.btn-save-label:hover{background:var(--accent-green-dark);transform:translateY(-1px)}.view-saved-link{color:#2d6da3;font-size:1rem;text-decoration:underline;cursor:pointer}.view-saved-link:hover{color:#1a4d7a}.skipped-ingredients{margin-top:1.5rem;background:#fff8e1;border:1px solid #ffe082;border-radius:var(--border-radius);padding:1rem 1.25rem}.skipped-ingredients h3{margin-bottom:.5rem;font-size:1rem}.skipped-ingredients ul{margin-left:1.25rem;margin-top:.5rem}.skipped-ingredients li{margin-bottom:.25rem;font-size:.9rem}.allergens-warning{margin-top:1.5rem;padding:.75rem 1rem;background:#fff3cd;color:#856404;border:1px solid #ffeeba;border-radius:var(--border-radius)}.allergens-warning-title{margin:0 0 .5rem;font-size:1.1rem}.allergens-warning-text{margin:0;font-size:.95rem}.print-row{display:flex;justify-content:center;margin-top:1.5rem}.btn-print{background:var(--gray-light);color:var(--text-dark);border:none;padding:.75rem 2.5rem;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-print:hover{background:var(--gray-medium)}.btn-download-pdf{background:#2563eb;color:#fff;border:none;padding:1rem 2.5rem;border-radius:14px;font-size:1.25rem;font-weight:700;cursor:pointer;transition:background .2s,transform .1s;white-space:nowrap}.btn-download-pdf:hover{background:#1d4ed8;transform:translateY(-1px)}.btn-edit-label{background:var(--accent-orange);color:var(--text-dark);border:none;padding:.75rem 2rem;border-radius:14px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:background .2s,transform .1s;white-space:nowrap}.btn-edit-label:hover{background:#e09518;transform:translateY(-1px)}.edit-fields{display:flex;flex-direction:column;gap:.75rem;width:100%}.edit-field-label{display:flex;flex-direction:column;font-size:.9rem;font-weight:600;color:var(--text-dark);gap:.25rem}.edit-field-input{width:100%;padding:.6rem .75rem;border:3px dashed var(--accent-orange);border-radius:var(--border-radius);font-size:.95rem;font-family:inherit;background:var(--white);color:var(--text-dark);text-align:center}.edit-field-input:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px #f5a62326}.edit-toggle-label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:var(--text-dark);cursor:pointer}.edit-toggle-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent-orange);cursor:pointer}.edit-textarea{width:100%;padding:.6rem .75rem;border:3px dashed var(--accent-orange);border-radius:var(--border-radius);font-size:.9rem;font-family:inherit;background:var(--white);color:var(--text-dark);resize:vertical;min-height:50px}.edit-textarea:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px #f5a62326}.label-preview-wrapper{flex:1}.format-selector{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.format-card{flex:1;min-width:120px;background:#f8f9fa;border:2px solid #e0e0e0;border-radius:10px;padding:.6rem .75rem;cursor:pointer;text-align:left;transition:border-color .2s,background .2s;display:flex;flex-direction:column;gap:.15rem}.format-card:hover{border-color:#90caf9;background:#f0f7ff}.format-card-selected{border-color:#2563eb;background:#eff6ff}.format-card-name{font-weight:700;font-size:.85rem;color:#222}.format-card-desc{font-size:.7rem;color:#888}.label-format-vertical .nutrition-label{width:340px}.nf-single-col td:nth-child(2){text-align:right;white-space:nowrap}.nf-single-col .nf-amt{text-align:right;white-space:nowrap}.nf-calories-section{margin-bottom:0}.nf-calories-header{font-size:.7rem;font-weight:700}.nf-calories-row{display:flex;justify-content:space-between;align-items:baseline}.nf-calories-label{font-weight:900;font-size:1.1rem}.nf-calories-value{font-weight:900;font-size:1.5rem}.label-format-tabular .nutrition-label{width:520px}.nf-tabular-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:2px}.nf-tabular-servings{font-size:.75rem;text-align:right;line-height:1.3}.nf-tabular-cal-row{display:flex;align-items:baseline;gap:.5rem;font-size:.85rem}.nf-tabular-cal-header{font-size:.7rem;font-weight:700}.nf-tabular-vitamins{font-size:.8rem;padding:2px 0}.nf-htable{width:100%;border-collapse:collapse}.nf-htable td,.nf-htable th{font-size:.78rem;line-height:1.2;padding:2px 4px;vertical-align:top;border-bottom:1px solid #000}.nf-htable .nf-hcol{border-left:1px solid #000;padding-left:6px}.nf-htable .nf-hname{font-weight:700}.nf-htable .nf-hsub{padding-left:10px}.nf-htable .nf-hdv{text-align:right;font-weight:700;white-space:nowrap}.label-format-linear .nutrition-label{width:420px}.nf-linear-title{font-size:1.3rem;font-weight:900;margin-bottom:2px}.nf-linear-servings{font-size:.8rem;margin-bottom:4px}.nf-linear-nutrients{font-size:.82rem;line-height:1.6}.label-format-dual_column .nutrition-label{width:400px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-card{background:var(--white);border-radius:var(--border-radius);padding:2rem;width:100%;max-width:420px;box-shadow:0 8px 30px #00000026}.modal-title{font-size:1.4rem;font-weight:700;margin-bottom:1.25rem;color:var(--text-dark)}.modal-label{display:block;font-size:.9rem;font-weight:600;margin-bottom:.4rem;color:var(--text-dark)}.modal-input{width:100%;padding:.75rem 1rem;border:2px solid var(--gray-light);border-radius:8px;font-size:1rem;font-family:inherit;margin-bottom:1.25rem}.modal-input:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px #f5a62326}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.howto-trigger{display:block;margin:0 auto 1.5rem;background:none;border:none;color:var(--accent-orange);font-size:.95rem;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.howto-trigger:hover{color:#e0951e}.howto-modal{max-width:520px}.howto-header{display:flex;justify-content:space-between;align-items:flex-start}.howto-close{background:none;border:none;font-size:1.6rem;color:var(--text-gray);cursor:pointer;line-height:1;padding:0 4px}.howto-close:hover{color:var(--text-dark)}.howto-steps{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.howto-step{display:flex;gap:.75rem;align-items:flex-start}.howto-step-num{flex-shrink:0;width:28px;height:28px;background:var(--accent-orange);color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;margin-top:2px}.howto-step p{margin:4px 0 0;font-size:.9rem;color:var(--text-gray)}.howto-example{background:#f8f8f5;border-radius:8px;padding:1rem;margin-bottom:1.5rem}.howto-example-title{font-size:.9rem;font-weight:700;margin-bottom:.5rem}.howto-example-text{font-family:Courier New,Courier,monospace;font-size:.82rem;line-height:1.6;color:var(--text-dark);white-space:pre-wrap;margin:0}.howto-example-note{margin:.75rem 0 0;font-size:.8rem;color:var(--text-gray);font-style:italic}.howto-got-it{width:100%}.dashboard{max-width:900px;margin:0 auto}.dashboard-filter-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.75rem}.dashboard-loading{text-align:center;color:var(--text-gray);padding:3rem 0}.dashboard-empty{text-align:center;padding:4rem 1rem}.dashboard-empty-text{font-size:1.15rem;color:var(--text-gray);margin-bottom:1.5rem}.btn-create-first{background:var(--accent-orange);color:var(--white);border:none;padding:.75rem 2rem;font-size:1.1rem;font-weight:700;border-radius:var(--border-radius);cursor:pointer;transition:background .2s}.btn-create-first:hover{background:#e0951e}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.25rem}.recipe-card{background:var(--white);border-radius:var(--border-radius);padding:1.25rem;box-shadow:var(--shadow);cursor:pointer;transition:transform .15s,box-shadow .15s;position:relative}.recipe-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000001a}.recipe-card-new{border:3px dashed var(--accent-orange);background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:140px}.recipe-card-new:hover{background:#f5a6230f}.recipe-card-new .recipe-card-title{color:var(--accent-orange)}.recipe-card-new-icon{font-size:2.5rem;font-weight:300;color:var(--accent-orange);line-height:1}.recipe-card-title{font-size:1.1rem;font-weight:700;margin-bottom:.5rem;color:var(--text-dark)}.recipe-card-meta{display:flex;gap:1rem;font-size:.85rem;color:var(--text-gray);margin-bottom:.5rem}.recipe-card-date{font-size:.8rem;color:var(--gray-medium)}.recipe-card-view{position:absolute;bottom:.75rem;right:.75rem;background:var(--accent-green);border:none;color:var(--text-dark);font-size:.8rem;cursor:pointer;padding:.35rem .75rem;border-radius:6px;font-family:inherit;font-weight:600;transition:background .2s}.recipe-card-view:hover{background:var(--accent-green-dark)}.recipe-detail{max-width:900px;margin:0 auto}.btn-back-link{background:none;border:none;color:#2d6da3;font-size:1rem;font-family:inherit;cursor:pointer;padding:0;margin-bottom:1rem;font-weight:600}.btn-back-link:hover{color:#1a4d7a;text-decoration:underline}.detail-actions{display:flex;gap:1rem;justify-content:center;margin-top:1.5rem;margin-bottom:2rem}.btn-danger{background:#e74c3c;color:#fff;border:none;padding:.8rem 2rem;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s;font-family:inherit}.btn-danger:hover:not(:disabled){background:#c0392b}.btn-danger:disabled{opacity:.5;cursor:not-allowed}@media print{.header,.step-indicator,.results-actions,.button-row,.button-center,.skipped-ingredients,.print-row,.page-title{display:none!important}.results-layout{justify-content:center}.nutrition-label{margin:0 auto}body{background:#fff}}@media(max-width:768px){.header{flex-wrap:wrap;gap:0;padding:.75rem 1rem}.hamburger-btn{display:flex}.header-nav{display:none;flex-direction:column;width:100%;gap:0;padding-top:.75rem;border-top:1px solid #eee;margin-top:.75rem}.header-nav.nav-open{display:flex}.header-nav .nav-link{padding:.75rem 0;border-bottom:1px solid #f0f0f0;min-height:44px;display:flex;align-items:center}.header-nav .nav-link:last-child{border-bottom:none}.header-logo{height:48px}.header-title{font-size:1.25rem}.review-table-wrapper{padding:.75rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.review-table thead th{padding:.5rem .4rem;font-size:.85rem}.review-table tbody td{padding:.5rem .4rem;font-size:.82rem}.usda-select{max-width:140px;font-size:.75rem;padding:.4rem .5rem}.label-format-tabular .nutrition-label,.label-format-linear .nutrition-label,.label-format-dual_column .nutrition-label,.label-format-vertical .nutrition-label{width:100%;max-width:380px}.format-selector{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.format-card{min-width:0}.modal-overlay{padding:1rem}.modal-card{max-width:100%;padding:1.5rem;max-height:90vh;overflow-y:auto}.howto-modal{max-width:100%}.recipe-card-view{padding:.6rem 1rem;font-size:.85rem;min-height:44px}.howto-close{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.view-saved-link,.btn-back-link{min-height:44px;display:inline-flex;align-items:center}.results-layout{flex-direction:column;align-items:center}.nutrition-label{width:100%;max-width:380px}.input-actions{justify-content:center}.input-row{flex-direction:column;align-items:center}.field{flex:none;width:100%;max-width:300px}.button-row,.detail-actions{flex-direction:column;align-items:center}.page-title{font-size:1.4rem}}@media(max-width:480px){.label-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.step-indicator{gap:.25rem}.step-pill{padding:.4rem .85rem;font-size:.82rem}.step-arrow{font-size:1rem;margin:0}.page-title{font-size:1.25rem}.input-action-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}@media(max-width:375px){.step-pill{padding:.35rem .65rem;font-size:.78rem}.step-arrow{font-size:.9rem}.header-title{font-size:1.1rem}}@keyframes spin{to{transform:rotate(360deg)}}.spinner{display:inline-block;width:28px;height:28px;border:3px solid var(--gray-light);border-top-color:var(--accent-orange);border-radius:50%;animation:spin .7s linear infinite}.spinner-sm{width:16px;height:16px;border-width:2px;vertical-align:middle;margin-right:6px}.loading-container{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:4rem 1rem;color:var(--text-gray);font-size:1rem}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.recipe-input,.ingredient-review,.nutrition-display{animation:fadeSlideIn .3s ease-out}
