@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#19191b;--muted:#85838b;--purple:#c5b1f3;--paper:#faf9f6;--green:#deebcd}*{box-sizing:border-box}body{margin:0;background:#e9e4f2;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;min-height:100vh;display:flex;align-items:center;justify-content:center;gap:100px;padding:30px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0}button:active{transform:scale(.97)}button:focus-visible,a:focus-visible{outline:3px solid #9872df;outline-offset:3px}a{color:inherit;text-decoration:none}.intro{width:480px;height:740px;display:flex;flex-direction:column;justify-content:space-between}.brand{font-size:40px;font-weight:800;letter-spacing:-3px}.brand span{color:#9171ca;margin-left:4px}.eyebrow{font-size:11px;letter-spacing:3px;font-weight:700}h1{font-family:Manrope,Arial,sans-serif;font-size:68px;line-height:1.09;letter-spacing:-4px;font-weight:500;margin:22px 0}.intro p:not(.eyebrow){font-size:15px;line-height:1.8;color:#77717e}.tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:30px}.tags span{border:1px solid #cbc5d6;padding:10px 13px;border-radius:30px;font-size:11px}.intro footer{font-size:10px;letter-spacing:2px;border-top:1px solid #ccc5d8;padding-top:20px;display:flex;justify-content:space-between}.device{width:390px;height:844px;flex-shrink:0;background:var(--paper);border:7px solid #222124;box-shadow:0 0 0 2px #a9a0ae,10px 30px 65px #76658d30;border-radius:49px;position:relative;overflow:hidden}.status{height:47px;display:flex;align-items:center;justify-content:space-between;padding:0 26px;font-size:12px;position:relative}.island{position:absolute;left:50%;transform:translateX(-50%);width:99px;height:26px;background:#171719;border-radius:20px;top:9px}main{height:calc(100% - 47px);overflow:auto;scrollbar-width:none;padding:14px 20px 110px;touch-action:pan-y}main::-webkit-scrollbar{display:none}header{display:flex;align-items:center;gap:10px;margin-bottom:26px}.avatar{width:40px;height:40px;background:var(--green);border-radius:50%;display:grid;place-items:center;font-size:22px}.greeting{flex:1}.greeting small{font-size:10px;color:var(--muted)}.greeting b{display:block;font-size:13px;margin-bottom:4px}.round{height:39px;width:39px;border:1px solid #dfdedb;background:transparent;border-radius:50%;display:inline-grid;place-items:center;font-size:20px}.page-title{font-family:Manrope,sans-serif;font-size:31px;letter-spacing:-1.6px;font-weight:600;line-height:1.15;margin:0 0 10px}.sub{font-size:12px;color:var(--muted);line-height:1.6;margin:0 0 22px}.section{display:flex;align-items:center;justify-content:space-between;margin:24px 0 14px}.section h2{font-size:16px;letter-spacing:-.5px;margin:0}.section span,.link{font-size:11px;color:var(--muted);background:none}.hero{background:var(--purple);padding:19px;border-radius:20px;position:relative;overflow:hidden;min-height:130px;margin:20px 0}.hero h2{font-size:24px;line-height:1.1;letter-spacing:-1px;margin:4px 0 10px;position:relative;z-index:1}.hero p{font-size:10px;margin:0}.flower{position:absolute;right:5px;top:3px;font-size:115px;line-height:1;color:#ffbf63;transform:rotate(16deg);text-shadow:3px 5px 0 #b28a5460}.eyeline{font-size:9px;letter-spacing:1.4px;font-weight:700}.carousel{display:flex;gap:12px;overflow:auto;padding:7px 4px 18px;scroll-snap-type:x mandatory;scrollbar-width:none}.expiry{flex:0 0 191px;height:218px;background:#e9edda;border-radius:19px;text-align:left;padding:17px;position:relative;scroll-snap-align:center;overflow:hidden}.expiry:nth-child(2){background:#ffd6b3}.expiry:nth-child(3){background:#e2d9f2}.expiry b{font-size:18px;display:block;letter-spacing:-.7px;max-width:130px;line-height:1.15}.expiry small{display:block;font-size:10px;margin-top:10px}.expiry img{position:absolute;bottom:-8px;right:0;width:143px;height:147px;object-fit:contain;transform:rotate(-9deg)}.expiry .arrow{position:absolute;bottom:14px;left:15px;border-radius:50%;background:white;width:27px;height:27px;display:grid;place-items:center}.chip{background:#ffffff85;font-size:9px;border-radius:20px;padding:5px 8px;display:inline-block;margin-top:10px}.row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #eceae5;background:none;width:100%;text-align:left}.thumb{width:57px;height:61px;border-radius:13px;display:grid;place-items:center;background:#eeeee7;flex-shrink:0;font-size:29px}.thumb img{width:52px;height:57px;object-fit:contain}.row .text{flex:1}.row b{font-size:13px;font-weight:600}.row small{font-size:10px;color:var(--muted);display:block;margin-top:6px}.row .badge{font-size:9px;background:#f6e6db;padding:6px 8px;border-radius:15px;white-space:nowrap}.pill{padding:8px 14px;background:var(--ink);color:white;border-radius:30px;font-size:10px}.summary{display:flex;gap:10px;margin-top:15px}.summary>div{flex:1;background:white;border:1px solid #e9e6e0;border-radius:15px;padding:14px}.summary strong{display:block;font-size:23px}.summary small{font-size:10px;color:var(--muted)}nav{position:absolute;bottom:23px;left:13px;right:13px;background:#1c1c1e;border-radius:35px;display:flex;padding:6px;gap:3px;box-shadow:0 8px 20px #0002}nav button{background:transparent;color:#b6b6b9;border-radius:28px;height:49px;flex:1;font-size:18px;display:flex;justify-content:center;align-items:center;gap:7px}nav button.active{background:var(--paper);color:var(--ink);flex:1.8}nav span{font-size:10px}nav svg{width:20px;height:20px}.homebar{position:absolute;width:112px;height:4px;background:#222;bottom:7px;left:50%;transform:translateX(-50%);border-radius:4px}.backhead{display:flex;align-items:center;gap:16px;margin:0 0 26px}.backhead h2{font-size:15px;font-weight:600;margin:0}.backhead .round{font-size:19px}.add{background:var(--ink);color:white}.filters{display:flex;gap:6px;overflow:auto;margin:16px 0}.filters button{background:#eeede8;border-radius:22px;padding:9px 13px;font-size:10px;white-space:nowrap}.filters button.selected{background:var(--ink);color:white}.search{width:100%;border:1px solid #e3e0da;background:transparent;padding:12px 15px;border-radius:12px;font-size:12px;margin-bottom:5px}.shelf{border-radius:20px;background:#e6e3db;padding:13px;margin:14px 0}.shelf-top{display:flex;justify-content:space-between;font-size:10px;padding:3px 3px 11px;color:#75716b}.shelfgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;border-bottom:6px solid #d1cdc3;padding-bottom:12px;margin-bottom:13px}.shelfgrid:last-child{margin-bottom:0}.tile{height:83px;background:#f9f8f2;border-radius:12px;position:relative;font-size:32px}.tile img{width:62px;height:62px;object-fit:contain}.tile small{position:absolute;right:4px;top:4px;border-radius:20px;background:#272628;color:white;padding:3px 5px;font-size:8px}.tile.plus{background:#ffffff40;border:1.5px dashed #aba79e;font-size:32px;font-weight:300}.recipe-card{display:block;background:#ffc368;border-radius:19px;padding:19px;text-align:left;width:100%;position:relative;min-height:150px;overflow:hidden;margin:10px 0}.recipe-card b{font-size:22px;display:block;max-width:180px;letter-spacing:-.8px}.recipe-card small{display:block;font-size:10px;margin:10px 0}.bowl{position:absolute;right:-5px;bottom:-9px;font-size:92px;transform:rotate(-12deg)}.detail-art{height:220px;border-radius:24px;background:#e8eddc;display:grid;place-items:center;margin-bottom:25px;position:relative}.detail-art img{width:190px;height:200px;object-fit:contain}.detail-art .emoji{font-size:110px}.detail-art .chip{position:absolute;top:10px;left:13px}.facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.fact{padding:15px;border-radius:13px;background:#f0eee8}.fact small{font-size:9px;color:var(--muted);display:block;margin-bottom:7px}.fact b{font-size:12px}.quantity{display:flex;justify-content:space-between;align-items:center;margin:25px 0;font-size:12px}.stepper{display:flex;align-items:center;gap:20px}.stepper button{width:30px;height:30px;border-radius:50%;background:#eeece5;font-size:18px}.primary{background:var(--ink);color:white;border-radius:15px;width:100%;padding:16px;font-size:12px;margin-top:12px}.secondary{background:transparent;color:#a16b53;width:100%;padding:15px;font-size:11px}.note{padding:14px;background:#ede7f7;border-radius:12px;font-size:11px;line-height:1.6}.field{display:block;font-size:11px;font-weight:600;margin:19px 0}.field input,.field select,.field textarea{width:100%;padding:13px;border-radius:10px;border:1px solid #dedbd4;background:#fffefa;margin-top:8px;font-size:12px;color:var(--ink)}.two{display:flex;gap:12px}.two>*{flex:1;min-width:0}.upload{padding:20px;text-align:center;border:1px dashed #b9b3c4;border-radius:16px;background:#efebf5;font-size:12px;display:block;cursor:pointer}.upload input{display:block;font-size:10px;margin:12px auto 0;max-width:230px}.ring{width:208px;height:208px;border-radius:50%;background:conic-gradient(#b7a0e5 0 66%,#e9e5ef 66%);margin:28px auto;display:grid;place-items:center}.ring>div{width:166px;height:166px;border-radius:50%;background:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center}.ring strong{font-size:47px;letter-spacing:-2px}.ring small{font-size:11px;color:var(--muted)}.bars{display:flex;gap:8px;height:100px;align-items:flex-end;margin:22px 8px 30px}.bar{flex:1;text-align:center;font-size:9px;color:var(--muted)}.bar i{display:block;background:#c6b4e8;border-radius:6px 6px 0 0;margin-bottom:9px;min-height:3px}.empty{padding:30px 5px;text-align:center;font-size:12px;color:var(--muted)}.ingredient{display:flex;align-items:center;gap:10px;padding:12px 0;font-size:12px;border-bottom:1px solid #e8e5de}.ingredient input{accent-color:#9273c7}.instruction{display:flex;gap:13px;font-size:12px;line-height:1.7;margin:20px 0}.instruction b{width:25px;height:25px;flex-shrink:0;display:grid;place-items:center;background:#e7ddf5;border-radius:50%;font-size:10px}#toast{position:absolute;bottom:100px;left:25px;right:25px;background:#262329;color:white;border-radius:13px;padding:14px;font-size:12px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:10}#toast.show{opacity:1}.anim{animation:enter .24s ease}@keyframes enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:950px){body{gap:35px}.intro{width:330px}h1{font-size:51px}.tags{max-width:270px}}@media(max-width:740px){body{padding:0;background:var(--paper);display:block}.intro{display:none}.device{width:100%;max-width:450px;height:100dvh;min-height:640px;border:0;border-radius:0;box-shadow:none;margin:auto}.status{height:40px}.island{display:none}main{height:calc(100% - 40px);padding:14px 23px 110px}nav{bottom:23px;left:18px;right:18px}}
