@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;700;900&display=swap);.App{margin:0 auto;max-width:1100px;padding:2rem}@media (max-width:768px){.App{padding:1rem}.dashboard-top-grid,.manager-grid,.tag-category-grid{grid-template-columns:1fr!important}.account-menu-container{display:flex;justify-content:flex-end;width:100%}.account-dropdown{left:0;margin-left:-1rem;max-width:calc(100% - 2rem);right:auto;top:100%;width:100%}.account-menu-trigger{margin-left:auto}}.btn{border:1px solid #0000;border-radius:10px;cursor:pointer;display:inline-block;font-family:Inter,sans-serif;font-size:1rem;font-weight:700;padding:.8rem 1.6rem;text-align:center;transition:all .2s ease-out}.btn:active{transform:scale(.97)}.btn-primary{background-color:var(--primary-color);box-shadow:0 1px 2px #0000000d;color:#fff}.btn-primary:hover{background-color:var(--primary-hover);box-shadow:var(--shadow-md);color:#fff;text-decoration:none}.btn-secondary{background-color:var(--card-color);border:1px solid var(--border-color);box-shadow:0 1px 2px #0000000d;color:var(--text-primary)}.btn-secondary:hover{background-color:#fafafa;border-color:#d1d5db;color:var(--text-primary);text-decoration:none}.btn-danger{background-color:var(--danger-color);box-shadow:0 1px 2px #0000000d;color:#fff}.btn-danger:hover{background-color:var(--danger-hover);color:#fff}.btn-sm{font-size:.9rem;padding:.5rem 1rem}.form-container{background:var(--card-color);border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;margin:4rem auto;max-width:480px;padding:2.5rem}.form-container h1,.form-container h2{border-bottom:2px solid var(--border-color);color:var(--text-primary);font-weight:900;letter-spacing:-1px;margin-bottom:2rem;margin-top:0;padding-bottom:1rem;text-align:center}.form-group{display:flex;flex-direction:column;margin-bottom:1.5rem}.form-group label{color:var(--text-secondary);font-size:.9rem;font-weight:700;margin-bottom:.5rem}input[type=email],input[type=password],input[type=text],input[type=url],textarea{background-color:var(--background-main);border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-family:Inter,sans-serif;font-size:1rem;padding:.9rem;transition:all .2s ease}.category-filter:focus,input:focus,textarea:focus{background-color:var(--card-color);border-color:#ec4899;box-shadow:0 0 0 3px #ec48991a;outline:none}textarea{min-height:100px;resize:vertical}.form-error{background:#dc26260d;border:1px solid var(--danger-color);border-radius:8px;color:var(--danger-color);margin-bottom:1rem;padding:.75rem;text-align:center}.form-actions{border-top:1px solid var(--border-color);display:flex;gap:1rem;justify-content:flex-end;margin-top:2.5rem;padding-top:1.5rem}.file-input-wrapper{background-color:var(--background-main);border:1px dashed var(--border-color);border-radius:8px;padding:.5rem;transition:border-color .2s}.file-input-wrapper:hover{border-color:var(--primary-color)}.recipe-detail-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr}.dashboard-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1.5rem}.dashboard-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#4f46e5,#ec4899);-webkit-background-clip:text;font-weight:900;letter-spacing:-1px;margin:0}.dashboard-top-grid{grid-gap:2rem;align-items:stretch;display:grid;gap:2rem;grid-template-columns:1fr 1fr;margin-bottom:2rem}.dashboard-top-grid .form-container{height:100%;margin:0;max-width:none;width:100%}.action-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.action-card{align-items:center;background-color:#fff;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 1px 2px #0000000d;color:var(--text-primary);display:flex;flex-direction:column;font-size:.95rem;font-weight:700;justify-content:center;padding:1.5rem 1rem;text-align:center;text-decoration:none;transition:all .2s ease}.action-card:hover{border-color:var(--primary-color);box-shadow:0 10px 15px -3px #0000001a;color:var(--primary-color);transform:translateY(-3px)}.action-icon{font-size:2rem;margin-bottom:.5rem}.action-card.magic{background:linear-gradient(135deg,#f5f3ff,#ede9fe);border-color:#8b5cf6;color:#6d28d9}.action-card.magic:hover{box-shadow:0 10px 20px -3px #8b5cf64d}.card-tab-container{border-bottom:1px solid var(--border-color);display:flex;margin-bottom:1.5rem}.card-tab{border-bottom:3px solid #0000;color:var(--text-secondary);cursor:pointer;font-weight:700;margin-bottom:-2px;padding:.75rem 1.25rem}.card-tab:hover{color:var(--text-primary)}.card-tab.active{border-bottom-color:var(--primary-color);color:var(--primary-color)}@media (max-width:768px){.App{padding:1rem}.dashboard-top-grid,.manager-grid{grid-template-columns:1fr!important}.form-container>div[style*=grid-template-columns]{display:flex!important;flex-direction:column!important;gap:.5rem!important}.tag-category-grid{gap:.5rem;width:100%}.recipe-card .recipe-detail-image-container{height:200px}.recipe-card:has(.recipe-detail-image-container) .recipe-card-content{background:var(--card-color);padding-bottom:1.5rem;padding-top:1rem;position:relative;text-align:left}.recipe-card:has(.recipe-detail-image-container) .recipe-detail-image-container:after{display:none}.recipe-card:has(.recipe-detail-image-container) .recipe-card-content h3{color:var(--text-primary);font-size:1.2rem;margin-top:.5rem;text-shadow:none}}.recipe-list-header{border-bottom:1px solid var(--border-color);font-weight:900;letter-spacing:-.5px;margin-top:3rem;padding-bottom:10px}.recipe-card{background:var(--card-color);border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-md);margin-bottom:2rem;overflow:hidden;position:relative;transition:box-shadow .2s ease,transform .2s ease}.recipe-card:hover{box-shadow:0 10px 15px -3px #00000012;transform:translateY(-5px)}.recipe-card-content{padding:1.5rem 2rem 2rem}.recipe-card .recipe-detail-image-container{border-radius:16px 16px 0 0;height:220px;overflow:hidden;width:100%}.recipe-card .recipe-detail-image-container img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.recipe-card:hover .recipe-detail-image-container img{transform:scale(1.05)}.recipe-card:has(.recipe-detail-image-container) .recipe-detail-image-container:after{background:linear-gradient(0deg,#000000e6,#0000);border-radius:0 0 16px 16px;bottom:0;content:"";height:80%;left:0;position:absolute;right:0;z-index:1}.recipe-card:has(.recipe-detail-image-container) .recipe-card-content{background:none;border:none;bottom:0;box-shadow:none;left:0;padding-top:1.5rem;position:absolute;right:0;z-index:2}.recipe-card:has(.recipe-detail-image-container) .recipe-card-content h3{color:#fff;text-shadow:0 2px 4px #00000080}.recipe-card:has(.recipe-detail-image-container) .recipe-card-content p{color:#f3f4f6;font-weight:500;text-shadow:0 1px 3px #000c}.recipe-detail-container{background:var(--card-color);border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-md);overflow:hidden;padding:0}.recipe-hero-image{background-color:#eee;height:400px;position:relative;width:100%}.recipe-hero-image img{height:100%;object-fit:cover;width:100%}.recipe-content-wrapper{padding:2.5rem 3rem}.detail-action-bar{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.action-buttons{display:flex;gap:.5rem}.recipe-detail-content{grid-gap:3rem;align-items:start;display:grid;gap:3rem;grid-template-columns:1fr 2fr;margin-top:2rem}.recipe-detail-ingredients{background-color:initial;border:none;height:-webkit-fit-content;height:fit-content;padding:0}.ingredient-list{background-color:#f9fafb;border:1px solid var(--border-color);border-radius:16px;padding:2rem}.recipe-detail-ingredients h3,.recipe-detail-instructions h3{color:var(--primary-color);font-size:1.5rem;font-weight:800;margin-bottom:1.75rem;margin-top:0}.instruction-list li{color:var(--text-primary);font-size:1.1rem;line-height:1;margin-bottom:1.75rem;padding-left:1rem}.instruction-list li::marker{color:var(--primary-color);font-size:1.3rem;font-weight:900}.recipe-detail-instructions{margin-top:2rem}.recipe-detail-ingredients h3{margin-bottom:.5rem}.ingredient-list{list-style:none;margin:0;padding:0}.ingredient-list li{align-items:flex-start;border-bottom:1px dashed var(--border-color);color:var(--text-primary);cursor:pointer;display:flex;gap:10px;padding:.75rem 0;transition:background-color .2s ease,opacity .2s ease}.ingredient-list li.checked{color:#9ca3af;text-decoration:line-through}.check-circle{align-items:center;border:2px solid #d1d5db;border-radius:50%;color:#fff;display:flex;font-size:14px;font-weight:700;height:24px;justify-content:center;min-width:24px}.check-circle.checked{background-color:#10b981;border-color:#10b981}.recipe-notes{background:#fffbeb;border:3px solid #fcd34d;border-radius:12px;box-shadow:0 5px 10px #fcd34d66;margin-top:3rem;padding:1.5rem;transition:all .2s ease}.recipe-notes h4{border-bottom:1px dashed #fcd34d;color:#92400e;font-weight:800;margin-bottom:.75rem;margin-top:0;padding-bottom:.5rem}.recipe-notes pre{color:#92400e;font-family:Inter,sans-serif;margin:0;white-space:pre-wrap}@media (max-width:768px){.detail-action-bar{align-items:flex-start}.action-buttons{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr;width:100%}.action-buttons .cook-btn{grid-column:span 2}.recipe-detail-content{grid-template-columns:1fr!important}.recipe-hero-image{border-radius:0;height:250px;margin-left:-1rem;margin-right:-1rem;width:calc(100% + 2rem)}.recipe-content-wrapper{padding:1.5rem 1rem}.detail-action-bar{flex-direction:column;gap:1rem;margin-bottom:1.5rem;width:100%}.recipe-action-wrapper{align-items:center;flex-direction:column;gap:1rem;margin:0 auto}.recipe-action-wrapper,.recipe-action-wrapper .btn-lg{max-width:400px;width:100%}.admin-button-group{grid-gap:.5rem;align-items:center;display:grid;gap:.5rem;grid-template-columns:1fr 1fr 1fr}}.recipe-action-wrapper{align-items:center;display:flex;gap:1.5rem}.admin-button-group{display:flex;flex-shrink:0;gap:.5rem}.landing-page-wrapper{align-items:center;background:linear-gradient(135deg,#fdfbf7,#eef2ff);display:flex;height:100vh;justify-content:center;left:0;overflow:hidden;position:fixed;top:0;width:100vw;z-index:50}.landing-grid{grid-gap:4rem;align-items:center;display:grid;gap:4rem;grid-template-columns:1fr 1fr;max-width:1200px;padding:2rem;width:100%;z-index:1}.landing-text-section{max-width:500px}.hero-title{color:var(--text-primary);font-size:4.5rem;font-weight:900;letter-spacing:-2px;line-height:1.1;margin-bottom:1.5rem}.hero-title .highlight{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#4f46e5,#ec4899);-webkit-background-clip:text}.hero-subtitle{color:var(--text-secondary);font-size:1.25rem;line-height:1.6;margin-bottom:2.5rem}.landing-cta-group{display:flex;gap:1rem;margin-bottom:2.5rem}.btn-lg{font-size:1.1rem;padding:1rem 2rem}.feature-pills{display:flex;flex-wrap:wrap;gap:1rem}.pill{background:#fff9;border:1px solid #0000000d;border-radius:20px;color:var(--text-secondary);font-size:.9rem;font-weight:600;padding:.5rem 1rem}.landing-visual-section{align-items:center;display:flex;height:500px;justify-content:center;min-width:300px;position:relative}.mock-card{background:#fff;border:1px solid #fffc;border-radius:20px;box-shadow:0 20px 40px -5px #0000001a,0 10px 20px -5px #0000000d;display:flex;flex-direction:column;gap:1rem;padding:1.5rem;position:absolute}.mock-img-placeholder{background:#f3f4f6;border-radius:12px;font-size:4rem;padding:1rem;text-align:center}.mock-emoji{font-size:3rem;text-align:center}.mock-lines{display:flex;flex-direction:column;gap:.5rem}.line{background:#e5e7eb;border-radius:4px;height:8px;width:100%}.line.title{background:#111827;height:12px;margin-bottom:.25rem;width:70%}.line.short{width:40%}.mock-tag{background:#e0e7ff;border-radius:12px;color:#4338ca;display:inline-block;font-size:.8rem;font-weight:700;padding:.25rem .75rem;width:-webkit-fit-content;width:fit-content}.card-center{transform:rotate(-3deg);width:280px;z-index:3}.card-left{left:0;opacity:.9;top:10%;transform:rotate(-12deg);width:200px;z-index:2}.card-right{bottom:15%;opacity:.9;right:5%;transform:rotate(8deg);width:180px;z-index:2}.float-slow{animation:float 6s ease-in-out infinite}.float-medium{animation:float 5s ease-in-out infinite}.float-fast{animation:float 4s ease-in-out infinite}@keyframes float{0%{transform:translateY(0) rotate(0deg);transform:translateY(0) rotate(var(--rot,0deg))}50%{transform:translateY(-15px) rotate(0deg);transform:translateY(-15px) rotate(var(--rot,0deg))}to{transform:translateY(0) rotate(0deg);transform:translateY(0) rotate(var(--rot,0deg))}}.card-center{--rot:-3deg}.card-left{--rot:-12deg}.card-right{--rot:8deg}.cook-mode-container{background-color:var(--background-main);display:flex;flex-direction:column;height:100dvh;left:0;overflow:hidden;padding:1rem 2rem;position:fixed;top:0;width:100vw;z-index:1000}.cook-header{align-items:center;display:flex;flex-shrink:0;justify-content:space-between;margin-bottom:1rem}.progress-track{background-color:#e5e7eb;border-radius:4px;flex-shrink:0;height:8px;margin-bottom:2rem;overflow:hidden;width:100%}.progress-fill{background-color:var(--primary-color);height:100%;transition:width .3s ease}.cook-content{flex:1 1;min-height:0;overflow-y:auto}.cook-content,.step-content-wrapper{display:flex;flex-direction:column;width:100%}.step-content-wrapper{align-items:center;margin:auto;padding:1rem 0}.step-text{color:var(--text-primary);font-size:2.5rem;font-weight:700;line-height:1.4;text-align:center}.cook-footer{background-color:var(--background-main);flex-shrink:0;padding-top:1rem;width:100%;z-index:10}.cook-controls{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 2fr}.btn-large{font-size:1.5rem;padding:1.5rem}.drawer-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:2000}.ingredients-drawer{background:#fff;box-shadow:-5px 0 25px #00000026;display:flex;flex-direction:column;height:100vh;padding:2rem;position:fixed;right:-400px;top:0;transition:right .3s cubic-bezier(.4,0,.2,1);width:350px;z-index:2001}.ingredients-drawer.open{right:0}.drawer-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.drawer-list{list-style:none;margin:0;overflow-y:auto;padding:0}.drawer-list li{align-items:flex-start;border-bottom:1px dashed var(--border-color);display:flex;gap:12px;padding:.75rem 0}.drawer-list input[type=checkbox]{accent-color:var(--primary-color);height:18px;margin-top:4px;width:18px}.loading-screen{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:50vh;text-align:center}.loading-icons{display:flex;font-size:4rem;gap:1rem;margin-bottom:1.5rem}.loading-icon{animation:bounce 1.4s ease-in-out infinite both}.loading-icon:first-child{animation-delay:-.32s}.loading-icon:nth-child(2){animation-delay:-.16s}.loading-icon:nth-child(3){animation-delay:0s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@media (max-width:768px){.recipe-card:has(.recipe-detail-image-container) .recipe-detail-image-container:after{display:none}.recipe-card:has(.recipe-detail-image-container) .recipe-card-content{background:var(--card-color);bottom:auto;left:auto;padding-bottom:1.5rem;padding-top:1rem;position:relative;right:auto;text-align:left;top:auto}.recipe-card:has(.recipe-detail-image-container) .recipe-card-content h3{color:var(--text-primary);font-size:1.2rem;margin-top:.5rem;text-shadow:none}.recipe-card:has(.recipe-detail-image-container) .recipe-card-content p{color:var(--text-secondary);font-size:.95rem;line-height:1.5;text-shadow:none}.recipe-card .recipe-detail-image-container{height:200px}.recipe-list-header{align-items:stretch;flex-direction:column;gap:1rem}.recipe-list-header>div{display:flex;flex-direction:column;gap:.5rem;width:100%}.recipe-list-header input,.recipe-list-header select{padding:.8rem;width:100%}}.meal-plan-grid{grid-gap:1px;background-color:var(--border-color);border:1px solid var(--border-color);border-radius:12px;display:grid;gap:1px;grid-template-columns:repeat(7,1fr);margin-top:2rem;overflow:hidden;text-align:center}.meal-plan-header{background-color:var(--text-primary);color:#fff;font-size:.9rem;font-weight:700;padding:.75rem .5rem}.meal-plan-day{background-color:var(--card-color);display:flex;flex-direction:column;min-height:250px}.meal-plan-day h4{display:none}.meal-slot{align-items:center;border-bottom:1px solid var(--border-color);cursor:pointer;display:flex;flex-direction:column;flex-grow:1;font-size:.9rem;justify-content:center;min-height:80px;padding:.5rem;transition:background-color .1s ease}.meal-slot:hover{background-color:var(--background-main)}.meal-slot:last-child{border-bottom:none}.meal-slot-title{color:var(--text-secondary);font-size:.75rem;font-weight:700;margin-bottom:.25rem;text-transform:uppercase}.meal-slot-empty{color:#a1a1aa}.meal-plan-nav-container{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.meal-plan-week-range{color:var(--text-primary);font-size:1.5rem;font-weight:800}.planned-recipe{align-items:center;background-color:#f7f7f7;border:1px solid var(--border-color);border-radius:6px;display:inline-flex;gap:5px;justify-content:center;padding:.5rem .25rem;position:relative;transition:background-color .1s ease;width:95%}.planned-recipe:hover{background-color:#f0f0f0}.planned-recipe-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--primary-color);display:-webkit-box;font-size:.85rem;font-weight:600;line-height:1.3;overflow:hidden;text-align:center}.planned-recipe-delete{background:none;border:none;color:var(--danger-color);cursor:pointer;font-size:1rem;line-height:1;opacity:0;padding:2px;position:absolute;right:2px;top:2px;transition:opacity .2s}.planned-recipe:hover .planned-recipe-delete{opacity:1}@media (max-width:768px){.meal-plan-grid{background-color:initial;border:none;gap:1rem;grid-template-columns:1fr}.meal-plan-header{display:none}.meal-plan-day{border:1px solid var(--border-color);border-radius:12px;min-height:auto;overflow:hidden}.meal-plan-day h4{background-color:var(--background-main);border-bottom:1px solid var(--border-color);color:var(--text-primary);display:block;font-weight:700;margin:0;padding:.75rem}.meal-plan-nav{flex-wrap:wrap;gap:1rem}.meal-plan-nav h2{order:2;text-align:center;width:100%}.meal-plan-nav .btn:first-child{flex-grow:1;order:1}.meal-plan-nav .btn:last-child{flex-grow:1;order:3}.meal-plan-nav-container{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr;padding:0 1rem}.meal-plan-nav-container .meal-plan-week-range{font-size:1.5rem;margin-bottom:1rem;order:1;padding:0 .5rem;text-align:center}.meal-plan-nav-container .nav-btn-previous{order:2}.meal-plan-nav-container .nav-btn-next{order:3}.meal-plan-nav-container .btn{width:100%}}.manager-grid{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:1fr 1fr;margin-top:2rem}@media (max-width:768px){.manager-grid{grid-template-columns:1fr}}.manager-section{background:#fff;border:1px solid var(--border-color);border-radius:16px;box-shadow:0 1px 3px #0000000d;padding:2rem}.add-item-form{background:var(--background-main);border:1px solid var(--border-color);border-radius:12px;display:flex;gap:.5rem;margin-bottom:1.5rem;padding:.5rem}.add-item-form input{background:#0000;border:none;flex-grow:1;outline:none;padding:.5rem}.chip-list{display:flex;flex-wrap:wrap;gap:.8rem;min-width:0}.chip{align-items:center;border-radius:50px;cursor:default;display:inline-flex;flex-shrink:0;font-size:.9rem;font-weight:700;padding:.5rem 1rem;transition:all .2s ease}.chip.category{background-color:#e0e7ff;border:1px solid #4f46e51a;color:var(--primary-color)}.chip-delete-btn{align-items:center;background:#0000000d;border:none;border-radius:50%;color:inherit;cursor:pointer;display:flex;font-size:12px;height:20px;justify-content:center;margin-left:8px;opacity:.6;width:20px}.chip:hover .chip-delete-btn{background:#0000001a;opacity:1}.chip-delete-btn:hover{background-color:var(--danger-color)!important;color:#fff!important}.autocomplete-wrapper{flex-grow:1;position:relative}.suggestions-dropdown{background-color:var(--card-color);border:1px solid var(--border-color);border-radius:0 0 12px 12px;box-shadow:0 10px 15px -3px #0000001a;left:0;list-style:none;margin:4px 0 0;max-height:250px;overflow-y:auto;padding:0;position:absolute;right:0;top:100%;z-index:50}.suggestion-item{border-bottom:1px solid #f9fafb;color:var(--text-primary);cursor:pointer;font-size:.95rem;padding:.75rem 1rem}.suggestion-item.active,.suggestion-item:hover{background-color:#eff6ff;color:var(--primary-color)}.suggestion-ingredient-item{align-items:center;border:1px solid #0000;border-radius:8px;display:flex;font-size:.95rem;gap:.6rem;margin-bottom:.25rem;padding:.35rem .6rem;transition:all .2s}.suggestion-ingredient-item.expiring{background-color:#fffbeb;border:1px solid #fcd34d;color:#92400e;font-weight:600}.suggestion-ingredient-item.missing-item{background-color:#f9fafb;border:1px solid #e5e7eb;color:#6b7280}.use-soon-tag{background-color:#fbbf2433;border:1px solid #b453091a;border-radius:6px;color:#b45309;font-size:.9em;font-weight:800;letter-spacing:.5px;padding:2px 6px;text-transform:uppercase;white-space:nowrap}.tag-category-grid{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.metadata-pill{align-items:center;background-color:var(--card-color);border:1px solid var(--border-color);border-radius:50px;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;padding:.6rem 1.2rem;transition:all .2s ease}.metadata-pill:hover{background-color:#f0f4ff;border-color:var(--primary-color)}.metadata-pill.selected{background-color:var(--primary-color);border-color:var(--primary-color);box-shadow:var(--shadow-md);color:#fff;transform:translateY(-1px)}.metadata-pill input[type=checkbox]{display:none!important}@media print{body{background-color:#fff!important;color:#000!important}.action-buttons,.admin-button-group,.back-link,.category-list,.cook-footer,.cook-header,.cook-mode-container .progress-track,.dashboard-header,.detail-action-bar,.form-actions,.recipe-action-wrapper,.recipe-source,.tag-pill{display:none!important}.App{margin:0;max-width:100%;padding:0}.recipe-content-wrapper,.recipe-detail-container{background-color:#fff!important;border:none!important;border-radius:0!important;box-shadow:none!important;padding:.5rem .75rem!important}.recipe-header{margin-bottom:1.5rem!important;text-align:left!important}.recipe-header h1{-webkit-text-fill-color:#000!important;background:none!important;color:#000!important;font-size:2.2rem!important;font-weight:800;margin-bottom:.2rem}.recipe-hero-image{display:none!important}.recipe-detail-content{align-items:flex-start;display:flex;flex-direction:row;gap:2rem;margin-top:0}.recipe-detail-ingredients{min-width:200px;padding:0!important;width:35%}.recipe-detail-ingredients h3{border-bottom:1px solid #999;color:#000!important;font-size:1.4rem!important;font-weight:700;margin-bottom:.5rem;padding-bottom:.2rem}.recipe-detail-instructions{padding:0;width:65%}.recipe-detail-instructions h3{border-bottom:1px solid #999;color:#000!important;font-size:1.4rem!important;font-weight:700;margin-bottom:.5rem;padding-bottom:.2rem}.ingredient-list{background:none!important;border:none!important;list-style:none!important;margin:0!important;padding:0!important}.ingredient-list li{border-bottom:none!important;font-size:.95rem;margin-bottom:.3rem;padding:.1rem 0!important}.check-circle{display:none!important}.instruction-list{margin:0!important;padding-left:1.5rem!important}.instruction-list li{color:#000;font-size:1rem;line-height:1.3;margin-bottom:.75rem;padding-left:.5rem}.instruction-list li::marker{color:#000!important;font-size:1.1rem;font-weight:600}.recipe-notes{background:#f7f7f7!important;border:1px solid #ccc!important;box-shadow:none!important;margin-top:2rem;padding:1rem!important}.recipe-notes h4,.recipe-notes pre{color:#000!important}}.modal-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content-box{background-color:var(--card-color);border-radius:16px;box-shadow:0 10px 25px #0000004d;max-height:80vh;max-width:500px;overflow-y:auto;padding:2rem;width:90%}.modal-header-section{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.modal-header-section h2{color:var(--text-primary);font-size:1.5rem;margin:0}.modal-header-section .highlight{color:var(--primary-color)}.modal-close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.5rem}.modal-search-bar{background-color:var(--background-main);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1rem;margin-bottom:1rem;padding:.75rem;width:100%}.modal-results-container{max-height:40vh;overflow-y:auto;padding-right:.5rem}.modal-actions{margin-top:1rem;text-align:right}.cook-header-group{margin-left:auto;margin-right:1rem}.cook-step-text{margin-bottom:2rem;max-width:900px}.smart-ingredients-box{background-color:var(--card-color);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-md);max-width:600px;padding:1.5rem;text-align:left;width:100%}.smart-ingredients-box h4{color:var(--text-secondary);font-size:.85rem;letter-spacing:.03em;margin:0 0 1rem;text-transform:uppercase}.smart-ingredients-box ul{margin:0;padding-left:1.2rem}.smart-ingredients-box li{color:var(--text-primary);font-size:1.1rem;margin-bottom:.5rem}.cook-footer-preview{align-items:center;display:flex;justify-content:center;margin-bottom:1rem;min-height:30px;opacity:.8}.cook-footer-preview p{color:var(--text-secondary);font-size:.9rem;font-style:italic;margin:0;max-width:600px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cook-footer-preview .next-up-bold{font-weight:700;margin-right:5px}.cook-controls-wrapper{margin:0 auto;max-width:800px;width:100%}.page-header-wrapper{margin:2rem auto;max-width:1000px;padding:0 1rem}.pantry-section{margin-top:2rem}.pantry-item-count{color:var(--text-secondary);font-size:.8em}.pantry-tip-container{align-items:center;color:var(--text-secondary);display:flex;font-size:.9rem;gap:6px;margin-bottom:1rem}.pantry-chip{align-items:center;background-color:#ecfdf5;border-color:#a7f3d0;color:#047857;display:inline-flex;gap:8px}.pantry-chip.priority{background-color:#fffbeb;border-color:#fcd34d;color:#92400e}.pantry-chip-icon{cursor:pointer;font-size:1.2em;line-height:1;transition:opacity .2s}.pantry-chip-icon.normal{filter:grayscale(100%);opacity:.3}.pantry-chip-text.priority{font-weight:700}.suggestion-card{border-left-style:solid;border-left-width:6px;padding:1.5rem}.suggestion-card.ready{border-left-color:#10b981}.suggestion-card.missing{border-left-color:#f59e0b}.suggestion-card-header{align-items:flex-start;display:flex;justify-content:space-between}.suggestion-title-group{align-items:center;display:flex;gap:10px;margin-bottom:.5rem}.suggestion-title-group h3{margin:0}.waste-not-badge{background-color:#fef2f2;border:1px solid #fecaca;border-radius:12px;color:#dc2626;flex-shrink:0;font-size:.75rem;font-weight:800;letter-spacing:.03em;padding:.3em 1em;text-transform:uppercase}.ingredients-column-grid{display:flex;flex-wrap:wrap;gap:2rem;margin-top:1.5rem}.ingredients-column{flex:1 1;min-width:200px}.ingredients-column h4{font-size:.85rem;font-weight:800;letter-spacing:.03em;margin:0 0 .5rem;text-transform:uppercase}.ingredients-column-have h4{color:#059669}.ingredients-column-missing h4{color:#b45309}.ingredients-column ul{color:#374151;font-size:.9rem;line-height:1.5;margin:0;padding-left:1.2rem}.back-link-spacing{display:inline-block;margin-bottom:1.5rem}.image-preview-large{height:250px}.image-preview-large,.image-preview-small{border-radius:8px;margin-top:1rem;object-fit:cover;width:100%}.image-preview-small{height:200px}.file-input-style{background-color:var(--background-light);border:1px solid var(--border-color);border-radius:8px;padding:.5rem}.login-register-button{margin-top:1rem;width:100%}.register-success-button{margin-top:1rem}.error-loading-message{margin-top:1rem;text-align:center}.error-loading-message.primary{color:var(--primary-color);font-weight:600}.error-loading-message.danger{color:var(--danger-color)}.add-recipe-wrapper{margin:2rem auto;max-width:1000px;padding:0 1rem}.add-recipe-header{margin-bottom:2rem}.add-recipe-form-container{margin:0;max-width:none;padding:2rem}.metadata-group{margin-top:2rem}.text-normal-small{font-size:.8em;font-weight:400}.edit-recipe-actions{display:flex;gap:1rem;margin-top:1rem}.recipe-detail-primary-btn{font-size:1.2rem;padding:.8rem 1.6rem}.print-btn{font-size:.9rem;padding:.5rem 1rem}.image-tip-group{margin-top:1rem}.image-tip-item{align-items:flex-start;color:var(--text-secondary);display:flex;font-size:.85rem;gap:8px;line-height:1.4;margin:.5rem 0}.image-tip-item:last-child{margin-bottom:0}.meal-plan-page-wrapper{margin:2rem auto;max-width:1200px;padding:1.5rem}.meal-plan-actions-bar{align-items:center;display:flex;justify-content:space-between}.meal-plan-title{text-align:center}.meal-plan-subtitle{color:var(--text-secondary);text-align:center}.meal-plan-divider{margin:1rem 0 2rem}.meal-plan-week-range{font-size:1.2rem;margin:0}.meal-plan-date-day{font-weight:400}.recipe-source{color:var(--text-secondary);font-size:1rem;margin-top:1.5rem;text-align:center}.recipe-source .source-manual{font-weight:700;margin-left:5px}.recipe-source .source-link{margin-left:5px}.recipe-header{text-align:center}.manager-page-container{margin:2rem auto;max-width:1200px;padding:0 1rem}.manager-subtitle{color:var(--text-secondary);margin:0}.tag-count-span{color:var(--text-secondary);font-size:.8em}.manager-add-btn{padding:.5rem 1.2rem}.manager-status-message{border:1px solid;border-radius:10px;font-weight:600;margin-top:1rem;padding:1rem;text-align:center;transition:all .2s}.manager-status-message.error{background-color:#fee2e2;border-color:#fecaca;color:#b91c1c}.manager-status-message.success{background-color:#dcfce7;border-color:#bbf7d0;color:#15803d}.recipe-card-header-flex{display:flex;justify-content:space-between}.recipe-select-checkbox{cursor:pointer;flex-shrink:0;height:20px;margin-left:1rem;width:20px}.recipe-filter-bar{align-items:center;justify-content:space-between}.filter-group-wrapper,.recipe-filter-bar{display:flex;flex-wrap:wrap;gap:1rem}.shopping-list-ingredients-wrapper{margin-top:2rem;max-width:800px}.loading-icon.static-scale{animation:none!important;transform:scale(1)!important}.loading-text.error{color:var(--danger-color)}.loading-button-margin{margin-top:2rem}.verify-page-container{margin-top:5rem;text-align:center}.verify-success-message{color:green}.verify-error-message{color:red}.verify-button-margin{margin-top:1rem}.account-menu-container{position:relative}.account-menu-trigger{align-items:center;background-color:var(--primary-color);border:none;border-radius:10px;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:8px;padding:.5rem 1rem;transition:background-color .2s}.account-menu-trigger:hover{background-color:var(--primary-hover)}.account-dropdown{background:var(--card-color);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 10px #0000001a;list-style:none;margin-top:8px;overflow:hidden;padding:0;position:absolute;right:0;top:100%;width:250px;z-index:500}.account-dropdown li{border-bottom:1px solid #f3f4f6;padding:0}.account-dropdown a,.account-dropdown button{background:none;border:none;color:var(--text-primary);cursor:pointer;display:block;font-size:.95rem;padding:.75rem 1rem;text-align:left;transition:background-color .1s;width:100%}.account-dropdown a:hover,.account-dropdown button:hover{background-color:#f7f7f7;text-decoration:none}.account-dropdown .logout-btn{color:var(--danger-color);font-weight:700}.settings-page-wrapper{background:var(--card-color);border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-md);margin:4rem auto;max-width:600px;padding:2.5rem}.settings-group{border-bottom:1px solid var(--border-color);margin-bottom:2rem;padding-bottom:2rem}.settings-group:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.settings-group h2{color:var(--primary-color);font-size:1.5rem;font-weight:800;margin-bottom:1.5rem;margin-top:0}.user-info-detail{font-size:1.1rem;margin-bottom:1rem}.user-info-detail strong{color:var(--text-primary);display:inline-block;font-weight:700;min-width:100px}.form-subtext{color:var(--text-secondary);margin-bottom:2rem;text-align:center}.form-success{background:#d1fae5;border:1px solid #a7f3d0;border-radius:8px;color:#065f46;padding:.75rem}.form-footer-links,.form-success{margin-bottom:1rem;text-align:center}.forgot-password-link{font-size:.9rem;font-weight:600}.category-list{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.justify-center{justify-content:center}.category-tag{background-color:#e0e7ff;border:1px solid #4338ca1a;border-radius:999px;color:#4338ca;font-weight:700;letter-spacing:.025em;text-transform:uppercase}.category-tag,.tag-pill{align-items:center;display:inline-flex;font-size:.75rem;padding:.25rem .75rem}.tag-pill{background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:999px;color:#4b5563;font-weight:600}@media (max-width:768px){.landing-page-wrapper{align-items:center;height:100dvh;min-height:auto;overflow:hidden;padding:1rem}.landing-grid{display:flex;flex-direction:column;gap:0;height:100%;max-width:100%;padding:0;width:100%}.landing-text-section{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;max-height:60%;text-align:center;z-index:10}.hero-title{font-size:2.5rem;margin-bottom:.5rem}.hero-subtitle{font-size:1rem;margin-bottom:1.5rem;padding:0 1rem}.landing-cta-group{justify-content:center;margin-bottom:1rem;width:100%}.btn-lg{font-size:1rem;padding:.8rem 1.5rem}.feature-pills{gap:.5rem;justify-content:center;margin-top:.5rem}.pill{font-size:.8rem;padding:.3rem .8rem}.landing-visual-section{align-items:center;display:flex;flex:1 1;height:auto;justify-content:center;margin:0;min-height:0;width:100%}.mock-card{bottom:auto;left:auto;margin-top:-2rem;position:relative;right:auto;top:auto;transform:scale(.65) rotate(-3deg)!important;z-index:1}.card-left,.card-right{display:none!important}.card-center{animation:float 6s ease-in-out infinite;display:flex!important}}.chip.tag{align-items:center;background-color:#f3f4f6;border:1px solid #e5e7eb;color:#1f2937;display:inline-flex;margin-bottom:.5rem;margin-right:.5rem}@media (max-width:768px){.manager-section{padding:1.25rem 1rem!important}.add-item-form{flex-direction:row;gap:.5rem}.add-item-form input{min-width:0;width:100%}.manager-add-btn{padding:.6rem 1rem;white-space:nowrap}.chip-list{display:flex!important;flex-wrap:wrap!important;gap:.5rem!important;justify-content:flex-start!important}.chip{flex-grow:0;font-size:.85rem;margin:0;padding:.4rem .8rem;width:auto!important}.manager-section h2{font-size:1.25rem}.recipe-detail-grid{gap:1.5rem!important;grid-template-columns:1fr!important}textarea{font-size:16px}.add-recipe-form-container{padding:1.5rem 1rem!important}.form-actions{flex-direction:column-reverse;gap:1rem}.form-actions .btn{padding:1rem;width:100%}}.shopping-history-card{align-items:center!important;flex-direction:row!important;justify-content:space-between!important;min-width:0;padding:1.5rem;text-align:left!important;width:100%}.shopping-history-details{flex:1 1;margin-right:1rem;min-width:0}.shopping-list-title{font-size:1.1rem;font-weight:800;margin-bottom:.2rem}.shopping-list-context{color:var(--text-primary);font-size:.9rem;margin:.2rem 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shopping-list-date{color:var(--text-secondary);font-size:.9rem;margin-top:.2rem}@media (max-width:768px){.shopping-history-card{padding:1rem}.shopping-list-context{font-size:.85rem}}:root{--background-main:#f7f7f7;--background-light:#fff;--card-color:#fff;--border-color:#e5e7eb;--shadow-md:0 4px 6px -1px #0000000d,0 2px 4px -2px #0000000d;--text-primary:#111827;--text-secondary:#6b7280;--primary-color:#4f46e5;--primary-hover:#4338ca;--danger-color:#dc2626;--danger-hover:#b91c1c}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f7f7f7;background-color:var(--background-main);color:#111827;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}a{color:#4f46e5;color:var(--primary-color);font-weight:700;text-decoration:none;transition:color .2s ease}a:hover{color:#4338ca;color:var(--primary-hover);text-decoration:underline}
/*# sourceMappingURL=main.180a1366.css.map*/