:root{--primary-color: #004491;--background-color: #ebf1f8;font-family:Inter,system-ui;line-height:1.5;font-weight:400;color-scheme:light dark;color:var(--primary-color);background-color:var(--background-color);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}p{font-family:Inter,system-ui}code{font-family:Fira Code,monospace}#root{width:100%}.app{background-color:#ebf1f8;width:100%;height:100vh;overflow:hidden}.nav-host{background-color:#ebf1f8;width:100%;height:calc(100% - 3rem)}.toast{position:fixed;top:2rem;right:2rem;background-color:#1db954;color:#fff;padding:1rem 1.5rem;border-radius:.75rem;font-weight:500;box-shadow:0 8px 24px #0003;opacity:0;transform:translateY(20px);transition:opacity .3s ease,transform .3s ease;z-index:1000;pointer-events:none}.toast.show{opacity:1;transform:translateY(0);pointer-events:auto}.top-bar{width:100%;height:4rem;background-color:#ebf1f8;display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding-right:1rem;padding-left:1rem;box-sizing:border-box}.account-info{display:flex;flex-direction:row;gap:.5rem;justify-content:space-between;align-items:center;font-weight:700}.profile-image{width:2rem;height:2rem;border-radius:50%}@media (min-width: 768px){.top-bar{padding-right:2rem;padding-left:2rem}}@media (min-width: 1024px){.top-bar{padding-right:2rem;padding-left:2rem}}.dishes_grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:.2rem;padding-bottom:2rem;box-sizing:border-box}.item-container{width:100%;background-color:transparent;border-radius:.8rem;border:1px solid transparent;padding:.3rem;box-sizing:border-box}.item-container:hover{border:1px solid var(--primary-color)}.item-container.selected{border:1px solid var(--primary-color);background-color:#fff}.item-image{position:relative;width:100%;aspect-ratio:18 / 9;background-size:cover;background-position:center;border-radius:.4rem;cursor:pointer;filter:grayscale(100%)}.item-image.learned{filter:brightness(1.2)}.item-name{margin:0;font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bottom-bar{background-color:#fff;width:100%;height:8rem;padding:1rem;box-sizing:border-box;align-content:center}.copy-right-text{font-size:1rem;line-height:2rem;margin:0}.disclaimer-text{font-size:.8rem;line-height:1;margin:0}@media (min-width: 768px){.bottom-bar{height:7rem;padding:1rem 2rem}}@media (min-width: 1024px){.bottom-bar{height:7rem;padding:1rem 2rem}}@media (min-width: 1280px){.bottom-bar{height:6rem}}.recipe-page{width:100%;height:calc(100vh - 4rem);overflow-y:auto}.recipe-page-header{width:100%;height:6rem}.filters-container{width:100%;display:flex;flex-direction:row;gap:.4rem;padding-left:1rem;padding-right:1rem;box-sizing:border-box}.page-title{font-family:Inter,system-ui;font-size:1.8rem;font-weight:700;line-height:1;height:3rem;margin-top:0;margin-bottom:0;padding-left:1rem;padding-right:1rem;box-sizing:border-box}.recipe-page-body{width:100%;height:calc(100% - 6rem);display:flex;flex-direction:row;padding-left:1rem;padding-right:1rem;box-sizing:border-box}.dishes-container{width:60%;height:100%;display:flex;flex-direction:column;overflow-y:auto}.dish-info-container{width:40%;height:100%;padding-left:1rem;box-sizing:border-box}@media (min-width: 768px){.recipe-page-header{width:100%;height:7rem}.page-title{font-size:2.5rem;height:3.5rem;padding-left:2rem;padding-right:2rem}.filters-container{padding-left:2rem;padding-right:2rem;gap:1rem}.recipe-page-body{height:calc(100% - 7rem);padding-left:2rem;padding-right:2rem}.dishes-container{width:70%}.dish-info-container{width:30%}}@media (min-width: 1024px){.recipe-page-header{width:100%;height:8rem}.page-title{font-size:3rem;height:4rem}.recipe-page-body{height:calc(100% - 8rem)}.dishes-container{width:75%}.dish-info-container{width:25%}}@media (min-width: 1280px){.recipe-page-header{width:100%;height:9rem}.page-title{font-size:4rem;height:5rem}.recipe-page-body{height:calc(100% - 9rem)}.dishes-container{width:80%}.dish-info-container{width:20%}}.dish-info-box{position:relative;width:100%;background:transparent;border:1px solid var(--primary-color);border-radius:1rem;text-align:center;padding:.3rem;box-sizing:border-box}.dish-info-image{width:100%;border-radius:.5rem;filter:grayscale(100%)}.dish-info-image.learned{filter:brightness(1.2)}.dish-info-name{font-size:.8rem;font-weight:700;line-height:1.2rem;margin:0;padding-bottom:1rem}.ingredients-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(75px,1fr));gap:.2rem}.ingredient-card{position:relative;width:100%;aspect-ratio:18 / 9;background-size:cover;background-position:center;border-radius:.4rem;cursor:pointer;filter:brightness(1.3)}.item-overlay{position:absolute;bottom:0;width:100%;background:linear-gradient(to top,rgba(0,0,0,.4),transparent);color:#fff;font-weight:700;border-radius:12px}.btn-learn{width:100%;margin-top:1rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#1db954,#1ed760);border:none;border-radius:12px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 14px #0000001a}.btn-learn:hover{transform:translateY(-2px);box-shadow:0 6px 18px #00000026}.btn-learn:active{transform:scale(.97);box-shadow:0 2px 8px #0000001a}.tooltip-container{position:relative;display:inline-block;cursor:pointer}.tooltip-text{visibility:hidden;opacity:0;width:max-content;background-color:#333;color:#fff;text-align:center;padding:.5rem .75rem;border-radius:6px;position:absolute;z-index:1;bottom:125%;left:50%;transform:translate(-50%);white-space:nowrap;transition:opacity .3s ease}.tooltip-container:hover .tooltip-text{visibility:visible;opacity:1}.filter-btn{padding:.4rem .5rem;border-radius:1rem;font-size:14px;font-weight:500;border:1px solid var(--primary-color);background-color:#fff;color:#333;cursor:pointer;transition:background-color .25s,color .25s,box-shadow .25s}.filter-btn:hover{background-color:#c3e2ff}.filter-btn.active{background-color:var(--primary-color);color:#fff;font-weight:700}@media (min-width: 768px){.filter-btn{padding:.5rem 1rem;border-radius:9999px}}
