:root{color-scheme:light;--leaf:#204a36;--ink:#253f2b;--gold:#aa772f;--rule:#d9c9a3;--cream:#fff9e9;font-family:system-ui,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:#f3eedc}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 18% 8%,#fff8dc 0,transparent 55%),#f3eedc;min-height:100svh}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;font:inherit}button:disabled{cursor:default}button:focus-visible,a:focus-visible{outline:3px solid #f6aa35;outline-offset:3px}button{touch-action:manipulation}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#farm{max-width:980px;margin:auto;padding:0 clamp(12px,3vw,36px) max(32px,env(safe-area-inset-bottom))}.farm-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:57px;border-bottom:1px solid var(--rule);font-size:13px}.farm-nav>span,.farm-bar button,.basket,.farm-title,.farm-bar{display:flex;align-items:center}.farm-nav>span{gap:7px;font-weight:730}.farm-nav img,.farm-bar img{object-fit:contain;width:23px;height:23px}.farm-nav>a{padding:10px 0}.farm-nav button{color:var(--leaf);border:1px solid #adba9c;border-radius:99px;background:#fff8e4}.farm-title{justify-content:space-between;padding:24px 4px 19px}.farm-title p{margin:0 0 5px;color:#8e642e;font-size:12px;font-weight:700;letter-spacing:.14em}.farm-title h1{font:700 clamp(32px,4vw,50px)/1.15 Georgia,"Songti SC","SimSun",serif;margin:0}.basket{gap:9px}.basket>img{width:56px;height:48px;object-fit:contain}.basket>span{font-size:11px;color:#746744}.basket strong{display:block;color:var(--leaf);font:700 23px/1.1 Georgia,serif}
.farm-game{overflow:hidden;border-radius:18px;border:1px solid #b5ab7d;box-shadow:0 8px 22px #4a4b2615;background:var(--cream)}.farm-bar{justify-content:space-between;gap:7px;padding:7px 15px;background:#244d38;color:#fff0cb;font-size:12px}.farm-bar button{gap:5px;min-height:31px;padding:1px 9px 1px 4px;border:1px solid #a4935c;border-radius:20px;background:#153f2c;color:#fff1c4}.farm-bar #lifeTimer{margin-left:3px;font-size:11px}.clock{white-space:nowrap}.clock b{font:700 20px Georgia,serif}.clock.urgent{color:#ffcf72}
.field{position:relative;isolation:isolate;height:clamp(267px,40vw,365px);background:#77562f url('/luobo/assets/field13/land.webp') center 28%/100% 100% no-repeat}.field-label{position:absolute;top:6%;left:4%;border:1px solid #dbc88d;border-radius:3px;padding:4px 9px;color:#fff2c8;background:#254331e8;box-shadow:1px 3px 5px #372e2b39;font:700 11px/1.4 Georgia,serif;letter-spacing:.08em}
.plot{position:absolute;width:25%;height:30%;border:0;background:transparent;transform:translate(-50%,-50%);color:white;padding:0;outline-offset:-2px;border-radius:33%}.plot:nth-child(1){left:19%;top:49%}.plot:nth-child(2){left:48%;top:45%}.plot:nth-child(3){left:77%;top:48%}.plot:nth-child(4){left:22%;top:80%}.plot:nth-child(5){left:53%;top:78%}.plot:nth-child(6){left:82%;top:79%}
.plot .pit{position:absolute;left:12%;width:76%;height:44%;bottom:12%;object-fit:fill;filter:drop-shadow(1px 2px 2px #39201270)}.plot .plant{position:absolute;left:14%;bottom:24%;width:72%;height:91%;display:grid;justify-items:center;align-items:end;transform-origin:50% 95%;pointer-events:none}.plant img{width:100%;height:100%;object-fit:contain;object-position:bottom}.plot[data-state="empty"] .plant{visibility:hidden}.plot[data-crop="long"] .plant{overflow:hidden}.plot[data-crop="long"] .plant img{height:134%;max-width:90%;position:absolute;top:0}.plot[data-state="sown"] .plant{transform:scale(.42);filter:brightness(.88)}.plot[data-state="growing"] .plant{transform:scale(.61)}.plot[data-state="leafy"] .plant{transform:scale(.83)}.plot[data-state="ripe"] .plant{filter:drop-shadow(0 0 5px #fff3a7);animation:leafy 1.1s ease-in-out infinite alternate}.plant{transition:transform .45s ease}.plot>.label{position:absolute;z-index:2;bottom:0;left:50%;transform:translateX(-50%);background:#422915e8;color:#fff5cc;border:1px solid #ddc68c94;border-radius:20px;font-size:12px;font-weight:650;line-height:1.45;padding:2px 9px;white-space:nowrap}.plot[data-state="sown"]>.label{background:#345b58}.plot[data-state="ripe"]>.label{background:#fff0ad;color:#3c421d;border-color:#e8b753}.plot.is-watered:after{content:"";position:absolute;left:48%;top:28%;width:6px;height:8px;background:#a4e4f8;border-radius:60%;box-shadow:11px -9px #c4edfc,-9px -16px #b1e7fb;animation:water .65s both}.plot.is-picked:after{content:"入篮";position:absolute;left:40%;top:15%;font-weight:750;color:#fff7ac;text-shadow:0 1px 3px #463515;animation:pick .7s both}@keyframes leafy{to{transform:rotate(3deg) translateY(-2px)}}@keyframes water{to{opacity:0;transform:translateY(23px)}}@keyframes pick{to{opacity:0;transform:translateY(-24px)}}
.farm-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 2px;color:#6e684e;font-size:12px}.farm-footer span:first-child{white-space:nowrap}.farm-footer b{color:var(--leaf)}
@media(max-width:600px){#farm{padding-inline:10px}.farm-nav{min-height:49px;font-size:12px}.farm-title{padding:16px 3px 12px}.farm-game{border-radius:13px}.field{height:clamp(252px,69vw,325px);background-size:auto 100%}.plot{width:29%}.farm-bar{padding:5px 9px}.seed-options{gap:6px}.seed-options button{padding:5px 7px;gap:5px}.task{gap:8px}.task button{padding-inline:13px}.task strong{font-size:17px}.farm-footer{align-items:flex-start;font-size:11px}.farm-footer span:last-child{text-align:right;max-width:65%}.basket>img{width:43px;height:36px}}
@media(prefers-reduced-motion:reduce){.plot *,.plot:after{animation:none!important;transition:none!important}}
.plot[data-state="sown"] .plant img{visibility:hidden}.plot[data-state="sown"] .plant{transform:none}.plot[data-state="sown"] .plant:before,.plot[data-state="sown"] .plant:after{content:"";position:absolute;width:20%;height:18%;bottom:0;background:linear-gradient(32deg,#517323,#acd34b 65%,#cee279);border-radius:2% 95%;box-shadow:inset 0 -1px 2px #3d5b23}.plot[data-state="sown"] .plant:before{left:32%;transform:rotate(9deg)}.plot[data-state="sown"] .plant:after{left:48%;transform:rotate(-68deg)}
.basket{border:0;background:transparent;padding:4px 2px;text-align:left}.basket strong{font:600 13px/1.4 system-ui}.basket strong b{font:700 24px Georgia,serif}
.heart-meter{display:flex;align-items:center;gap:6px}.heart-meter img{width:25px;height:25px}.farm-bar{padding-block:8px}.farm-bar>span:last-child{color:#e3d5aa}.farm-bar>span:last-child b{color:#fff3c9;font-size:16px;margin-left:5px}
.plant svg,.packet-art svg,.packet-art img{width:100%;height:100%;object-fit:contain}.plot[data-state="sown"] .plant svg{visibility:hidden}
.field-note{min-height:37px;background:#f9edce;border-bottom:1px solid #ddc99d;color:#5d462d;padding:9px 15px;font-size:12px;font-weight:600}
.farm-tabs{display:flex;padding:0 13px;border-bottom:1px solid var(--rule);gap:4px}.farm-tabs button{flex:1;padding:12px 3px 10px;color:#736d52;background:none;border:0;border-bottom:3px solid transparent;font-weight:660;font-size:14px}.farm-tabs button[aria-pressed=true]{color:#23543b;border-bottom-color:#4a7450}
.toolbox{padding:14px clamp(12px,3vw,23px) 5px}.toolbox h2{margin:0 0 5px;font:700 21px/1.4 Georgia,"Songti SC","SimSun",serif}.toolbox p,.toolbox small{color:#67624c;font-size:12px;line-height:1.55}.toolbox p{margin:0 0 13px}.seed-bag,.stock{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.seed-packet,.shop-item{display:flex;align-items:center;gap:10px;border:1px solid #d1c394;border-radius:10px;background:#f8f1d9;color:var(--ink);padding:8px 10px;min-width:0;text-align:left;position:relative}.seed-packet[aria-pressed=true]{background:#e5edcf;border-color:#63815a;box-shadow:inset 0 0 0 1px #63815a}.packet-art{display:grid;place-items:center;flex-shrink:0;width:48px;height:52px}.seed-packet strong,.shop-item h3{font:700 15px/1.45 system-ui;margin:0}.seed-packet small,.shop-item small{display:block;font-size:11px}.quantity{margin-left:auto;white-space:nowrap;font-weight:700;color:#4b6a38}.simple,.earn a{display:inline-block;color:#315d40;background:none;border:0;border-bottom:1px solid #8ea07a;font-size:12px;padding:4px 0;margin:8px 0}
.shop-item{background:#fffbef}.shop-item>div{flex:1}.shop-item button,.trade button{background:#28533b;border:1px solid #456b49;color:#fff4cc;border-radius:20px;padding:7px 11px;font-weight:650;font-size:12px;min-height:37px;white-space:nowrap}.trade button:disabled{background:#eee6ce;border-color:#d3caaa;color:#716d55}.stock-count{color:#7c805e!important}.bottle-art{background:linear-gradient(100deg,#bed6ac,#71ae7d 40%,#499a78);color:#fff8bc;font-size:22px;width:28px;height:35px;border:2px solid #779373;border-radius:8px;position:relative;text-align:center;line-height:30px}.bottle-art:before{position:absolute;content:"";width:14px;height:6px;background:#bb9e5d;top:-7px;left:5px;border-radius:2px}
.earn{display:flex;align-items:center;gap:13px;font-size:12px;margin-top:3px}.trade{display:flex;gap:12px;align-items:center;background:#e9efd5;border:1px solid #c3ccac;border-radius:10px;padding:12px;color:#4d6145;font-size:12px}.trade img{width:52px;height:50px;object-fit:contain}.trade strong{display:block;font-size:21px;color:var(--leaf)}.trade button{margin-left:auto}.pick-list{padding-top:9px;margin-bottom:5px;font-size:12px;color:#5a684e}.farm-notice{color:#285139;font-size:13px;font-weight:600;margin:6px 14px 13px}.farm-notice:not(:empty){background:#ebf0da;border-left:3px solid #799960;padding:7px 10px}
@media(max-width:680px){.stock{grid-template-columns:1fr}.seed-packet{gap:6px;padding:6px}.seed-packet .packet-art{width:27px;height:39px}.seed-packet strong{font-size:13px}.seed-packet small{font-size:10px}.quantity{font-size:12px}.field-note{padding-inline:10px}.farm-tabs{padding:0 7px}.shop-item .packet-art{width:40px;height:44px}.earn{gap:9px}.farm-footer span:last-child{max-width:55%}}
.trade .take-basket{background:#28533b;border:1px solid #456b49;color:#fff4cc;border-radius:20px;padding:9px 12px;font-weight:650;font-size:13px;white-space:nowrap;margin-left:auto}

.care-guide{background:#fff6df;border-bottom:1px solid var(--rule);padding:0 15px;color:#4d5b42;font-size:12px}
.care-guide summary{cursor:pointer;padding:8px 0;width:fit-content;color:#315941;font-weight:650}
.care-guide p{margin:0 0 8px;line-height:1.65;max-width:65em}
.plot>.label{display:inline-flex;align-items:center;justify-content:center;gap:3px;font-variant-numeric:tabular-nums}
.action-icon:empty{display:none}.action-icon svg{display:block;width:21px;height:19px}
.plot[data-action=thirsty]>.label{background:#e5f3e9;color:#173f3c;border-color:#446f68;padding:2px 7px 2px 4px;box-shadow:0 2px 6px #36230466}
.plot[data-action=withered]>.label{background:#f4e2bb;color:#553b23;border-color:#9a764a;padding:2px 7px 2px 4px}
.plot .dry-sprig,.plot .tool-dig,.plot .tool-pour{position:absolute;display:none;pointer-events:none}
.plot .dry-sprig{left:25%;bottom:24%;width:50%;height:72%;filter:drop-shadow(1px 2px 2px #31210f88)}
.plot[data-state=withered] .dry-sprig{display:block}.plot[data-state=withered] .plant{display:none}
.plot[data-state=withered] .pit{filter:saturate(.48) brightness(1.13)}
.plot .tool-pour,.plot .tool-dig{z-index:3;right:10%;top:-13%;width:37%;height:49%;filter:drop-shadow(0 2px 2px #3b311666)}
.dry-sprig svg,.tool-dig svg,.tool-pour svg{width:100%;height:100%}
.plot.is-watered .tool-pour{display:block;animation:tip-can .82s both}
.plot.is-dug .tool-dig{display:block;animation:turn-soil .8s both}
.plot.is-watered:after{left:55%;top:29%;z-index:2;animation:water .48s .18s both}
@keyframes tip-can{0%{opacity:0;transform:translate(8px,-3px)}20%{opacity:1}50%,68%{transform:rotate(-24deg)}100%{opacity:0;transform:translate(6px,-5px)}}
@keyframes turn-soil{0%{opacity:0;transform:translate(6px,-8px)}30%{opacity:1}55%{transform:translate(-5px,18px) rotate(-15deg)}100%{opacity:0;transform:translate(4px,-5px) rotate(8deg)}}
.plot[data-crop]:not([data-crop=""]) .plant{background:url('/luobo/farm/growth-paint.webp') var(--crop-col) var(--crop-row)/400% 500% no-repeat;width:68%;height:auto;aspect-ratio:1;left:16%;bottom:23%;filter:drop-shadow(0 2px 1px #4e40184d)}
.plot[data-state=seed] .plant{visibility:hidden}.plot[data-state=sprout] .plant{transform:scale(.42)}.plot[data-state=leaves] .plant{transform:scale(.65)}.plot[data-state=bloom] .plant{transform:scale(.85)}.plot[data-state=fruit] .plant{transform:scale(.94)}
