@import"https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&display=swap";.sidebar-content{display:flex;flex-direction:column;gap:.75rem;position:relative;padding:.75rem}.sidebar-close{position:absolute;top:.25rem;right:.25rem;width:24px;height:24px;border:1px solid #ddd;border-radius:50%;background:#fff;color:#666;font-size:.8rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10;font-family:inherit}.sidebar-close:hover{background:#f0f0f0;border-color:#999;color:#333}.sidebar-title{text-decoration:none;color:inherit;padding:.5rem 0;border-bottom:1px solid #f0f0f0;display:block}.sidebar-title h3{font-size:1.2rem;font-weight:400;color:#040316;margin:0;font-family:"Instrument Serif",serif}.sidebar-title:hover h3{color:#333}.add-recipe-section{padding:.75rem 0;border-bottom:1px solid #f0f0f0}.add-recipe-section h4{font-size:.9rem;font-weight:400;color:#040316;margin:0 0 .5rem;font-family:"Instrument Serif",serif}.sidebar-info{font-size:.8rem;color:#666;line-height:1.4;padding:.75rem 0}.sidebar-info p{margin:0;font-family:"Instrument Serif",serif}@media (max-width: 768px){.sidebar-content{gap:.6rem;padding:.5rem}.sidebar-close{display:none}.add-recipe-section h4{font-size:.85rem}}body{background-color:#fdfdfd;font-family:"Instrument Serif",serif;font-weight:400;font-style:normal}.hero{display:flex;flex-direction:column;align-items:center;gap:2rem;top:0;padding:2rem 1rem;max-width:1200px;margin:0 auto}.header{display:flex;flex-direction:column;align-items:center;text-align:center}.header h1{font-size:3rem;color:#040316;margin-bottom:.5rem;font-weight:400}.header h2{font-size:1.2rem;color:#555;font-weight:400;max-width:600px;line-height:1.4}.search{display:flex;flex-direction:column;align-items:center;gap:1em;width:100%;max-width:800px}.search input{padding:.75rem 1rem;border:1px solid #ccc;border-radius:4px;font-family:"Instrument Serif",serif;font-size:1rem;width:100%;max-width:600px}.search input:focus{outline:none;border-color:#040316}.dropdown{display:flex;gap:1rem}.dropdown-1,.dropdown-2{padding:.75rem;border-radius:4px;border:1px solid #ccc;font-family:"Instrument Serif",serif;font-size:.9rem;background:#fff;min-width:150px}.dropdown-1:focus,.dropdown-2:focus{outline:none;border-color:#040316}.recipes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;padding:2rem 0;width:100%;max-width:1200px;margin:0 auto}.recipe-card{background:#fff;border:1px solid #ddd;border-radius:8px;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;cursor:pointer;font-family:"Instrument Serif",serif;height:fit-content;box-shadow:0 2px 4px #0000000d}.recipe-card:hover{border-color:#999;box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.recipe-image{width:100%;height:200px;object-fit:cover;border-bottom:1px solid #eee;filter:grayscale(20%)}.recipe-card h2{font-size:1.4rem;font-weight:400;color:#040316;margin:1rem 1rem .5rem;line-height:1.3}.recipe-card p{color:#555;font-size:.9rem;line-height:1.5;margin:0 1rem 1rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.time{display:flex;flex-direction:row;gap:1rem;margin:0 1rem 1rem;padding:.75rem;background:#f8f8f8;border:1px solid #eee;border-radius:4px}.time>div{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:#666;font-weight:400}.time>div span{white-space:nowrap}.categories{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 1rem 1rem}.category-tag{background:#f0f0f0;color:#333;border:1px solid #ddd;padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:400;text-transform:capitalize;transition:background-color .2s ease}.category-tag:hover{background:#e8e8e8;border-color:#bbb}.no-recipes{text-align:center;padding:3rem;color:#666;grid-column:1 / -1}.no-recipes h3{font-size:1.5rem;margin-bottom:1rem;color:#040316;font-weight:400}.no-recipes p{font-size:1rem;max-width:400px;margin:0 auto;line-height:1.6;color:#555}@media (max-width: 768px){.hero{padding:1rem;gap:1.5rem}.header h1{font-size:2.5rem}.header h2{font-size:1.1rem}.recipes-grid{grid-template-columns:1fr;padding:1rem 0;gap:1rem}.recipe-card h2{font-size:1.2rem}.time{flex-direction:column;gap:.5rem}.dropdown{flex-direction:column;width:100%}.dropdown-1,.dropdown-2{width:100%}.search input{font-size:16px}}@media (max-width: 480px){.recipe-card{margin:0 .5rem}.hero{padding:.5rem}}.chips-container{width:100%;margin:1rem 0}.chips-input{width:100%;padding:.75rem;border:1px solid #ccc;border-radius:4px;font-size:1rem;margin-bottom:1rem;background:#fff;transition:border-color .2s ease}.chips-input:focus{outline:none;border-color:#999}.chips-input::placeholder{color:#999}.chips-section{margin-bottom:1rem}.chips-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.chips-section-title{font-size:.9rem;margin:0;color:#666;font-weight:400}.chips-clear-button{background:none;border:1px solid #ddd;padding:.25rem .5rem;border-radius:4px;cursor:pointer;font-size:.75rem;color:#666;transition:all .2s ease}.chips-clear-button:hover{border-color:#999;color:#333}.chips-available{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.chip-available{border:1px solid #ddd;padding:.4rem .8rem;border-radius:4px;background:#f8f8f8;cursor:pointer;font-size:.8rem;transition:all .2s ease;color:#333}.chip-available:hover:not(:disabled){border-color:#999;background:#f0f0f0}.chip-available:disabled{opacity:.5;cursor:not-allowed;background:#e8e8e8}.chips-selected{display:flex;flex-wrap:wrap;gap:.5rem}.chip-selected{border:1px solid #333;padding:.4rem .8rem;border-radius:4px;background:#f5f5f5;display:inline-flex;align-items:center;gap:.5rem;font-size:.85rem;color:#333}.chip-remove-button{background:none;border:none;cursor:pointer;padding:0;font-size:1rem;color:#666;transition:color .2s ease}.chip-remove-button:hover{color:#333}@media (max-width: 768px){.chips-section-header{flex-direction:column;align-items:flex-start;gap:.5rem}.chips-available,.chips-selected{justify-content:center}}.recipe-chat{background:#fff;border:1px solid #ddd;border-radius:8px;font-family:inherit;box-shadow:0 2px 4px #0000000d;overflow:hidden}.chat-header{background:#f8f8f8;border-bottom:1px solid #eee;padding:.75rem;display:flex;flex-direction:column;gap:.75rem}.chat-header h3{font-size:1.1rem;margin:0;text-align:center}.view-toggle{display:flex;gap:.25rem}.view-toggle button{padding:.5rem .75rem;border:1px solid #ddd;border-radius:4px;background:#fff;font-size:.8rem;color:#666;transition:all .2s ease;flex:1;text-align:center}.view-toggle button.active{background:#040316;color:#fff;border-color:#040316}.view-toggle button:hover:not(.active){background:#f0f0f0;border-color:#bbb}.error-message{background:#ffe6e6;color:#d63384;padding:.5rem .75rem;border-bottom:1px solid #f5c2c7;font-size:.8rem}.chat-view{display:flex;flex-direction:column;height:450px}.chat-actions{padding:.5rem .75rem;border-bottom:1px solid #eee;background:#fdfdfd}.clear-chat-btn{padding:.4rem .6rem;border:1px solid #ddd;border-radius:4px;background:#fff;font-size:.75rem;color:#666;transition:all .2s ease}.clear-chat-btn:hover{background:#f0f0f0;border-color:#bbb}.clear-confirm{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:#555}.confirm-yes,.confirm-no{padding:.2rem .4rem;border:1px solid #ddd;border-radius:4px;font-size:.75rem;transition:all .2s ease}.confirm-yes{background:#d63384;color:#fff;border-color:#d63384}.confirm-yes:hover{background:#b02a5b;border-color:#b02a5b}.confirm-no{background:#fff;color:#666}.confirm-no:hover{background:#f0f0f0;border-color:#bbb}.messages-container{flex:1;overflow-y:auto;padding:.75rem;display:flex;flex-direction:column;gap:.75rem}.empty-state{text-align:center;padding:1.5rem .75rem;color:#666}.empty-state p{font-size:.9rem;margin-bottom:1rem;color:#555}.suggestion-chips{display:flex;flex-direction:column;gap:.4rem}.suggestion-chips button{padding:.6rem;border:1px solid #ddd;border-radius:4px;background:#fff;font-size:.8rem;color:#555;transition:all .2s ease}.suggestion-chips button:hover{background:#f0f0f0;border-color:#040316;color:#040316}.message{max-width:85%;border-radius:6px;padding:.6rem;position:relative}.user-message{align-self:flex-end;background:#040316;color:#fff;border-bottom-right-radius:3px}.ai-message{align-self:flex-start;background:#f8f8f8;color:#040316;border:1px solid #eee;border-bottom-left-radius:3px}.message-content{font-size:.8rem;line-height:1.3;margin-bottom:.4rem}.message-footer{display:flex;justify-content:space-between;align-items:center;font-size:.7rem;opacity:.7}.message-time{font-size:.7rem}.save-to-notes-btn{background:none;font-size:.7rem;opacity:.6;transition:opacity .2s ease;padding:.2rem}.save-to-notes-btn:hover{opacity:1}.message-form{display:flex;gap:.4rem;padding:.75rem;border-top:1px solid #eee;background:#fdfdfd}.message-form input{flex:1;padding:.6rem;border:1px solid #ddd;border-radius:4px;font-size:.8rem}.message-form input:focus{outline:none;border-color:#040316}.message-form button{padding:.6rem .8rem;border:1px solid #040316;border-radius:4px;background:#040316;color:#fff;font-size:.8rem;transition:all .2s ease;min-width:40px}.message-form button:hover:not(:disabled){background:#333;border-color:#333}.message-form button:disabled{opacity:.6}.notes-view{padding:.75rem}.note-form{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #eee}.note-form textarea{padding:.6rem;border:1px solid #ddd;border-radius:4px;font-size:.8rem;resize:vertical;min-height:60px}.note-form textarea:focus{outline:none;border-color:#040316}.note-form button{align-self:flex-start;padding:.6rem .8rem;border:1px solid #040316;border-radius:4px;background:#040316;color:#fff;font-size:.8rem;transition:all .2s ease}.note-form button:hover:not(:disabled){background:#333;border-color:#333}.note-form button:disabled{opacity:.6}.notes-list{display:flex;flex-direction:column;gap:.75rem}.note-item{background:#f8f8f8;border:1px solid #eee;border-radius:4px;padding:.6rem}.note-content{font-size:.8rem;line-height:1.3;color:#040316;margin-bottom:.4rem}.note-footer{display:flex;justify-content:space-between;align-items:center;font-size:.7rem;color:#666}.note-time{font-size:.7rem}.delete-note-btn{background:none;font-size:.7rem;opacity:.6;transition:opacity .2s ease;padding:.2rem}.delete-note-btn:hover{opacity:1}@media (max-width: 768px){.recipe-chat{margin:0;border-radius:0;border-left:none;border-right:none}.chat-header{padding:1rem;flex-direction:row;justify-content:space-between;align-items:center}.chat-header h3{font-size:1.2rem;text-align:left}.view-toggle{flex:none}.view-toggle button{flex:none;padding:.5rem .75rem;font-size:.8rem}.chat-view{height:400px}.message{max-width:90%}.suggestion-chips{max-width:100%}.clear-confirm{flex-direction:column;gap:.5rem;align-items:stretch}.clear-confirm>span{text-align:center}}@media (max-width: 480px){.chat-header h3{font-size:1.1rem}.view-toggle button{padding:.4rem .6rem;font-size:.75rem}.message-content{font-size:.8rem}}.ai-response p{text-align:left}.ai-response p:contains("•"){margin-left:8px}.recipe-chat{display:flex;flex-direction:column;height:100%;max-height:600px}.chat-header{flex-shrink:0}.messages-container{flex:1;overflow-y:auto;padding:1rem;max-height:400px}.notes-view{gap:1rem}.note-form{flex-shrink:0;padding:1rem;border-bottom:1px solid #eee}.notes-list{flex:1;overflow-y:auto;padding:1rem;max-height:350px;min-height:200px}.note-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:1rem;margin-bottom:1rem;word-wrap:break-word}.note-item:last-child{margin-bottom:0}.note-content{white-space:pre-line;margin-bottom:.5rem;line-height:1.5}.note-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem;padding-top:.5rem;border-top:1px solid #dee2e6}.note-time{font-size:.875rem;color:#6c757d}.delete-note-btn{background:none;border:none;cursor:pointer;padding:.25rem;border-radius:4px;transition:background-color .2s}.delete-note-btn:hover{background-color:#f8d7da}.message-form{flex-shrink:0;padding:1rem;border-top:1px solid #eee}.ai-response p{margin-bottom:12px;line-height:1.5}.ai-response p:last-child{margin-bottom:0}.message-content{white-space:pre-line;word-wrap:break-word}.notes-list::-webkit-scrollbar,.messages-container::-webkit-scrollbar{width:6px}.notes-list::-webkit-scrollbar-track,.messages-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.notes-list::-webkit-scrollbar-thumb,.messages-container::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.notes-list::-webkit-scrollbar-thumb:hover,.messages-container::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.empty-state{text-align:center;padding:2rem;color:#6c757d}.empty-state p{margin-bottom:1rem}.notes-list{flex:1;overflow-y:auto;padding:1rem;max-height:350px;min-height:200px;-ms-overflow-style:none;scrollbar-width:none}.notes-list::-webkit-scrollbar{display:none}.messages-container{flex:1;overflow-y:auto;padding:1rem;max-height:400px;-ms-overflow-style:none;scrollbar-width:none}.messages-container::-webkit-scrollbar{display:none}.chat-view,.notes-view{display:flex;flex-direction:column;height:100%;overflow:hidden}.recipe-detail-layout{max-width:1280px;margin:0 auto;padding:2rem;display:flex;flex-direction:row;align-items:flex-start;gap:1.5rem;min-height:100vh}.recipe-main-content{flex:1;min-width:0;background:#fff;border:1px solid #ddd;border-radius:8px;padding:2rem;box-shadow:0 2px 4px #0000000d;height:fit-content}.recipe-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #eee}.back-button{display:inline-flex;align-items:center;padding:.75rem 1rem;border:1px solid #ddd;border-radius:4px;background:#fff;color:#666;text-decoration:none;font-size:.9rem;transition:all .2s ease}.back-button:hover{background:#f0f0f0;border-color:#040316;color:#040316;text-decoration:none}.recipe-actions{display:flex;gap:.75rem}.delete-btn{padding:.75rem 1rem;border:1px solid #f0f0f0;border-radius:4px;background:#fff;color:#040316;font-size:.9rem;transition:all .2s ease}.delete-btn:hover{background:#f0f0f0;color:#040316}.recipe-title-section{margin-bottom:2rem;text-align:center}.recipe-title-section h1{font-size:2.5rem;margin-bottom:1rem;line-height:1.2}.recipe-description{font-size:1.1rem;color:#555;line-height:1.5;max-width:900px;margin:0 auto}.recipe-image-container{margin-bottom:2rem;text-align:center}.recipe-detail-image{max-width:100%;height:auto;max-height:500px;border-radius:8px;border:1px solid #eee;filter:grayscale(20%);box-shadow:0 2px 8px #0000001a}.recipe-meta{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem;padding:1.5rem;background:#f8f8f8;border:1px solid #eee;border-radius:4px}.time-info{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.meta-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#666;padding:.5rem .75rem;background:#fff;border:1px solid #ddd;border-radius:4px;white-space:nowrap}.recipe-tags{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.tag{padding:.5rem .75rem;border-radius:4px;font-size:.8rem;text-transform:capitalize;transition:all .2s ease}.category-tag,.cuisine-tag{background:#f0f0f0;color:#333;border:1px solid #ddd}.tag:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.recipe-content{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}.ingredients-section,.instructions-section{background:#fdfdfd;border:1px solid #eee;border-radius:4px;padding:1.5rem}.ingredients-section h2,.instructions-section h2{font-size:1.4rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #eee}.ingredients-list,.instructions-list{padding-left:1.25rem;margin:0}.ingredients-list li,.instructions-list li{font-size:.95rem;line-height:1.6;color:#555;margin-bottom:.75rem}.instructions-list li{margin-bottom:1rem;padding-left:.5rem}.recipe-source{text-align:center;padding-top:1.5rem;border-top:1px solid #eee}.source-link{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border:1px solid #040316;border-radius:4px;background:#fff;color:#040316;text-decoration:none;font-size:.9rem;transition:all .2s ease}.source-link:hover{background:#040316;color:#fff;text-decoration:none}.recipe-chat-sidebar{flex:0 0 280px;max-width:280px;position:sticky;top:2rem;height:fit-content;max-height:calc(100vh - 4rem);overflow:hidden}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;padding:2rem}.loading-spinner{width:40px;height:40px;border:3px solid #f3f3f3;border-top:3px solid #040316;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-container h2,.error-container h2{font-size:1.5rem;margin-bottom:.5rem}.error-container p{font-size:1rem;color:#555;margin-bottom:1.5rem;max-width:400px;line-height:1.5}@media (max-width: 768px){.recipe-detail-layout{flex-direction:column;padding:1rem;gap:1rem}.recipe-main-content{padding:1.5rem}.recipe-content{grid-template-columns:1fr;gap:1.5rem}.recipe-chat-sidebar{flex:none;max-width:none;position:static;max-height:none}.recipe-title-section h1{font-size:2rem}.recipe-header{flex-direction:column;gap:1rem;align-items:stretch}.recipe-meta{padding:1rem}.time-info{flex-direction:column;align-items:center}.meta-item{justify-content:center}.ingredients-section,.instructions-section{padding:1rem}}@media (max-width: 480px){.recipe-title-section h1{font-size:1.8rem}.recipe-description{font-size:1rem}.recipe-header{margin-bottom:1.5rem}.back-button,.delete-btn{font-size:.8rem;padding:.6rem .8rem}.ingredients-section h2,.instructions-section h2{font-size:1.2rem}}.main{max-width:1280px!important;margin:0 auto!important;padding:2rem!important;display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:1.5rem!important;min-height:100vh!important;position:relative!important}.content{flex:1!important;min-width:0!important;transition:margin-left .3s ease!important}.content.sidebar-collapsed{margin-left:-200px!important}.sidebar-toggle{position:fixed!important;top:2rem!important;left:2rem!important;z-index:200!important;padding:.5rem!important;border:1px solid #ddd!important;border-radius:4px!important;background:#fff!important;color:#040316!important;font-size:1.2rem!important;cursor:pointer!important;transition:all .2s ease!important;box-shadow:0 2px 4px #0000001a!important;font-family:"Instrument Serif",serif!important}.sidebar-toggle:hover{background:#f0f0f0!important;border-color:#040316!important}.sidebar-toggle.hidden{opacity:0!important;pointer-events:none!important}.sidebar{flex:0 0 200px!important;max-width:200px!important;background:#fff!important;border-right:1px solid #eee!important;transition:transform .3s ease,opacity .3s ease!important;position:sticky!important;top:2rem!important;height:fit-content!important;z-index:100!important}.sidebar.collapsed{transform:translate(-100%)!important;opacity:0!important;pointer-events:none!important}@media (max-width: 768px){.main{flex-direction:column!important;padding:1rem!important;gap:1rem!important}.sidebar{position:static!important;transform:none!important;opacity:1!important;flex:none!important;max-width:none!important;border-right:none!important;border-bottom:1px solid #eee!important}.sidebar.collapsed{display:none!important}.content.sidebar-collapsed{margin-left:0!important}.sidebar-toggle{position:static!important;margin-bottom:1rem!important}}@media (max-width: 768px){.user-section{top:15px;right:15px}.sidebar-toggle{top:15px;left:15px}}.welcome-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fdfdfd,#f8f8f8)}.welcome-content{text-align:center;max-width:500px;padding:2rem}.welcome-content h1{font-size:3rem;margin-bottom:1rem;color:#040316;font-family:"Instrument Serif",serif}.welcome-content p{font-size:1.2rem;margin-bottom:2rem;color:#666;line-height:1.6}.sign-in-btn{background:#040316;color:#fff;padding:12px 24px;border:none;border-radius:8px;font-size:1.1rem;font-family:"Instrument Serif",serif;cursor:pointer;transition:all .3s ease}.sign-in-btn:hover{background:#1a1731;transform:translateY(-2px);box-shadow:0 4px 12px #0403164d}.user-section{position:fixed;top:20px;right:20px;z-index:1000;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50%;padding:4px;box-shadow:0 2px 10px #0000001a}.sidebar-toggle{top:20px;left:20px;z-index:999}@media (max-width: 768px){.user-section{top:15px;right:15px}.sidebar-toggle{top:15px;left:15px}.welcome-content h1{font-size:2.5rem}.welcome-content{padding:1rem}}:root{font-family:"Instrument Serif",serif;font-weight:400;font-style:normal;color-scheme:light;color:#040316;background-color:#fdfdfd;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;padding:0;background-color:#fdfdfd;font-family:"Instrument Serif",serif;font-weight:400;font-style:normal;color:#040316;line-height:1.6}button{font-family:"Instrument Serif",serif;cursor:pointer;border:none;background:none}input,select,textarea{font-family:"Instrument Serif",serif;font-size:1rem}h1,h2,h3,h4,h5,h6{font-family:"Instrument Serif",serif;font-weight:400;color:#040316;margin:0}
