:root{--cream:#f7f0df;--paper:#fffaf0;--ink:#243326;--muted:#718071;--forest:#244b32;--forest-2:#376845;--orange:#e88937;--gold:#efb54a;--line:#dddbc9;--shadow:0 18px 50px rgba(47,63,43,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Be Vietnam Pro,sans-serif;overflow-x:hidden}button,input,select{font:inherit}a{color:inherit;text-decoration:none}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,6vw,96px);border-bottom:1px solid rgba(36,75,50,.13);position:relative;z-index:10;background:#f7f0dfe0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:43px;height:43px;display:grid;place-items:center;color:#fff;background:var(--forest);border-radius:11px 11px 4px;font-weight:800;letter-spacing:-1px;box-shadow:inset 0 -4px #0000001f}.brand strong,.brand small{display:block}.brand strong{font-size:.78rem;letter-spacing:.11em}.brand small{font-family:Georgia,serif;font-style:italic;color:#8b6a3d;font-size:.9rem;margin-top:2px}.site-header nav{display:flex;gap:34px;font-weight:600;font-size:.88rem}.site-header nav a:hover{color:var(--orange)}.hero{min-height:560px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;padding:58px clamp(24px,8vw,132px) 74px;position:relative}.hero-copy{max-width:660px;z-index:2}.eyebrow{font-size:.73rem;font-weight:800;letter-spacing:.19em;color:#907344;display:flex;align-items:center;gap:9px;margin:0 0 18px}.eyebrow span{width:25px;height:2px;background:var(--orange)}h1,h2{font-family:Georgia,serif;margin:0;line-height:1.04}h1{font-size:clamp(3.1rem,6.1vw,6rem);font-weight:500;letter-spacing:-.055em}h1 em{font-weight:400;color:var(--orange)}.hero-description{font-size:1rem;line-height:1.8;color:#65705f;max-width:530px;margin:26px 0 31px}.primary-button{display:inline-flex;align-items:center;gap:18px;background:var(--forest);color:#fff;padding:16px 20px 16px 23px;border-radius:4px;font-weight:700;font-size:.88rem;box-shadow:0 9px #173622;transition:.18s}.primary-button:hover{transform:translateY(-2px);box-shadow:0 11px #173622}.primary-button span{font-size:1.2rem;color:#f5c75e}.hero-art{height:420px;position:relative;isolation:isolate}.sun{position:absolute;width:150px;height:150px;border-radius:50%;background:#efb54a;right:11%;top:2%;box-shadow:0 0 0 22px #efb54a1f}.hill{position:absolute;border-radius:50% 50% 0 0;bottom:36px}.hill-back{width:88%;height:52%;background:#789269;right:-12%}.hill-front{width:95%;height:36%;background:#416c4a;left:2%}.table{position:absolute;width:72%;height:27%;background:#a66a3d;bottom:10px;left:14%;border-radius:3px;border-bottom:16px solid #80502f;box-shadow:0 18px 0 -7px #553a2b;z-index:3}.table:before,.table:after{content:"";position:absolute;width:15px;height:80px;background:#69432d;bottom:-77px}.table:before{left:10%}.table:after{right:10%}.plate{position:absolute;width:112px;height:40px;border-radius:50%;background:#f7e3b4;left:31%;top:17px;border:8px solid #e5c98d;display:grid;place-items:center;color:#ca6635}.cup{position:absolute;width:41px;height:48px;background:#dce1ce;right:15%;top:-28px;border-radius:3px 3px 11px 11px;border-bottom:7px solid #bcc7ad}.cup:after{content:"";position:absolute;width:19px;height:24px;border:5px solid #dce1ce;border-left:0;right:-17px;top:7px;border-radius:0 13px 13px 0}.bread{position:absolute;font-size:60px;color:#e3a543;left:9%;top:-37px;transform:rotate(-8deg);text-shadow:0 7px #b87335}.pixel-cloud{position:absolute;background:#fff7e8;width:80px;height:24px;box-shadow:20px -18px #fff7e8,42px 0 #fff7e8}.cloud-one{top:15%;left:4%}.cloud-two{top:38%;right:0;transform:scale(.62)}.hero-badge{position:absolute;right:4%;bottom:12%;background:var(--paper);padding:14px 17px;display:flex;gap:10px;align-items:center;z-index:5;box-shadow:var(--shadow);transform:rotate(3deg);border:1px solid #e3d6bc}.hero-badge b{font:700 2rem Georgia;color:var(--orange)}.hero-badge span{font-size:.69rem;line-height:1.35;text-transform:uppercase;letter-spacing:.08em}.leaf{position:absolute;background:#66855f;width:130px;height:62px;border-radius:100% 0;opacity:.12;transform:rotate(-28deg)}.leaf-one{left:-30px;top:330px}.leaf-two{right:-25px;top:700px;transform:rotate(145deg)}.library{background:#fbf8ef;padding:88px clamp(24px,7vw,112px) 100px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.section-heading h2,.guide h2{font-size:clamp(2.3rem,4vw,4rem);font-weight:500}.section-heading>p{max-width:390px;line-height:1.65;color:var(--muted);font-size:.9rem}.toolbar{border:1px solid var(--line);background:#fff;padding:12px;display:flex;align-items:center;gap:16px;box-shadow:0 9px 30px #30392d0d}.search-box{height:52px;display:flex;align-items:center;gap:12px;flex:1;padding:0 16px;background:#f7f4eb;border:1px solid transparent}.search-box:focus-within{border-color:#b5c2aa;background:#fff}.search-box input{width:100%;border:0;outline:0;background:transparent;color:var(--ink)}kbd{border:1px solid #d4d1c6;background:#fff;padding:2px 7px;border-radius:4px;color:#8b8b82}.filters{display:flex;gap:7px}.filter{height:40px;border:1px solid transparent;background:transparent;color:#697668;padding:0 12px;cursor:pointer;border-radius:4px;font-size:.78rem;font-weight:700;white-space:nowrap}.filter span{margin-left:5px;color:#a3a99e}.filter:hover,.filter.active{background:var(--forest);color:#fff}.filter.active span{color:#f3cb75}.result-row{display:flex;align-items:center;justify-content:space-between;margin:28px 0 18px;color:var(--muted);font-size:.82rem}.result-row p{margin:0}.result-row strong{color:var(--ink)}.result-row select{border:0;background:transparent;color:var(--forest);font-weight:700;outline:0}.item-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.item-card{border:1px solid var(--line);background:var(--paper);min-height:305px;padding:16px;cursor:pointer;position:relative;transition:.2s;overflow:hidden}.item-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#bdc7b2}.item-card:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.item-visual{height:174px;background:#e9eadb;display:grid;place-items:center;position:relative;overflow:hidden}.item-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 49%,rgba(255,255,255,.35) 50%,transparent 51%);background-size:12px 12px;opacity:.35}.item-visual img{width:120px;height:120px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 13px 8px rgba(28,45,32,.24));position:relative;z-index:1;transition:.2s}.item-card:hover img{transform:scale(1.08) rotate(-2deg)}.item-fallback{font:800 2.1rem DM Mono,monospace;color:#66805f;position:relative}.badge{position:absolute;top:10px;left:10px;z-index:2;background:#fffaf0eb;padding:5px 8px;font-size:.61rem;font-weight:800;letter-spacing:.07em;color:var(--forest)}.edible-dot{position:absolute;top:12px;right:12px;z-index:2;width:9px;height:9px;border-radius:50%;background:#69a452;box-shadow:0 0 0 5px #69a4522e}.item-info{padding:16px 4px 3px}.item-info h3{margin:0 0 6px;font-family:Georgia,serif;font-size:1.22rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-id{font:500 .64rem DM Mono,monospace;color:#9a927f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-meta{display:flex;gap:8px;margin-top:14px}.meta-chip{font-size:.65rem;background:#eff0e7;color:#5e705e;padding:5px 7px}.empty-state{text-align:center;padding:80px 20px;color:var(--muted)}.empty-state span{font-size:3rem}.empty-state h3{color:var(--ink);font-family:Georgia,serif;font-size:1.8rem;margin:10px}.load-more{display:block;margin:30px auto 0;border:1px solid var(--forest);background:transparent;color:var(--forest);padding:13px 24px;font-weight:800;cursor:pointer}.load-more:hover{background:var(--forest);color:#fff}.guide{background:var(--forest);color:#fff;padding:75px clamp(24px,8vw,132px);display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.eyebrow.light{color:#dfc47c}.guide h2{max-width:400px}.guide ol{list-style:none;padding:0;margin:0;display:grid;gap:0}.guide li{display:flex;gap:20px;padding:22px 0;border-top:1px solid rgba(255,255,255,.16)}.guide li:last-child{border-bottom:1px solid rgba(255,255,255,.16)}.guide li>b{font:500 .72rem DM Mono;color:#e8b95d}.guide li span{display:flex;flex-direction:column;gap:5px}.guide li strong{font-family:Georgia,serif;font-size:1.15rem}.guide li small{color:#aac0ad;line-height:1.5}footer{padding:35px clamp(24px,6vw,96px);display:flex;justify-content:space-between;align-items:center;background:#162e20;color:#fff}footer>div{display:flex;align-items:center;gap:12px}footer p{margin:0}footer strong,footer small{display:block}footer strong{font-size:.75rem;letter-spacing:.1em}footer small{font-family:Georgia,serif;color:#91a998;margin-top:4px}.brand-mark.small{width:37px;height:37px;background:#e29b42}footer>a{font-size:.72rem;color:#c6b276;border-bottom:1px solid #6f704d;padding-bottom:4px}dialog{width:min(720px,calc(100% - 30px));border:0;padding:0;background:var(--paper);color:var(--ink);box-shadow:0 30px 100px #00000061}dialog::backdrop{background:#15271bba;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border:0;background:#fff;border-radius:50%;font-size:1.6rem;cursor:pointer;z-index:2}.dialog-grid{display:grid;grid-template-columns:42% 58%}.dialog-art{background:#e7eadb;min-height:390px;display:grid;place-items:center}.dialog-art img{width:210px;height:210px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 18px 12px rgba(0,0,0,.2))}.dialog-body{padding:44px 38px}.dialog-body .item-id{display:block;margin-bottom:9px}.dialog-body h2{font-size:2.25rem;margin-bottom:23px}.stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat{background:#f1efe5;padding:12px}.stat small,.stat strong{display:block}.stat small{font-size:.65rem;color:#818878;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}.stat strong{font-size:.82rem}.copy-button{width:100%;border:0;background:var(--forest);color:#fff;padding:13px;margin-top:20px;font-weight:800;cursor:pointer}.texture-link{font:500 .62rem DM Mono;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8e8c80;margin-top:10px}#toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,30px);background:#172d20;color:#fff;padding:12px 18px;opacity:0;pointer-events:none;transition:.25s;z-index:100;font-size:.8rem}#toast.show{opacity:1;transform:translate(-50%)}@media(max-width:1000px){.hero{grid-template-columns:1fr;padding-top:65px}.hero-art{margin-top:28px}.item-grid{grid-template-columns:repeat(3,1fr)}.toolbar{align-items:stretch;flex-direction:column}.filters{overflow-x:auto}.guide{grid-template-columns:1fr;gap:35px}}@media(max-width:700px){.site-header{height:72px}.site-header nav{display:none}.hero{padding-left:22px;padding-right:22px;min-height:auto}.hero-art{height:310px}.sun{width:110px;height:110px}.item-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.library{padding-left:14px;padding-right:14px}.section-heading{align-items:start;flex-direction:column}.section-heading>p{margin:0}.item-card{padding:10px;min-height:248px}.item-visual{height:135px}.item-visual img{width:94px;height:94px}.item-info h3{font-size:1rem}.item-meta{display:none}.dialog-grid{grid-template-columns:1fr}.dialog-art{min-height:220px}.dialog-art img{width:150px;height:150px}.dialog-body{padding:30px 22px}.guide{padding-left:24px;padding-right:24px}footer{align-items:flex-start;flex-direction:column;gap:24px}}@media(max-width:410px){h1{font-size:2.8rem}.filter{padding:0 9px}.hero-badge{right:0}.item-grid{grid-template-columns:1fr 1fr}.item-visual{height:120px}}.active-link{color:var(--orange)!important}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.secondary-button{font-weight:800;color:var(--forest);border-bottom:2px solid var(--gold);padding:8px 0}.subhero{min-height:440px;padding:85px clamp(24px,9vw,145px);display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.subhero:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:7%;top:15%;background:#efb54a24;box-shadow:0 0 0 55px #efb54a0f}.subhero h1{font-size:clamp(3rem,6vw,5.6rem);position:relative;z-index:1}.subhero>p:last-child{max-width:610px;line-height:1.75;color:var(--muted);position:relative;z-index:1}.cooking-hero{background:linear-gradient(115deg,#f8efdc,#f5e3c5)}.garden-hero{background:linear-gradient(115deg,#eef2df,#dce8ce)}.manual-section{background:#fbf8ef;padding:78px clamp(20px,7vw,112px) 100px;min-height:600px}.manual-section code{font-family:DM Mono,monospace;color:var(--forest);font-size:.75rem}.station-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px;margin-bottom:58px}.station-card{border:1px solid var(--line);background:var(--paper);padding:12px;text-align:left;cursor:pointer;color:var(--ink);transition:.2s}.station-card:hover,.station-card.selected{transform:translateY(-5px);border-color:var(--forest);box-shadow:var(--shadow)}.station-card.selected{background:#edf1e4}.station-picture{height:140px;background:#e8e7d7;display:grid;place-items:center;position:relative;overflow:hidden}.station-picture img{position:absolute;width:100%;height:100%;object-fit:cover;z-index:2}.station-picture span{font:700 3.7rem Georgia;color:#597259}.station-card small{display:block;color:var(--orange);font-weight:800;font-size:.65rem;letter-spacing:.05em;margin:13px 2px 4px}.station-card h3{font:600 1.23rem Georgia;margin:0 2px 8px}.station-card p{color:var(--muted);font-size:.7rem;line-height:1.5;margin:0 2px 7px}.recipe-toolbar{display:flex;align-items:center;gap:25px;margin-bottom:22px}.recipe-toolbar .search-box{background:#fff;border:1px solid var(--line);flex:1}.recipe-toolbar p{min-width:100px;color:var(--muted);font-size:.8rem}.recipe-toolbar strong{color:var(--ink)}.recipe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.recipe-card{display:flex;align-items:center;gap:14px;border:1px solid var(--line);background:#fffaf0;padding:13px;text-align:left;color:var(--ink);cursor:pointer;min-height:115px;transition:.18s}.recipe-card:hover{transform:translateY(-3px);border-color:#9bac91;box-shadow:0 12px 30px #2f3f2b1a}.recipe-output{width:82px;height:82px;background:#e9eadb;display:grid;place-items:center;flex:0 0 auto}.recipe-output img{width:68px;height:68px;object-fit:contain;image-rendering:pixelated}.material-cube{width:50px;height:50px;display:grid;place-items:center;background:#809978;color:#fff;font:800 .8rem DM Mono;box-shadow:inset -7px -7px #0000001f}.recipe-card-copy{min-width:0;flex:1}.station-label{display:inline-block;color:#8d703d;background:#f1e5ca;padding:4px 7px;font-size:.58rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.recipe-card h3{font:600 1rem Georgia;margin:7px 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recipe-card small{font-size:.62rem;color:var(--muted)}.recipe-arrow{font-size:1.2rem;color:var(--orange)}#guide-dialog{width:min(860px,calc(100% - 26px));max-height:90vh;overflow:auto;border:0;padding:0;background:var(--paper);box-shadow:0 30px 100px #00000061}#guide-dialog::backdrop{background:#15271bc2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.recipe-dialog-head,.crop-dialog-head{display:grid;grid-template-columns:240px 1fr;align-items:center;background:#e9eadb;padding:38px 54px 32px;gap:28px}.large-output{width:190px;height:190px;display:grid;place-items:center;background:#dce2ce}.large-output img{width:145px;height:145px;object-fit:contain;image-rendering:pixelated}.recipe-dialog-head h2,.crop-dialog-head h2{font-size:2.35rem;margin:12px 0 8px}.recipe-dialog-head p,.crop-dialog-head p{color:var(--muted);font-size:.8rem;line-height:1.6}.dialog-recipe-body{padding:32px 48px 44px}.dialog-recipe-body>h3{font:600 1.4rem Georgia;margin:0 0 20px}.ingredient-group{display:grid;grid-template-columns:38px 1fr;gap:13px;padding:15px 0;border-top:1px solid var(--line)}.ingredient-group>b,.crop-rule>b{width:32px;height:32px;display:grid;place-items:center;background:var(--forest);color:#fff;font:500 .65rem DM Mono}.ingredient-group small{color:var(--muted);font-size:.67rem}.ingredient-options{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:9px}.ingredient-options>span{display:flex;align-items:center;gap:7px;background:#f0eee4;padding:7px 9px}.ingredient-options img{width:34px;height:34px;object-fit:contain;image-rendering:pixelated}.ingredient-options .material-cube{width:32px;height:32px;font-size:.55rem}.ingredient-options em{font-style:normal;font-weight:700;font-size:.7rem}.ingredient-options>i{font-style:normal;color:#a29985;font-size:.6rem}.cook-result{margin-top:24px;background:var(--forest);color:#fff;padding:17px 20px;display:flex;justify-content:space-between;align-items:center}.cook-result span{font-size:.63rem;letter-spacing:.12em;color:#d9c076}.cook-result strong{font-family:Georgia,serif}.plant-steps{display:grid;grid-template-columns:repeat(4,1fr);background:var(--forest);color:#fff;margin:-120px 0 78px;position:relative;z-index:3;box-shadow:var(--shadow)}.plant-steps>div{padding:26px;border-right:1px solid rgba(255,255,255,.13);display:flex;flex-direction:column}.plant-steps b{font:500 .65rem DM Mono;color:#e8b95d}.plant-steps strong{font-family:Georgia,serif;font-size:1.05rem;margin:9px 0 6px}.plant-steps span{font-size:.68rem;line-height:1.55;color:#b4c6b7}.crop-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.crop-card{border:1px solid var(--line);background:#fffaf0;padding:12px;text-align:left;color:var(--ink);cursor:pointer;transition:.2s}.crop-card:hover{transform:translateY(-5px);border-color:#9bac91;box-shadow:var(--shadow)}.crop-picture{height:180px;background:#e1e8d2;display:grid;place-items:center;position:relative;overflow:hidden}.crop-picture img{width:125px;height:125px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 12px 8px rgba(35,63,40,.2))}.crop-picture .crop-custom-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2;filter:none}.crop-info{padding:14px 4px 5px}.crop-info>span{font-size:.62rem;color:#718663;font-weight:800}.crop-info h3{font:600 1.25rem Georgia;margin:7px 0 12px}.crop-info>div{display:flex;gap:12px;color:var(--muted);font-size:.66rem}.crop-dialog-head{grid-template-columns:320px 1fr}.crop-stage-images{display:flex;align-items:center;gap:8px}.crop-stage-images>div{width:135px;height:150px;background:#dce2ce;display:grid;place-items:center}.crop-stage-images img{width:95px;height:95px;object-fit:contain;image-rendering:pixelated}.crop-stage-images small{font-size:.58rem;text-transform:uppercase;color:#718663;font-weight:800}.crop-stage-images>span{color:var(--orange);font-size:1.2rem}.crop-details{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.crop-rule{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:17px 0;border-top:1px solid var(--line)}.crop-rule strong{font-family:Georgia,serif}.crop-rule p{font-size:.7rem;line-height:1.65;color:var(--muted);margin:5px 0}.block-list{font-family:DM Mono,monospace;font-size:.59rem!important}@media(max-width:1050px){.station-grid{grid-template-columns:repeat(3,1fr)}.recipe-grid{grid-template-columns:repeat(2,1fr)}.crop-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.subhero{min-height:380px;padding:65px 22px}.manual-section{padding-left:14px;padding-right:14px}.station-grid{grid-template-columns:1fr 1fr}.station-picture{height:115px}.recipe-grid{grid-template-columns:1fr}.recipe-toolbar{align-items:stretch;flex-direction:column}.plant-steps{grid-template-columns:1fr 1fr;margin-top:-75px}.crop-grid{grid-template-columns:1fr 1fr}.crop-picture{height:145px}.recipe-dialog-head,.crop-dialog-head{grid-template-columns:1fr;padding:48px 22px 24px}.large-output{width:150px;height:150px}.dialog-recipe-body{padding:26px 20px 35px}.crop-details{grid-template-columns:1fr}.crop-stage-images{justify-content:center}}@media(max-width:420px){.station-grid,.crop-grid{grid-template-columns:1fr}.plant-steps{grid-template-columns:1fr 1fr}.station-card{display:grid;grid-template-columns:115px 1fr;gap:12px}.station-picture{height:120px}}
