@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";
:root{--color-canela:#c1662b;--color-carbon:#241b14;--color-caribe:#2f6e68;--color-leche:#f3e7d3;--color-leche-clara:#fbf6ea;--bg-main:var(--color-leche-clara);--bg-card:var(--color-leche);--text-primary:var(--color-carbon);--text-secondary:#5c4d42;--accent-primary:var(--color-canela);--accent-secondary:var(--color-caribe);--border-color:#241b141a;--shadow-sm:0 2px 8px #241b140d;--shadow-md:0 4px 16px #241b1414;--shadow-lg:0 10px 30px #241b141f;--border-radius-sm:8px;--border-radius-md:16px;--border-radius-lg:24px;--transition:all .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Outfit,sans-serif;line-height:1.6}.glass-panel{-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow-md);border-radius:var(--border-radius-md);background:#f3e7d399;border:1px solid #fff6}h1,h2,h3,h4,h5,h6{color:var(--text-primary);margin-bottom:1rem;font-weight:600}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}.btn{border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition);border:none;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-family:Outfit,sans-serif;font-size:1rem;font-weight:500;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background-color:var(--accent-primary);color:#fff;box-shadow:0 4px 14px #c1662b4d}.btn-primary:hover{background-color:#a05322;box-shadow:0 6px 20px #c1662b66}.btn-secondary{background-color:var(--accent-secondary);color:#fff;box-shadow:0 4px 14px #2f6e684d}.btn-secondary:hover{background-color:#245853;box-shadow:0 6px 20px #2f6e6866}.btn-outline{color:var(--text-primary);border:2px solid var(--border-color);background-color:#0000}.btn-outline:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.form-group{margin-bottom:1.5rem}.form-label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.9rem;font-weight:500;display:block}.form-input{width:100%;color:var(--text-primary);border:2px solid var(--border-color);border-radius:var(--border-radius-sm);transition:var(--transition);background-color:#fff;outline:none;padding:.75rem 1rem;font-family:Outfit,sans-serif;font-size:1rem}.form-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 4px #c1662b1a}.app-container{min-height:100vh;display:flex;position:relative}.sidebar{background-color:var(--bg-card);border-right:1px solid var(--border-color);flex-direction:column;padding:2rem 1.5rem;display:flex}.sidebar-desktop{flex-shrink:0;width:280px}.sidebar-mobile{z-index:200;width:280px;height:100vh;box-shadow:var(--shadow-lg);transition:transform .3s cubic-bezier(.4,0,.2,1);display:none;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar-mobile--open{transform:translate(0)}.sidebar-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:150;background:#241b1473;display:none;position:fixed;inset:0}.sidebar-close-btn{cursor:pointer;color:var(--text-secondary);border-radius:var(--border-radius-sm);transition:var(--transition);background:0 0;border:none;padding:.3rem;font-size:1.3rem;display:none}.sidebar-close-btn:hover{color:var(--accent-primary);background:#c1662b14}.hamburger-btn{z-index:100;background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--border-radius-sm);cursor:pointer;box-shadow:var(--shadow-md);transition:var(--transition);flex-direction:column;gap:5px;padding:.5rem .65rem;display:none;position:fixed;top:1rem;left:1rem}.hamburger-btn:hover{border-color:var(--accent-primary);box-shadow:var(--shadow-lg)}.hamburger-btn span{background-color:var(--text-primary);width:22px;height:2px;transition:var(--transition);border-radius:2px;display:block}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.sidebar-nav-item{transition:var(--transition)}.main-content{flex:1;min-width:0;padding:3rem;overflow-y:auto}.page-header{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:3rem;display:flex}@media (max-width:1024px){.sidebar-desktop{width:240px}.main-content{padding:2rem}.responsive-grid-4{grid-template-columns:1fr 1fr!important}}@media (max-width:768px){.sidebar-desktop{display:none}.sidebar-mobile{display:flex}.sidebar-overlay{display:block}.hamburger-btn,.sidebar-close-btn{display:flex}.main-content{padding:4.5rem 1rem 1.5rem}.page-header{flex-direction:column;align-items:flex-start;margin-bottom:2rem}.page-header .btn{justify-content:center;width:100%}.search-row{flex-direction:column!important;align-items:stretch!important}.responsive-grid-4,.responsive-grid-2{grid-template-columns:1fr!important}.table-scroll{border-radius:var(--border-radius-md)}.table-scroll table{min-width:600px}h1{font-size:1.8rem}h2{font-size:1.5rem}h3{font-size:1.2rem}.product-summary{text-align:center;gap:1rem;flex-direction:column!important}.ingredient-row{flex-wrap:wrap!important}}.search-wrapper{align-items:center;display:flex;position:relative}.search-icon{color:var(--text-secondary);pointer-events:none;font-size:1rem;position:absolute;left:1rem}.search-input{width:100%;color:var(--text-primary);border:2px solid var(--border-color);border-radius:var(--border-radius-sm);transition:var(--transition);background-color:#fff;outline:none;padding:.75rem 1rem .75rem 2.75rem;font-family:Outfit,sans-serif;font-size:1rem}.search-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 4px #c1662b1a}.search-input::placeholder{color:#b0a090}.search-clear{cursor:pointer;color:var(--text-secondary);transition:var(--transition);background:0 0;border:none;border-radius:50%;align-items:center;padding:.25rem;font-size:1.1rem;display:flex;position:absolute;right:.75rem}.search-clear:hover{color:var(--accent-primary);background:#c1662b14}.badge{letter-spacing:.01em;border-radius:100px;align-items:center;padding:.25rem .65rem;font-size:.78rem;font-weight:600;display:inline-flex}.badge-auto{color:var(--text-secondary);background:#241b1412}.badge-custom{color:var(--accent-secondary);background:#2f6e681f}.table-action-btn{cursor:pointer;border-radius:var(--border-radius-sm);transition:var(--transition);background:0 0;border:none;padding:.35rem .75rem;font-family:Outfit,sans-serif;font-size:.88rem;font-weight:500}.table-action-edit{color:var(--accent-secondary)}.table-action-edit:hover{background:#2f6e681a}.table-action-delete{color:#c0392b}.table-action-delete:hover{background:#c0392b14}.empty-state{text-align:center;color:var(--text-secondary);padding:4rem 2rem}.empty-state-icon{opacity:.5;margin-bottom:1rem;font-size:3rem}.empty-state h4{color:var(--text-secondary);margin-bottom:.4rem;font-size:1.1rem}.empty-state p{opacity:.7;font-size:.9rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.4s ease-out forwards fadeIn}@keyframes slideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.animate-slide-in{animation:.25s ease-out forwards slideIn}
