@font-face{font-family:"FarmDisplay";src:url("./assets/fonts/ZCOOLKuaiLe-Subset.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
:root{font-family:"Microsoft YaHei UI","Microsoft YaHei","PingFang SC",sans-serif;--cream:#fff6dc;--cream2:#efcf8e;--wood:#9a5a25;--wood-dark:#603313;--green:#4b963d;--ink:#603719;--muted:#8a6848;--shadow:0 7px 18px rgba(72,43,22,.28)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 18%,#8ea18b,#26382d 72%)}button{font:inherit;color:inherit}button:focus-visible{outline:3px solid #ffe96a;outline-offset:2px}
.phone-shell{position:relative;width:min(100vw,470px);height:100dvh;max-height:960px;overflow:hidden;background:#d8d6a7;box-shadow:0 28px 90px rgba(0,0,0,.4)}
.game-screen{position:absolute;inset:0;overflow:hidden;background-position:center;background-size:cover;background-repeat:no-repeat;transition:opacity .2s ease}.screen-home{background-image:url("./assets/farm-home-v2.webp")}.screen-farm{background-image:url("./assets/scene-farm-empty-v1.webp")}.screen-fishing{background-image:url("./assets/scene-fishing-v4.webp")}.screen-ranch{background-image:url("./assets/scene-ranch-v4.webp")}.screen-workshop{background-image:url("./assets/scene-workshop-v4.webp")}.screen-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(34,48,35,.38),transparent 15%,transparent 74%,rgba(46,35,22,.28))}
.hud{position:relative;z-index:10;height:76px;display:flex;align-items:center;justify-content:space-between;padding:max(7px,env(safe-area-inset-top)) 8px 4px}.player-card,.currency,.settings,.back-home{border:3px solid var(--wood);background:linear-gradient(#fff8dc,#efcf93);box-shadow:0 3px 0 var(--wood-dark),var(--shadow),inset 0 2px white;cursor:pointer}.player-card{width:168px;height:64px;display:flex;align-items:center;gap:7px;padding:3px 8px 3px 2px;border-radius:31px 18px 18px 31px;text-align:left}.player-card img{width:55px;height:55px;border-radius:50%;object-fit:cover}.player-card>span:last-child{min-width:0;display:grid;flex:1}.player-card b{font-size:17px;color:var(--ink)}.player-card small{overflow:hidden;color:var(--muted);font-size:8px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.player-card i{height:8px;margin-top:3px;overflow:hidden;border-radius:6px;background:#775139;box-shadow:inset 0 1px 2px #432}.player-card i em{display:block;width:48%;height:100%;border-radius:inherit;background:linear-gradient(#b6eb55,#57a932);transition:width .25s ease}
.calendar-badge{position:absolute;z-index:9;top:82px;right:8px;width:148px;min-height:58px;display:grid;place-items:center;align-content:center;padding:6px 8px;border:4px solid #9a5d28;border-radius:17px;color:#603719;background:linear-gradient(#fff9e8,#efcf8f);box-shadow:0 4px 0 #633613,0 8px 17px rgba(61,39,20,.27),inset 0 0 0 2px #ffefbc,inset 0 3px white;text-align:center}.calendar-badge b{font-family:"FarmDisplay",sans-serif;font-size:13px;font-weight:400;line-height:1.1;text-shadow:0 1px white}.calendar-badge span{margin-top:2px;color:#6d4d2d;font-size:9px;font-weight:800}.calendar-badge small{margin-top:1px;color:#96714a;font-size:7px}.screen-home .calendar-badge{display:none}
.hud-right{display:flex;gap:6px;align-items:center}.currency{height:46px;display:flex;align-items:center;gap:5px;padding:3px 5px 3px 8px;border-radius:22px}.currency b{min-width:38px;font-size:14px}.currency em{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;color:white;background:linear-gradient(#80c454,#3f8d37);border:2px solid #fff1ba;font-style:normal;font-weight:900}.coin{width:16px;height:16px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff4ad 0 13%,#edbd42 15% 58%,#b77922 60%);box-shadow:inset 0 0 0 2px #ffe786}.settings{width:48px;height:48px;display:grid;place-items:center;padding:0;border-radius:14px;overflow:hidden}.back-home{position:absolute;left:8px;top:max(10px,env(safe-area-inset-top));z-index:11;width:45px;height:45px;border-radius:14px;font-size:34px;line-height:1}.game-screen:not(.screen-home) .player-card{margin-left:50px;width:120px}.game-screen:not(.screen-home) .player-card img{display:none}.game-screen:not(.screen-home) .player-card{border-radius:17px;padding-left:12px}
.utility-sprite{display:block;width:42px;height:54px;background:url("./assets/utility-icons-v3.webp") no-repeat;background-size:400% 100%}.utility-storage{background-position-x:0}.utility-orders{background-position-x:33.333%}.utility-gift{background-position-x:66.666%}.utility-settings{background-position-x:100%}.settings .utility-sprite{width:38px;height:44px}
.screen-content{position:absolute;inset:76px 0 94px;z-index:3}.home-heading{margin:4px 20px;color:white;text-shadow:0 3px 11px rgba(32,43,29,.65)}.home-heading small{display:inline-block;padding:4px 9px;border-radius:11px;background:rgba(52,79,56,.54);font-size:9px}.home-heading h1{margin:7px 0 2px;font-size:26px}.home-heading p{margin:0;font-size:11px}.area-map{position:absolute;inset:83px 0 5px}.area-gate{position:absolute;width:146px;height:82px;display:grid;grid-template-columns:60px 1fr;align-items:center;padding:5px 9px 5px 4px;border:4px solid var(--wood);border-radius:21px;color:var(--ink);background:linear-gradient(#fff6d9,#ebc984);box-shadow:0 4px 0 var(--wood-dark),0 9px 21px rgba(58,38,20,.32),inset 0 2px white;cursor:pointer;text-align:left}.area-gate:active{transform:translateY(3px);box-shadow:0 1px 0 var(--wood-dark)}.area-gate:nth-child(1){left:14px;top:4%}.area-gate:nth-child(2){right:14px;top:27%}.area-gate:nth-child(3){left:14px;top:51%}.area-gate:nth-child(4){right:14px;top:75%}.area-gate b{font-size:16px}.area-gate small{display:block;margin-top:2px;color:var(--muted);font-size:8px}.nav-sprite{width:55px;height:72px;display:block;background:url("./assets/nav-icons-v3.webp") no-repeat;background-size:400% 100%;filter:drop-shadow(0 2px 1px rgba(76,44,20,.22))}.nav-farm{background-position-x:0}.nav-fishing{background-position-x:33.333%}.nav-ranch{background-position-x:66.666%}.nav-workshop{background-position-x:100%}
.screen-title{position:absolute;left:13px;top:5px;z-index:5;padding:8px 12px;border:3px solid var(--wood);border-radius:16px;color:var(--ink);background:linear-gradient(#fff7dc,#efcf95);box-shadow:0 3px 0 var(--wood-dark),var(--shadow),inset 0 2px white}.screen-title h1{margin:0;font-size:18px}.screen-title p{margin:2px 0 0;color:var(--muted);font-size:9px}.play-hotspots{position:absolute;inset:0}.play-spot{position:absolute;display:flex;align-items:center;gap:5px;padding:5px 9px 5px 5px;border:3px solid var(--wood);border-radius:18px;color:var(--ink);background:linear-gradient(#fff7de,#f0d39a);box-shadow:0 3px 0 var(--wood-dark),0 7px 15px rgba(61,39,21,.27);cursor:pointer}.play-spot i{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:white;background:linear-gradient(#74b953,#3f8938);border:2px solid #fff0b3;font-style:normal;font-size:10px;font-weight:900}.play-spot span{display:grid;text-align:left}.play-spot b{font-size:10px}.play-spot small{font-size:7px;color:var(--muted)}
.game-footer{position:absolute;z-index:8;left:0;right:0;bottom:0;min-height:92px;padding:7px 8px max(7px,env(safe-area-inset-bottom));background:linear-gradient(#a96e35,#74451f);border-top:4px solid #5b3217;box-shadow:inset 0 3px #d69a57,0 -8px 20px rgba(50,34,21,.22)}.home-footer,.sub-footer{height:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.footer-button{display:grid;place-items:center;align-content:center;gap:0;padding:2px;border:3px solid #9a6537;border-radius:16px;color:var(--ink);background:linear-gradient(#fff5d6,#edca8c);box-shadow:inset 0 2px white,0 2px var(--wood-dark);cursor:pointer}.footer-button b{margin-top:-8px;font-size:10px}.footer-button .utility-sprite{width:36px;height:47px}.footer-button.active{color:white;border-color:#ffec77;background:linear-gradient(#7bc452,#3c8b36)}.home-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#6fa94f;color:white;font-size:21px}.sub-footer{grid-template-columns:1.25fr repeat(3,1fr)}.sub-summary{display:grid;align-content:center;padding:5px 9px;border:3px solid #9a6537;border-radius:16px;background:linear-gradient(#fff5d6,#edca8c);box-shadow:inset 0 2px white}.sub-summary small{font-size:8px;color:var(--muted)}.sub-summary b{font-size:12px}.tool-button{border:3px solid #9a6537;border-radius:16px;background:linear-gradient(#fff5d6,#edca8c);box-shadow:inset 0 2px white,0 2px var(--wood-dark);font-size:11px;font-weight:900;cursor:pointer}
.backdrop{position:absolute;inset:0;z-index:20;background:rgba(32,39,29,.45);backdrop-filter:blur(3px)}.bottom-sheet{position:absolute;z-index:21;left:0;right:0;bottom:0;max-height:72%;padding:10px 17px calc(20px + env(safe-area-inset-bottom));overflow-y:auto;border-radius:27px 27px 0 0;background:#fff3d2;border-top:4px solid var(--wood);box-shadow:0 -18px 48px rgba(48,35,23,.35);transform:translateY(105%);transition:transform .28s ease}.bottom-sheet.open{transform:translateY(0)}.grabber{width:38px;height:4px;margin:0 auto 12px;border-radius:4px;background:#c7a979}.sheet-head{display:flex;justify-content:space-between;align-items:center}.sheet-head h2{margin:0;color:var(--ink);font-size:20px}.sheet-head small{color:var(--muted);font-size:9px}.sheet-close{width:34px;height:34px;border:0;border-radius:50%;background:#ead3a5;font-size:20px}.action-card,.order-card{margin-top:11px;padding:13px;border:2px solid #d5b777;border-radius:17px;background:#fffaf0}.action-card h3,.order-card h3{margin:0;font-size:13px}.action-card p,.order-card p{margin:5px 0 9px;color:var(--muted);font-size:10px}.meta{display:flex;gap:6px}.meta span{padding:5px 8px;border-radius:10px;background:#e3e8cd;font-size:9px}.action-row{display:grid;grid-template-columns:1.3fr 1fr;gap:7px;margin-top:10px}.primary,.secondary{min-height:42px;border-radius:14px;font-weight:900}.primary{border:3px solid #47752e;color:white;background:linear-gradient(#7bc44f,#3b8a35);box-shadow:inset 0 2px rgba(255,255,255,.5),0 2px #305e25}.secondary{border:2px solid #cfb579;background:#f7e8c0}.toast{position:absolute;z-index:30;left:50%;bottom:108px;padding:10px 16px;border-radius:18px;color:white;background:rgba(53,64,43,.94);transform:translate(-50%,15px);opacity:0;transition:.2s;white-space:nowrap;font-size:10px}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:471px){.phone-shell{height:min(100dvh,920px);border-radius:27px}}@media(max-height:700px){.screen-content{inset:72px 0 82px}.game-footer{min-height:80px}.area-gate{height:70px}.area-gate:nth-child(4){top:72%}.nav-sprite{width:48px;height:64px}}

/* v5: 参考传统休闲农场游戏的字体、描边与按钮层次 */
.player-card,.currency,.settings,.back-home,.area-gate,.screen-title,.play-spot,.footer-button,.tool-button,.sub-summary{
  border-color:#9a5d28;
  background:linear-gradient(180deg,#fff9e8 0%,#fff0c7 47%,#ebc67f 100%);
  box-shadow:0 3px 0 #663814,0 7px 16px rgba(72,42,20,.28),inset 0 0 0 2px #ffefbd,inset 0 3px 0 rgba(255,255,255,.9);
}
.player-card b,.currency b,.area-gate b,.screen-title h1,.play-spot b,.footer-button b,.tool-button,.sub-summary b,.sheet-head h2,.action-card h3,.order-card h3{
  font-family:"FarmDisplay","Microsoft YaHei UI",sans-serif;
  font-weight:400;
  letter-spacing:.035em;
  color:#603719;
  text-shadow:0 1.5px 0 #fff7dc;
  -webkit-text-stroke:.15px rgba(74,38,15,.35);
}
.home-heading h1{
  font-family:"FarmDisplay","Microsoft YaHei UI",sans-serif;
  font-weight:400;
  letter-spacing:.06em;
  text-shadow:0 3px 0 rgba(69,42,20,.72),0 5px 12px rgba(38,50,31,.6);
  -webkit-text-stroke:1px rgba(75,44,20,.4);
}
.home-heading p,.home-heading small{font-weight:800;text-shadow:0 2px 2px rgba(52,38,24,.72)}
.area-gate{border-width:4px;border-radius:22px;box-shadow:0 4px 0 #653813,0 9px 20px rgba(61,38,20,.3),inset 0 0 0 2px #ffefb8,inset 0 3px 0 white}
.area-gate b{font-size:17px}.area-gate small{font-weight:800;color:#8a6342}
.screen-title{border-width:4px;border-radius:18px;box-shadow:0 4px 0 #653813,0 8px 18px rgba(61,38,20,.26),inset 0 0 0 2px #ffefbc,inset 0 3px 0 white}
.screen-title h1{font-size:19px}.screen-title p{font-weight:800;color:#8a6745}
.play-spot{border-width:3px;box-shadow:0 3px 0 #653813,0 7px 15px rgba(61,39,21,.27),inset 0 0 0 1px #ffedb8,inset 0 2px 0 white}
.play-spot i{background:linear-gradient(180deg,#8dd25f,#47a13b 58%,#34802f);border:2px solid #fff1b2;box-shadow:0 2px 0 #386923,inset 0 2px 0 rgba(255,255,255,.55);text-shadow:0 1px 1px #356327}
.play-spot small{font-weight:800;color:#8a6545}
.game-footer{background:linear-gradient(180deg,#b87839,#8d5527 52%,#6d3b1a);border-top:4px solid #5b3012;box-shadow:inset 0 3px 0 #dda15c,inset 0 -2px 0 #4e280e,0 -8px 22px rgba(58,37,20,.25)}
.footer-button,.tool-button,.sub-summary{border-width:3px;box-shadow:0 3px 0 #643715,inset 0 0 0 2px #ffedb6,inset 0 3px 0 white}
.footer-button b{font-size:11px}.footer-button.active{border-color:#f7e96f;background:linear-gradient(180deg,#8bd657 0%,#51a83e 54%,#34852f 100%);box-shadow:0 3px 0 #436a23,0 0 0 2px rgba(255,240,92,.48),inset 0 0 0 2px #a9e66d,inset 0 3px 0 rgba(255,255,255,.62)}
.footer-button.active b{color:white;text-shadow:0 2px 1px #356d2e;-webkit-text-stroke:.2px rgba(35,86,27,.65)}
.tool-button:active,.footer-button:active,.area-gate:active,.play-spot:active{transform:translateY(2px);box-shadow:0 1px 0 #603313,inset 0 0 0 2px #ffedb6}
.bottom-sheet{background:linear-gradient(180deg,#fff8e4,#f1d59d);border-top:5px solid #935727;box-shadow:0 -4px 0 #613414,0 -18px 48px rgba(48,35,23,.35),inset 0 3px 0 white}
.action-card,.order-card{border:3px solid #d19c52;background:linear-gradient(#fffdf4,#fff1d1);box-shadow:inset 0 0 0 2px #ffe9b4,0 3px 0 #9d6833}
.primary{border:3px solid #3c742b;background:linear-gradient(180deg,#85ce55 0%,#4aa03c 55%,#33812f 100%);box-shadow:0 3px 0 #2b5f24,inset 0 0 0 2px #9be16c,inset 0 3px 0 rgba(255,255,255,.55);font-family:"FarmDisplay","Microsoft YaHei UI",sans-serif;font-size:16px;font-weight:400;letter-spacing:.08em;text-shadow:0 2px 1px #336b2a}
.secondary{border:3px solid #b48142;background:linear-gradient(#fff7de,#ebcb8b);box-shadow:0 3px 0 #805126,inset 0 0 0 2px #ffedba;font-family:"FarmDisplay","Microsoft YaHei UI",sans-serif;font-weight:400;color:#68401e}
.sheet-close{border:2px solid #bc8a4a;box-shadow:inset 0 2px white;color:#76502d;font-weight:900}
.currency{box-shadow:0 3px 0 #663814,0 6px 12px rgba(72,42,20,.23),inset 0 0 0 2px #ffefbd,inset 0 3px white}.currency b{font-size:15px}.currency em{box-shadow:0 2px 0 #326426,inset 0 0 0 1px #a5df72,inset 0 2px 0 rgba(255,255,255,.6)}
.area-gate{width:164px}.area-gate:nth-child(1),.area-gate:nth-child(3){left:8px}.area-gate:nth-child(2),.area-gate:nth-child(4){right:8px}.area-gate b{font-size:15px;white-space:nowrap}.area-gate small{white-space:nowrap}
.sub-footer{grid-template-columns:1.5fr repeat(3,1fr)}.sub-summary{padding-left:7px;padding-right:7px}.sub-summary b{font-size:10px;white-space:nowrap}
.area-gate b{font-size:16px;letter-spacing:0}.screen-title h1{font-size:21px}.play-spot b{font-size:11px}.footer-button b,.tool-button{font-size:13px}.sub-summary b{font-size:12px}.player-card b,.currency b{font-size:17px}

/* v6: 分界面严格采用参考图的信息结构 */
.game-screen:not(.screen-home) .player-card{margin-left:0;width:158px;border-radius:31px 18px 18px 31px;padding:3px 8px 3px 2px}.game-screen:not(.screen-home) .player-card img{display:block}.back-home{top:84px;left:8px;width:38px;height:38px;border-radius:12px;font-size:29px;background:linear-gradient(#fff5d5,#e8bf76)}
.mode-label{position:absolute;left:53px;top:9px;z-index:7;padding:7px 13px;border:3px solid #955925;border-radius:14px;color:#62391d;background:linear-gradient(#fff8e3,#edcb8a);box-shadow:0 3px 0 #613312,inset 0 0 0 2px #ffedb7,inset 0 2px white;font-family:"FarmDisplay",sans-serif;font-size:16px;text-shadow:0 1px white}
.resource-banner{position:absolute;z-index:7;left:70px;right:8px;top:56px;height:66px;display:flex;align-items:center;justify-content:space-around;padding:6px 17px 6px 9px;border:4px solid #9a5b28;border-radius:20px 24px 24px 20px;background:linear-gradient(#fff9e8,#f0d49d);box-shadow:0 4px 0 #633613,0 8px 18px rgba(65,41,21,.27),inset 0 0 0 2px #ffefbc,inset 0 3px white}.resource-banner span{display:grid;place-items:center;gap:1px}.resource-banner span i{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:#86501e;background:#f5c75b;border:2px solid #aa6c26;font-family:"FarmDisplay",sans-serif;font-style:normal;font-size:13px;box-shadow:inset 0 2px #ffe99b}.resource-banner span b{font-family:"FarmDisplay",sans-serif;font-size:13px;color:#603719}.resource-banner>em{position:absolute;right:5px;color:#7b4b25;font-style:normal;font-size:20px;font-weight:900}
.sub-quick{position:absolute;z-index:8;right:7px;top:55px;display:grid;gap:7px}.sub-quick button{position:relative;width:64px;height:76px;display:grid;place-items:center;align-content:center;border:4px solid #9a5c29;border-radius:18px;background:linear-gradient(#fff9e8,#efce8e);box-shadow:0 4px 0 #633613,0 7px 16px rgba(61,38,20,.28),inset 0 0 0 2px #ffefbd,inset 0 3px white}.sub-quick .utility-sprite{width:41px;height:52px}.sub-quick b{margin-top:-8px;font-family:"FarmDisplay",sans-serif;font-weight:400;font-size:13px;color:#603719;text-shadow:0 1px white}.sub-quick em{position:absolute;right:-5px;top:-6px;width:23px;height:23px;display:grid;place-items:center;border-radius:50%;color:white;background:#df4937;border:2px solid #fff0c2;font-style:normal;font-weight:900;box-shadow:0 2px 0 #963023}
.plot-control{position:absolute;z-index:5;transform:translate(-50%,-50%);cursor:pointer;font-family:"FarmDisplay",sans-serif;font-weight:400}.plot-control.mature,.plot-control.growing{min-width:78px;height:35px;padding:3px 13px;border-radius:18px;font-size:14px}.plot-control.mature{border:3px solid #b87824;color:#603719;background:linear-gradient(#ffe878,#f6b938);box-shadow:0 3px 0 #875016,inset 0 0 0 2px #fff2a7,inset 0 2px white}.plot-control.growing{border:3px solid #668a31;color:#4c4b1d;background:linear-gradient(#f7f1a4,#b8d967);box-shadow:0 3px 0 #526d29,inset 0 0 0 2px #f8ffc0,inset 0 2px white}.plot-control.empty{width:56px;height:56px;border:0;color:#fff5cf;background:transparent;font-family:"Microsoft YaHei",sans-serif;font-size:46px;font-weight:900;line-height:1;text-shadow:0 3px 0 #8b562d,0 0 4px #6e3f1f}
.current-order{position:absolute;z-index:7;left:8px;right:8px;bottom:5px;height:78px;display:grid;grid-template-columns:82px 70px 1fr 76px;align-items:center;padding:13px 8px 5px;border:4px solid #9b5c29;border-radius:19px;background:linear-gradient(#fff9e9,#efd29a);box-shadow:0 4px 0 #623513,0 9px 20px rgba(61,39,20,.27),inset 0 0 0 2px #ffedb7,inset 0 3px white;text-align:left}.order-tab{position:absolute;left:7px;top:-21px;padding:6px 12px;border:3px solid #955723;border-radius:14px 14px 8px 8px;color:white;background:linear-gradient(#b87937,#7e451e);box-shadow:0 2px 0 #5d3012,inset 0 2px #dba057;font-family:"FarmDisplay",sans-serif;font-size:12px}.order-material{display:flex;align-items:center;gap:5px}.order-material i{font-family:"FarmDisplay",sans-serif;font-style:normal;font-size:28px;color:#b9781e}.order-material b{font-family:"FarmDisplay",sans-serif;font-size:18px;color:#34822f}.order-pay{display:grid;grid-template-columns:17px 1fr;align-items:center;column-gap:4px;padding-left:7px;border-left:2px solid #d3af70}.order-pay .coin{grid-row:1/3}.order-pay b{font-family:"FarmDisplay",sans-serif;font-size:13px;color:#603719}.order-pay small{font-size:8px;color:#806344}.submit-order{height:43px;display:grid;place-items:center;border:3px solid #3d752c;border-radius:18px;color:white;background:linear-gradient(#84cd55,#459b39 55%,#327d2e);box-shadow:0 3px 0 #2a5d23,inset 0 0 0 2px #98df68,inset 0 3px rgba(255,255,255,.56);font-family:"FarmDisplay",sans-serif;font-size:18px;text-shadow:0 2px 1px #336a2a}
.reference-footer{height:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.reference-footer .footer-button{grid-template-columns:45px 1fr;align-content:center}.reference-footer .nav-sprite{width:44px;height:58px}.reference-footer .footer-button b{margin:0 0 0 -6px;font-size:13px}.reference-footer .utility-sprite{width:41px;height:52px}.shop-awning{width:42px;height:38px;display:grid;place-items:center;border-radius:12px 12px 6px 6px;color:white;background:repeating-linear-gradient(90deg,#dc4b37 0 9px,#fff1d1 9px 18px);border:2px solid #8a4c29;text-shadow:0 1px #78351f;font-family:"FarmDisplay",sans-serif}
.screen-farm .play-hotspots{left:0;right:0;top:29%;bottom:15%;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);place-items:stretch}.plot-cell{position:relative;width:100%;height:100%;padding:0;border:0;background:transparent;overflow:visible;cursor:pointer}.screen-farm .plot-control{position:absolute;left:50%;top:auto;bottom:3px;transform:translateX(-50%);z-index:4}.screen-farm .plot-control.empty{left:50%;top:50%;bottom:auto;transform:translate(-50%,-50%)}.crop-sprite{position:absolute;z-index:2;left:50%;bottom:18px;width:108px;height:112px;transform:translateX(-50%);background-image:url("./assets/wheat-stages-v1.webp");background-repeat:no-repeat;background-size:400% auto;background-position-y:center;filter:drop-shadow(0 3px 2px rgba(74,48,19,.22));pointer-events:none}.wheat-stage-0{background-position-x:0%}.wheat-stage-1{background-position-x:33.333%}.wheat-stage-2{background-position-x:66.666%}.wheat-stage-3{background-position-x:100%}.crop-fallback{position:absolute;left:50%;bottom:34px;transform:translateX(-50%);width:48px;height:48px;display:grid;place-items:center;border-radius:50%;color:white;background:#72a842;font-family:"FarmDisplay",sans-serif;font-size:20px;pointer-events:none}.screen-fishing .play-hotspots,.screen-ranch .play-hotspots,.screen-workshop .play-hotspots{inset:48px 67px 83px 0}

/* 可玩版本：背包、种子、商店和订单 */
.crop-carrot{background-image:url("./assets/carrot-stages-v1.webp")}.carrot-stage-0{background-position-x:0%}.carrot-stage-1{background-position-x:33.333%}.carrot-stage-2{background-position-x:66.666%}.carrot-stage-3{background-position-x:100%}
.inventory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.inventory-item{position:relative;aspect-ratio:.88;display:grid;place-items:center;align-content:center;gap:2px;padding:7px 3px;border:3px solid #bd8242;border-radius:14px;background:linear-gradient(#fff9e8,#efd097);box-shadow:0 3px 0 #805020,inset 0 0 0 2px #ffefbc,inset 0 2px white}.inventory-item i{width:35px;height:35px;display:grid;place-items:center;border-radius:50%;color:#7a4c21;background:#f3c75b;border:2px solid #ad702a;font-family:"FarmDisplay",sans-serif;font-style:normal;font-size:16px}.inventory-item b{font-size:9px;color:#653b1e}.inventory-item span{position:absolute;right:4px;top:4px;min-width:21px;padding:2px 4px;border-radius:9px;color:white;background:#4a923b;border:2px solid #fff0b8;font-size:9px;font-weight:900;text-align:center}.seed-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:13px}.seed-choice{min-height:118px;display:grid;place-items:center;align-content:center;gap:4px;border:3px solid #ad7134;border-radius:18px;background:linear-gradient(#fff9e8,#edcc8d);box-shadow:0 3px 0 #79481d,inset 0 0 0 2px #ffedb7,inset 0 3px white}.seed-choice i{width:45px;height:45px;display:grid;place-items:center;border-radius:50%;color:#77471e;background:#f3c44f;border:3px solid #ad6b24;font-family:"FarmDisplay",sans-serif;font-style:normal;font-size:21px}.seed-choice b{font-family:"FarmDisplay",sans-serif;font-weight:400;font-size:14px;color:#603719}.seed-choice small{font-size:9px;color:#866443}.order-footer{display:flex;justify-content:space-between;align-items:center;gap:8px}.order-footer>span{color:#8a5c2b;font-size:10px;font-weight:800}.order-footer .primary{min-height:35px;padding:4px 13px;font-size:12px}.order-card.done{filter:saturate(.55);opacity:.72}.order-card.done .order-footer b{color:#4c8a3a;font-family:"FarmDisplay",sans-serif}.shop-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;padding:10px;border:3px solid #c08a47;border-radius:16px;background:linear-gradient(#fffaf0,#efd39c);box-shadow:0 3px 0 #8b5928,inset 0 0 0 2px #ffedb7}.shop-row>span{display:grid;grid-template-columns:36px 1fr;align-items:center}.shop-row i{grid-row:1/3;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#f0c350;border:2px solid #a96b27;font-family:"FarmDisplay",sans-serif;font-style:normal}.shop-row b{font-family:"FarmDisplay",sans-serif;font-weight:400;color:#603719}.shop-row small{font-size:8px;color:#866443}.shop-row .primary{min-height:37px;padding:4px 9px;font-size:11px}.primary:disabled,.submit-order:disabled{cursor:not-allowed;filter:grayscale(.75);opacity:.68}.current-order .submit-order{border-width:3px}.plot-control.growing{width:104px;min-width:104px;height:38px;display:flex;align-items:center;justify-content:center;padding:0 8px;font-size:13px;line-height:1;white-space:nowrap}
.bag-filters{display:flex;gap:6px;margin-top:12px;padding-bottom:4px;overflow-x:auto;scrollbar-width:none}.bag-filters::-webkit-scrollbar{display:none}.bag-filter{flex:0 0 auto;min-width:53px;height:32px;padding:3px 10px;border:2px solid #b57a3b;border-radius:15px;color:#6b4427;background:linear-gradient(#fff7dc,#e9c786);box-shadow:0 2px 0 #805021,inset 0 1px white;font-family:"FarmDisplay",sans-serif;font-size:11px}.bag-filter.active{color:white;border-color:#f4df68;background:linear-gradient(#80c953,#3f9136);box-shadow:0 2px 0 #386728,inset 0 2px rgba(255,255,255,.5)}.empty-filter{grid-column:1/-1;margin:20px 0;text-align:center;color:#92704d;font-size:11px}
.warehouse-meter{height:10px;margin-top:10px;overflow:hidden;border:2px solid #9b6b35;border-radius:8px;background:#d8c59b;box-shadow:inset 0 1px 2px rgba(74,45,20,.3)}.warehouse-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#75bd47,#439239)}.warehouse-meter.over i{background:linear-gradient(90deg,#e7a13b,#d94c36)}
.item-icon{display:block;background-image:url("./assets/item-icons-v1.webp");background-repeat:no-repeat;background-size:400% 400%;background-color:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}.item-wheat{background-position:0% 0%}.item-carrot{background-position:33.333% 0%}.item-wheatSeed{background-position:66.666% 0%}.item-carrotSeed{background-position:100% 0%}.item-bait{background-position:0% 33.333%}.item-fish{background-position:33.333% 33.333%}.item-rareFish{background-position:66.666% 33.333%}.item-feed{background-position:100% 33.333%}.item-egg{background-position:0% 66.666%}.item-milk{background-position:33.333% 66.666%}.item-wool{background-position:66.666% 66.666%}.item-flour{background-position:100% 66.666%}.item-cheese{background-position:0% 100%}.item-pancake{background-position:33.333% 100%}.item-fruit{background-position:66.666% 100%}.item-jam{background-position:100% 100%}.inventory-item .item-icon{width:58px;height:58px;background-image:url("./assets/item-icons-v1.webp")!important;background-repeat:no-repeat!important;background-size:400% 400%!important;background-color:transparent!important}.shop-row .item-icon{grid-row:1/3;width:50px;height:50px;margin-right:5px;background-image:url("./assets/item-icons-v1.webp")!important;background-repeat:no-repeat!important;background-size:400% 400%!important;background-color:transparent!important}.shop-row>span{grid-template-columns:56px 1fr}
.item-icon{display:block;background-image:url("./assets/item-icons-v1.webp");background-repeat:no-repeat;background-size:400% 400%;background-color:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}.item-wheat{--ix:0%;--iy:0%}.item-carrot{--ix:33.333%;--iy:0%}.item-wheatSeed{--ix:66.666%;--iy:0%}.item-carrotSeed{--ix:100%;--iy:0%}.item-bait{--ix:0%;--iy:33.333%}.item-fish{--ix:33.333%;--iy:33.333%}.item-rareFish{--ix:66.666%;--iy:33.333%}.item-feed{--ix:100%;--iy:33.333%}.item-egg{--ix:0%;--iy:66.666%}.item-milk{--ix:33.333%;--iy:66.666%}.item-wool{--ix:66.666%;--iy:66.666%}.item-flour{--ix:100%;--iy:66.666%}.item-cheese{--ix:0%;--iy:100%}.item-pancake{--ix:33.333%;--iy:100%}.item-fruit{--ix:66.666%;--iy:100%}.item-jam{--ix:100%;--iy:100%}.inventory-item .item-icon{width:58px;height:58px;background-image:url("./assets/item-icons-v1.webp")!important;background-repeat:no-repeat!important;background-size:400% 400%!important;background-position:var(--ix) var(--iy)!important;background-color:transparent!important}.shop-row .item-icon{grid-row:1/3;width:50px;height:50px;margin-right:5px;background-image:url("./assets/item-icons-v1.webp")!important;background-repeat:no-repeat!important;background-size:400% 400%!important;background-position:var(--ix) var(--iy)!important;background-color:transparent!important}.shop-row>span{grid-template-columns:56px 1fr}
.seed-choice .item-icon{width:78px;height:78px;background-image:url("./assets/item-icons-v1.webp")!important;background-repeat:no-repeat!important;background-size:400% 400%!important;background-position:var(--ix) var(--iy)!important;background-color:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.item-riceFlour{--ix:100%;--iy:66.666%;background-position:100% 66.666%}.item-butter{--ix:0%;--iy:100%;background-position:0% 100%}.item-riceCake{--ix:33.333%;--iy:100%;background-position:33.333% 100%}.item-tomatoSauce,.item-pickles{--ix:100%;--iy:100%;background-position:100% 100%}.recipe-grid{grid-template-columns:1fr}.recipe-choice{min-height:106px;grid-template-columns:72px 1fr;grid-template-rows:auto auto auto;text-align:left;padding:10px 13px}.recipe-choice .item-icon{grid-row:1/4;width:64px;height:64px}.recipe-choice b,.recipe-choice small,.recipe-choice em{width:100%}.recipe-choice small{font-size:9px}.recipe-choice em{color:#4d7f38;font-size:9px;font-style:normal;font-weight:900}.machine-result{text-align:center}.machine-result>.item-icon{width:74px;height:74px;margin:0 auto 5px;background-position:var(--ix) var(--iy)}
.machine-queue,.machine-recipes{margin-top:12px}.machine-queue>h3,.machine-recipes>h3{display:flex;justify-content:space-between;margin:0 2px 7px;color:#603719;font:400 14px "FarmDisplay",sans-serif}.machine-queue>h3 small{padding:2px 7px;border-radius:9px;color:white;background:#55983c;font:900 9px "Microsoft YaHei",sans-serif}.machine-queue-card{position:relative;display:grid;grid-template-columns:26px 54px 1fr 56px;align-items:center;gap:6px;margin-top:8px;padding:9px 8px;border:3px solid #b57a3b;border-radius:16px;background:linear-gradient(#fff9e7,#efd39b);box-shadow:0 3px 0 #7f4d22,inset 0 0 0 2px #ffedb8}.machine-queue-card.finished{border-color:#5e9b3e;background:linear-gradient(#f5f7d9,#dbe9af)}.machine-queue-card.waiting{filter:saturate(.75)}.machine-queue-card .queue-number{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;color:white;background:#a46a31;font-family:"FarmDisplay",sans-serif}.machine-queue-card>.item-icon{width:50px;height:50px;background-position:var(--ix) var(--iy)}.machine-queue-card>div{display:grid;gap:2px}.machine-queue-card b{color:#603719;font:400 12px "FarmDisplay",sans-serif}.machine-queue-card small{color:#85623f;font-size:8px}.machine-queue-card em{color:#4d8c38;font-size:9px;font-style:normal;font-weight:900}.machine-queue-card>button{min-height:34px;padding:3px 5px;font-size:10px}.machine-queue-card>i{color:#9b6f42;font-size:8px;font-style:normal;text-align:center}.queue-full-note{margin:12px 0 2px;padding:10px;border:2px dashed #bf9254;border-radius:13px;color:#85623f;background:#f4e5be;font-size:9px;text-align:center}
.avatar-sprite{display:block;background-image:url("./assets/farmer-avatars-v1.webp");background-repeat:no-repeat;background-size:300% 200%;background-color:#f6dfaa}.avatar-0{background-position:0% 0%}.avatar-1{background-position:50% 0%}.avatar-2{background-position:100% 0%}.avatar-3{background-position:0% 100%}.avatar-4{background-position:50% 100%}.avatar-5{background-position:100% 100%}.player-card .player-avatar{width:55px;height:55px;display:block;flex:0 0 55px;border-radius:50%;box-shadow:0 1px 0 #8a572b;overflow:hidden}.profile-editor{display:grid;gap:11px;margin-top:10px}.profile-current{display:flex;align-items:center;gap:12px;padding:10px;border:3px solid #c28b48;border-radius:18px;background:linear-gradient(#fff9e8,#efd39b);box-shadow:0 3px 0 #8a5728,inset 0 0 0 2px #ffedb9}.profile-large{width:72px;height:72px;flex:0 0 72px;border-radius:50%;border:3px solid #b97833;box-shadow:0 3px 0 #78461f}.profile-current>div{display:grid}.profile-current b{font-family:"FarmDisplay",sans-serif;font-size:20px;color:#603719}.profile-current small{font-size:9px;color:#8b6847}.profile-xp{display:grid;gap:5px;padding:9px 11px;border:2px solid #c89b58;border-radius:14px;background:#fff3cb}.profile-xp>span{display:flex;align-items:center;justify-content:space-between}.profile-xp b{color:#603719;font:400 12px "FarmDisplay",sans-serif}.profile-xp small,.profile-xp p{margin:0;color:#856240;font-size:8px}.profile-xp>i{height:11px;overflow:hidden;border:2px solid #9a6a35;border-radius:8px;background:#d6c49b;box-shadow:inset 0 1px 2px rgba(73,43,18,.3)}.profile-xp>i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#b9eb58,#4b9d39)}.profile-xp p{text-align:right}.farm-name-field{display:grid;grid-template-columns:78px 1fr;align-items:center;gap:7px}.farm-name-field span,.profile-editor h3{font-family:"FarmDisplay",sans-serif;font-weight:400;color:#603719}.farm-name-field input{height:40px;padding:7px 11px;border:3px solid #b67b3b;border-radius:13px;color:#603719;background:#fffaf0;font:14px "Microsoft YaHei";outline:none;box-shadow:inset 0 2px 3px rgba(89,53,22,.12)}.farm-name-field input:focus{border-color:#6ca846}.profile-editor h3{margin:2px 0 -3px;font-size:14px}.avatar-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.avatar-option{aspect-ratio:1;padding:2px;border:3px solid #ba8040;border-radius:50%;background:#f3d598;box-shadow:0 2px 0 #815024}.avatar-option .avatar-sprite{width:100%;height:100%;border-radius:50%}.avatar-option.active{border-color:#f6e266;background:#62a942;box-shadow:0 0 0 2px #4c8d36}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.profile-stats span{display:grid;place-items:center;padding:8px 3px;border:2px solid #d0a363;border-radius:13px;background:#fff7df}.profile-stats b{font-family:"FarmDisplay",sans-serif;font-size:18px;color:#4c8f39}.profile-stats small{font-size:8px;color:#866443}.title-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.title-option{min-height:52px;display:grid;place-items:center;padding:6px;border:2px solid #c29453;border-radius:13px;background:linear-gradient(#fff9e8,#efd49d)}.title-option b{font-family:"FarmDisplay",sans-serif;font-weight:400;color:#603719}.title-option small{font-size:7px;color:#8c6a48}.title-option.active{border-color:#f3dd64;color:white;background:linear-gradient(#77c34c,#409039);box-shadow:0 2px 0 #326b29}.title-option.active b,.title-option.active small{color:white}.title-option:disabled{filter:grayscale(.8);opacity:.55}.achievement-row{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.achievement{display:grid;place-items:center;gap:2px;padding:6px 2px;border:2px solid #c3a474;border-radius:12px;background:#e6dcc6;filter:grayscale(1);opacity:.55;text-align:center}.achievement i{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;color:white;background:#95846b;font-style:normal}.achievement small{font-size:7px}.achievement.unlocked{filter:none;opacity:1;background:#fff2c9;border-color:#d39b3e}.achievement.unlocked i{background:linear-gradient(#f5cb4e,#d89024)}.save-profile{width:100%;min-height:45px;margin-top:3px}
.harvest-effect{position:absolute;z-index:40;width:1px;height:1px;pointer-events:none}.harvest-item{position:absolute;left:-31px;top:-31px;width:62px;height:62px;background-image:url("./assets/item-icons-v1.webp")!important;background-size:400% 400%!important;background-position:var(--ix) var(--iy)!important;animation:harvestPop .8s cubic-bezier(.18,.85,.24,1.25) forwards;filter:drop-shadow(0 4px 2px rgba(89,53,19,.28))}.harvest-effect>b{position:absolute;left:-58px;top:-48px;width:116px;color:#fff7c7;font-family:"FarmDisplay",sans-serif;font-size:18px;text-align:center;text-shadow:0 2px 0 #8f541c,0 0 5px #5f3515;animation:harvestGain 1.05s ease-out forwards}.harvest-particle{position:absolute;left:-5px;top:-5px;width:10px;height:10px;border-radius:50%;background:radial-gradient(circle,#fff7a5 0 28%,#f1ba35 32% 70%,#c87b1f 74%);box-shadow:0 0 5px #ffe36d;animation:harvestParticle .75s ease-out var(--delay) forwards}.harvest-particle:nth-child(2n){width:7px;height:7px}@keyframes harvestParticle{0%{transform:translate(0,0) scale(.4);opacity:1}100%{transform:translate(var(--dx),var(--dy)) scale(0);opacity:0}}@keyframes harvestPop{0%{transform:translateY(8px) scale(.25);opacity:0}40%{transform:translateY(-22px) scale(1.18);opacity:1}100%{transform:translateY(-58px) scale(.72);opacity:0}}@keyframes harvestGain{0%{transform:translateY(0) scale(.8);opacity:0}20%{opacity:1;transform:translateY(-20px) scale(1)}100%{transform:translateY(-78px) scale(.92);opacity:0}}
/* 扩展作物：四阶段图集与独立种子/收获图标 */
.crop-corn{background-image:url("./assets/corn-stages-v1.webp")}.crop-strawberry{background-image:url("./assets/strawberry-stages-v1.webp")}.crop-tomato{background-image:url("./assets/tomato-stages-v1.webp")}.crop-pumpkin{background-image:url("./assets/pumpkin-stages-v1.webp")}
.corn-stage-0,.strawberry-stage-0,.tomato-stage-0,.pumpkin-stage-0{background-position-x:0%}.corn-stage-1,.strawberry-stage-1,.tomato-stage-1,.pumpkin-stage-1{background-position-x:33.333%}.corn-stage-2,.strawberry-stage-2,.tomato-stage-2,.pumpkin-stage-2{background-position-x:66.666%}.corn-stage-3,.strawberry-stage-3,.tomato-stage-3,.pumpkin-stage-3{background-position-x:100%}
.item-icon.item-cornSeed{background-image:url("./assets/corn-seed-v1.webp")!important}.item-icon.item-corn{background-image:url("./assets/corn-item-v1.webp")!important}.item-icon.item-strawberrySeed{background-image:url("./assets/strawberry-seed-v1.webp")!important}.item-icon.item-strawberry{background-image:url("./assets/strawberry-item-v1.webp")!important}.item-icon.item-tomatoSeed{background-image:url("./assets/tomato-seed-v1.webp")!important}.item-icon.item-tomato{background-image:url("./assets/tomato-item-v1.webp")!important}.item-icon.item-pumpkinSeed{background-image:url("./assets/pumpkin-seed-v1.webp")!important}.item-icon.item-pumpkin{background-image:url("./assets/pumpkin-item-v1.webp")!important}
.item-icon.item-cornSeed,.item-icon.item-corn,.item-icon.item-strawberrySeed,.item-icon.item-strawberry,.item-icon.item-tomatoSeed,.item-icon.item-tomato,.item-icon.item-pumpkinSeed,.item-icon.item-pumpkin{background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important}
.skill-nav-icon{width:42px;height:48px;display:block;background:url("./assets/skill-icon-v1.webp") center/contain no-repeat;filter:drop-shadow(0 2px 1px rgba(76,43,20,.25))}.skill-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:12px}.skill-tab{display:grid;place-items:center;gap:1px;padding:7px 3px;border:3px solid #b37a3d;border-radius:14px;color:#70451f;background:linear-gradient(#fff7df,#ebca8c);box-shadow:0 2px 0 #7d4c20,inset 0 2px white}.skill-tab i{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;color:white;background:#9b7b4a;font-family:"FarmDisplay",sans-serif;font-style:normal}.skill-tab b{font-family:"FarmDisplay",sans-serif;font-weight:400;font-size:11px}.skill-tab.active{border-color:#f1dd65;color:white;background:linear-gradient(#7ec651,#3f9138)}.skill-tab.active i{background:#f0b93e}.skill-tree{display:grid;gap:12px;margin-top:15px;padding-left:3px}.skill-node{position:relative;min-height:74px;display:grid;grid-template-columns:43px 1fr 52px;align-items:center;gap:8px;padding:9px;border:3px solid #ba8040;border-radius:17px;background:linear-gradient(#fff9e8,#efd299);box-shadow:0 3px 0 #7d4b1f,inset 0 0 0 2px #ffedb8}.skill-node.linked::before{content:"";position:absolute;left:28px;top:-16px;width:5px;height:15px;border-radius:3px;background:#a26a31}.skill-level{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;color:white;background:linear-gradient(#e4a53b,#b76c25);border:3px solid #fff0ba;font-family:"FarmDisplay",sans-serif;font-size:11px}.skill-node h3{margin:0;font:400 14px "FarmDisplay",sans-serif;color:#603719}.skill-node p{margin:2px 0;color:#7d5d3e;font-size:9px}.skill-node small{color:#a2764b;font-size:8px}.skill-node>button{width:48px;height:42px;border:3px solid #4d7d31;border-radius:14px;color:white;background:linear-gradient(#84c955,#409038);box-shadow:0 2px 0 #315e27;font-family:"FarmDisplay",sans-serif}.skill-node>button:disabled{filter:grayscale(.8);opacity:.48}.skill-node.learned{border-color:#75a846;background:linear-gradient(#f3f5d7,#dce8b1)}.skill-node.learned .skill-level{background:linear-gradient(#7bc750,#3e9137)}.skill-node.learned>button{background:#6cac45}.seed-choice:disabled{filter:grayscale(.75);opacity:.6}.seed-choice:disabled b{font-size:11px}
.skill-art{display:block;background-image:url("./assets/skill-icons-v2.webp");background-repeat:no-repeat;background-size:400% 600%;background-color:#70501f;border-radius:12px}.s-r1c1{background-position:0% 0%}.s-r1c2{background-position:33.333% 0%}.s-r1c3{background-position:66.666% 0%}.s-r1c4{background-position:100% 0%}.s-r2c1{background-position:0% 20%}.s-r2c2{background-position:33.333% 20%}.s-r2c3{background-position:66.666% 20%}.s-r2c4{background-position:100% 20%}.s-r3c1{background-position:0% 40%}.s-r3c2{background-position:33.333% 40%}.s-r3c3{background-position:66.666% 40%}.s-r3c4{background-position:100% 40%}.s-r4c1{background-position:0% 60%}.s-r4c2{background-position:33.333% 60%}.s-r4c3{background-position:66.666% 60%}.s-r4c4{background-position:100% 60%}.s-r5c1{background-position:0% 80%}.s-r5c2{background-position:33.333% 80%}.s-r5c3{background-position:66.666% 80%}.s-r5c4{background-position:100% 80%}.s-r6c1{background-position:0% 100%}.s-r6c2{background-position:33.333% 100%}.s-r6c3{background-position:66.666% 100%}.s-r6c4{background-position:100% 100%}.skill-tab .skill-art{width:39px;height:39px;border:2px solid #f7e1a2;box-shadow:0 2px 0 #754318}.skill-tab.active .skill-art{border-color:#fff078;box-shadow:0 2px 0 #326b28}.skill-progress{display:grid;gap:5px;margin-top:12px;padding:8px 11px;border:2px solid #c49654;border-radius:14px;background:#fff3cc}.skill-progress span{display:flex;justify-content:space-between}.skill-progress b{font:400 12px "FarmDisplay",sans-serif;color:#603719}.skill-progress small{font-size:9px;color:#876344}.skill-progress>i{height:9px;overflow:hidden;border-radius:8px;background:#d5c49c;box-shadow:inset 0 1px 2px rgba(70,43,20,.3)}.skill-progress>i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#78c34c,#3f9238)}.skill-node{grid-template-columns:58px 1fr 52px;min-height:84px}.skill-node.linked::before{left:37px}.skill-node-art{position:relative;width:56px;height:56px}.skill-node-art .skill-art{width:56px;height:56px;border:2px solid #d69a4c;box-shadow:0 2px 0 #764319}.skill-node-art>em{position:absolute;right:-3px;bottom:-4px;padding:2px 5px;border-radius:8px;color:white;background:#bc7326;border:2px solid #fff0b7;font:400 8px "FarmDisplay",sans-serif}.skill-node.learned .skill-node-art .skill-art{border-color:#75b347;box-shadow:0 0 0 2px #dff0a8,0 2px 0 #4b7b30}.skill-node.learned .skill-node-art>em{background:#4d963c}
.inventory-item{appearance:none;cursor:pointer}.inventory-item em{position:absolute;left:4px;bottom:4px;padding:2px 5px;border-radius:8px;color:#7b552e;background:#f5dfad;font-size:7px;font-style:normal}.inventory-item:hover{transform:translateY(-2px);box-shadow:0 5px 0 #805020,inset 0 0 0 2px #ffefbc,inset 0 2px white}.sell-card{display:flex;align-items:center;gap:14px;margin-top:14px;padding:13px;border:3px solid #bd8140;border-radius:18px;background:linear-gradient(#fff9e8,#efd39a);box-shadow:0 3px 0 #805020,inset 0 0 0 2px #ffedb8}.sell-card .item-icon{width:82px;height:82px;flex:0 0 82px;background-image:url("./assets/item-icons-v1.webp")!important;background-size:400% 400%!important;background-position:var(--ix) var(--iy)!important}.sell-card h3{margin:0;font:400 20px "FarmDisplay",sans-serif;color:#603719}.sell-card p{margin:4px 0;color:#856341;font-size:10px}.sell-summary{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding:10px;border-radius:13px;background:#fff3cf;color:#76502c;font-size:10px}.sell-summary b{font:400 16px "FarmDisplay",sans-serif;color:#4a8d38}.sell-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px;margin-top:10px}.sell-actions button{min-width:0;padding:5px;font-size:11px}

/* 第二批十种作物 */
.crop-potato{background-image:url("./assets/potato-stages-v1.webp")}.crop-rice{background-image:url("./assets/rice-stages-v1.webp")}.crop-cabbage{background-image:url("./assets/cabbage-stages-v1.webp")}.crop-eggplant{background-image:url("./assets/eggplant-stages-v1.webp")}.crop-cucumber{background-image:url("./assets/cucumber-stages-v1.webp")}.crop-pepper{background-image:url("./assets/pepper-stages-v1.webp")}.crop-watermelon{background-image:url("./assets/watermelon-stages-v1.webp")}.crop-sunflower{background-image:url("./assets/sunflower-stages-v1.webp")}.crop-soybean{background-image:url("./assets/soybean-stages-v1.webp")}.crop-onion{background-image:url("./assets/onion-stages-v1.webp")}
.potato-stage-0,.rice-stage-0,.cabbage-stage-0,.eggplant-stage-0,.cucumber-stage-0,.pepper-stage-0,.watermelon-stage-0,.sunflower-stage-0,.soybean-stage-0,.onion-stage-0{background-position-x:0%}.potato-stage-1,.rice-stage-1,.cabbage-stage-1,.eggplant-stage-1,.cucumber-stage-1,.pepper-stage-1,.watermelon-stage-1,.sunflower-stage-1,.soybean-stage-1,.onion-stage-1{background-position-x:33.333%}.potato-stage-2,.rice-stage-2,.cabbage-stage-2,.eggplant-stage-2,.cucumber-stage-2,.pepper-stage-2,.watermelon-stage-2,.sunflower-stage-2,.soybean-stage-2,.onion-stage-2{background-position-x:66.666%}.potato-stage-3,.rice-stage-3,.cabbage-stage-3,.eggplant-stage-3,.cucumber-stage-3,.pepper-stage-3,.watermelon-stage-3,.sunflower-stage-3,.soybean-stage-3,.onion-stage-3{background-position-x:100%}
.item-icon.item-potatoSeed{background-image:url("./assets/potato-seed-v1.webp")!important}.item-icon.item-potato{background-image:url("./assets/potato-item-v1.webp")!important}.item-icon.item-riceSeed{background-image:url("./assets/rice-seed-v1.webp")!important}.item-icon.item-rice{background-image:url("./assets/rice-item-v1.webp")!important}.item-icon.item-cabbageSeed{background-image:url("./assets/cabbage-seed-v1.webp")!important}.item-icon.item-cabbage{background-image:url("./assets/cabbage-item-v1.webp")!important}.item-icon.item-eggplantSeed{background-image:url("./assets/eggplant-seed-v1.webp")!important}.item-icon.item-eggplant{background-image:url("./assets/eggplant-item-v1.webp")!important}.item-icon.item-cucumberSeed{background-image:url("./assets/cucumber-seed-v1.webp")!important}.item-icon.item-cucumber{background-image:url("./assets/cucumber-item-v1.webp")!important}.item-icon.item-pepperSeed{background-image:url("./assets/pepper-seed-v1.webp")!important}.item-icon.item-pepper{background-image:url("./assets/pepper-item-v1.webp")!important}.item-icon.item-watermelonSeed{background-image:url("./assets/watermelon-seed-v1.webp")!important}.item-icon.item-watermelon{background-image:url("./assets/watermelon-item-v1.webp")!important}.item-icon.item-sunflowerSeed{background-image:url("./assets/sunflower-seed-v1.webp")!important}.item-icon.item-sunflower{background-image:url("./assets/sunflower-item-v1.webp")!important}.item-icon.item-soybeanSeed{background-image:url("./assets/soybean-seed-v1.webp")!important}.item-icon.item-soybean{background-image:url("./assets/soybean-item-v1.webp")!important}.item-icon.item-onionSeed{background-image:url("./assets/onion-seed-v1.webp")!important}.item-icon.item-onion{background-image:url("./assets/onion-item-v1.webp")!important}
.item-icon.item-potatoSeed,.item-icon.item-potato,.item-icon.item-riceSeed,.item-icon.item-rice,.item-icon.item-cabbageSeed,.item-icon.item-cabbage,.item-icon.item-eggplantSeed,.item-icon.item-eggplant,.item-icon.item-cucumberSeed,.item-icon.item-cucumber,.item-icon.item-pepperSeed,.item-icon.item-pepper,.item-icon.item-watermelonSeed,.item-icon.item-watermelon,.item-icon.item-sunflowerSeed,.item-icon.item-sunflower,.item-icon.item-soybeanSeed,.item-icon.item-soybean,.item-icon.item-onionSeed,.item-icon.item-onion{background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important}

/* 玩家成长：经验反馈、分级徽章与佩戴展示。 */
.player-avatar,.profile-large{position:relative}.equipped-badge,.profile-equipped-badge{position:absolute;z-index:3;right:-4px;bottom:-3px;width:22px;height:22px;display:grid;place-items:center;border:2px solid #fff4c4;border-radius:50%;color:#674216;background:linear-gradient(#d79957,#9a5c28);box-shadow:0 2px 0 #6f431f,0 0 0 1px #b77835;font:400 9px "FarmDisplay",sans-serif;font-style:normal}.equipped-badge[hidden]{display:none}.equipped-badge.tier-2,.profile-equipped-badge.tier-2{color:#5f5b54;background:linear-gradient(#f4f4ec,#aaa79d)}.equipped-badge.tier-3,.profile-equipped-badge.tier-3{color:#6c4614;background:linear-gradient(#fff07a,#e5a52f);box-shadow:0 2px 0 #8c5a1f,0 0 7px #ffe870}.profile-equipped-badge{right:-6px;bottom:-5px;width:27px;height:27px;font-size:11px}.xp-gain{position:absolute;z-index:45;left:92px;top:69px;display:grid;place-items:center;pointer-events:none;animation:xpGainFloat 1.5s ease-out forwards;text-align:center}.xp-gain b{padding:3px 8px;border:2px solid #fff2a3;border-radius:12px;color:#fff9ba;background:rgba(61,121,42,.94);box-shadow:0 2px 0 #315f28;font:400 12px "FarmDisplay",sans-serif;text-shadow:0 1px #315a28}.xp-gain small{margin-top:2px;color:white;font-size:7px;text-shadow:0 1px 2px #3b462c}@keyframes xpGainFloat{0%{transform:translate(-50%,8px) scale(.75);opacity:0}18%{transform:translate(-50%,0) scale(1);opacity:1}72%{opacity:1}100%{transform:translate(-50%,-42px) scale(.92);opacity:0}}
.achievement-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.achievement-card{display:grid;gap:6px;padding:8px;border:2px solid #c3aa7c;border-radius:14px;background:#eee3ca}.achievement-card.tier-1{border-color:#b97838;background:#f7e1b5}.achievement-card.tier-2{border-color:#a4a29b;background:#f2eee1}.achievement-card.tier-3{border-color:#dda62f;background:#fff0af;box-shadow:0 0 8px rgba(235,184,48,.38)}.achievement-card.equipped{outline:3px solid #63a440;outline-offset:1px}.achievement-equip{min-width:0;display:flex;align-items:center;gap:7px;padding:0;border:0;background:transparent;text-align:left}.achievement-equip:disabled{opacity:.58}.achievement-equip>i{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;border:3px solid #fff0c1;border-radius:50%;color:white;background:linear-gradient(#a89b83,#7f735f);box-shadow:0 2px 0 #776044;font:400 12px "FarmDisplay",sans-serif;font-style:normal}.tier-1 .achievement-equip>i{background:linear-gradient(#d99c5a,#9f5f2a)}.tier-2 .achievement-equip>i{color:#625d55;background:linear-gradient(#f8f7ee,#aaa79f)}.tier-3 .achievement-equip>i{color:#70450f;background:linear-gradient(#ffef72,#dda02c)}.achievement-equip>span{min-width:0;display:grid}.achievement-equip b{overflow:hidden;color:#603719;font:400 11px "FarmDisplay",sans-serif;text-overflow:ellipsis;white-space:nowrap}.achievement-equip small{color:#886443;font-size:7px}.achievement-progress{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px}.achievement-progress>i{height:7px;overflow:hidden;border-radius:6px;background:#cfc2a5}.achievement-progress>i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#85c84e,#45923b)}.achievement-progress small,.achievement-hint{color:#8d6a47;font-size:7px}.achievement-claim{min-height:28px;padding:3px 5px;border:2px solid #467630;border-radius:10px;color:white;background:linear-gradient(#78bf4a,#3f8d37);font:400 8px "FarmDisplay",sans-serif}.achievement-hint{display:block;text-align:center}

/* 牧场照料：状态条、品质预览与饲料配方 */
.ranch-spot.needs-care>i{background:linear-gradient(#f4a34b,#c96828);animation:ranchNotice 1.25s ease-in-out infinite}.ranch-spot.needs-care span{border-color:#d8752e}@keyframes ranchNotice{50%{transform:scale(1.09);filter:brightness(1.12)}}
.ranch-spot b em{display:inline-block;margin-left:3px;padding:1px 4px;border-radius:6px;color:white;background:#58a044;font:normal 7px "Microsoft YaHei UI",sans-serif;vertical-align:2px}
.ranch-card{padding-bottom:2px}.ranch-card .action-row{grid-template-columns:1.35fr .8fr .8fr}.care-bars{display:grid;gap:8px;margin:12px 0;padding:11px;border:2px solid #c49450;border-radius:14px;background:#fff2cc}.care-row{display:grid;grid-template-columns:34px 1fr 24px;align-items:center;gap:7px}.care-row>b{color:#76502d;font:400 10px "FarmDisplay",sans-serif}.care-row>i{height:10px;overflow:hidden;border-radius:8px;background:#d8c49b;box-shadow:inset 0 1px 2px rgba(80,47,20,.28)}.care-row>i em{display:block;height:100%;border-radius:inherit;transition:width .25s}.care-row>i .hunger{background:linear-gradient(90deg,#e3aa3e,#f0cc58)}.care-row>i .clean{background:linear-gradient(90deg,#54a9bb,#79d4d1)}.care-row>i .mood{background:linear-gradient(90deg,#ee7b77,#f2ad8b)}.care-row>small{color:#8a6642;font-size:8px;text-align:right}.quality-preview{display:flex;justify-content:space-between;gap:8px;margin-bottom:10px}.quality-preview span{flex:1;padding:7px 9px;border-radius:11px;color:#7d5b38;background:#f6e3b5;font-size:9px}.quality-preview b{float:right;color:#448d39;font:400 12px "FarmDisplay",sans-serif}.feed-recipe{display:grid;grid-template-columns:1fr 74px;align-items:center;gap:8px;margin-top:12px;padding:9px;border:3px solid #b77d3e;border-radius:16px;background:linear-gradient(#fff8df,#ecd09a);box-shadow:0 2px 0 #7d4c22,inset 0 0 0 2px #ffeab2}.feed-recipe>span{display:grid;grid-template-columns:45px 1fr;align-items:center}.feed-recipe .item-icon{grid-row:1/3;width:42px;height:42px;background-image:url("./assets/item-icons-v1.webp")!important;background-size:400% 400%!important;background-position:var(--ix) var(--iy)!important}.feed-recipe b{color:#603819;font:400 12px "FarmDisplay",sans-serif}.feed-recipe small{color:#88633d;font-size:8px}.feed-recipe>button{min-width:0;padding:8px 5px}
.item-icon.item-fineEgg{--ix:0%;--iy:66.666%;filter:drop-shadow(0 0 4px #ffe16c)}.item-icon.item-fineMilk{--ix:33.333%;--iy:66.666%;filter:drop-shadow(0 0 4px #ffe16c)}.item-icon.item-fineWool{--ix:66.666%;--iy:66.666%;filter:drop-shadow(0 0 4px #ffe16c)}
.ranch-upgrade{display:grid;grid-template-columns:1fr 68px;align-items:center;gap:8px;margin-top:12px;padding:10px;border:3px solid #b67a3d;border-radius:16px;background:linear-gradient(#fff5cf,#e8c47f);box-shadow:0 2px 0 #75451e,inset 0 0 0 2px #ffebb0}.ranch-upgrade>div{display:grid;gap:2px}.ranch-upgrade span{color:#986128;font:400 9px "FarmDisplay",sans-serif}.ranch-upgrade b{color:#59371d;font:400 11px "FarmDisplay",sans-serif}.ranch-upgrade small{color:#82603d;font-size:7px;line-height:1.45}.ranch-upgrade>button{min-width:0;padding:8px 4px}.ranch-upgrade.max{grid-template-columns:1fr 42px;border-color:#70a648;background:linear-gradient(#f4f2c9,#d7e3a0)}.ranch-upgrade.max>em{padding:5px;border-radius:9px;color:white;background:#5a9b40;font:normal 8px "FarmDisplay",sans-serif;text-align:center}.quality-preview span{min-width:0}.quality-preview span b{margin-left:3px}
.animal-collect-effect{position:absolute;z-index:48;width:1px;height:1px;pointer-events:none}.animal-collect-effect .ranch-product{position:absolute;z-index:3;left:-36px;top:-36px;width:72px;height:72px;background-image:url("./assets/item-icons-v1.webp")!important;background-size:400% 400%!important;background-position:var(--ix) var(--iy)!important;filter:drop-shadow(0 5px 3px rgba(80,44,18,.35));animation:ranchProductPop 1.22s cubic-bezier(.16,.82,.25,1.18) forwards}.animal-collect-effect>b{position:absolute;z-index:4;left:-82px;top:-57px;width:164px;color:#fff9d2;font:400 17px "FarmDisplay",sans-serif;text-align:center;text-shadow:0 2px 0 #855020,0 0 7px #4c2b13;animation:ranchCollectText 1.3s ease-out forwards}.animal-collect-effect>em{position:absolute;z-index:5;left:-56px;top:17px;width:112px;padding:3px 0;border-radius:10px;color:#794514;background:linear-gradient(90deg,#ffe77b,#fffbd0,#ffe77b);box-shadow:0 2px 0 #b87825,0 0 10px #fff276;font:normal 9px "FarmDisplay",sans-serif;text-align:center;animation:ranchQualityBadge 1.25s ease-out forwards}.animal-collect-effect>i{position:absolute;z-index:2;left:-4px;top:-4px;width:8px;height:8px;border-radius:50%;background:#9ddb5f;box-shadow:0 0 6px #e6ff9b;animation:ranchCollectParticle .82s ease-out var(--delay) forwards}.animal-collect-effect>i:nth-of-type(2n){background:#fff19a;box-shadow:0 0 7px #ffcf48}.animal-collect-effect.fine>i{background:#ffd84c;box-shadow:0 0 8px #fff5a7}.collect-halo{position:absolute;z-index:1;left:-42px;top:-42px;width:84px;height:84px;border-radius:50%;border:5px solid rgba(201,241,108,.75);box-shadow:0 0 15px rgba(190,237,96,.8),inset 0 0 16px rgba(247,255,184,.7);animation:ranchCollectHalo .9s ease-out forwards}.animal-collect-effect.fine .collect-halo{border-color:#ffe46d;box-shadow:0 0 20px #ffe66f,inset 0 0 20px #fff6a8}@keyframes ranchProductPop{0%{transform:translateY(16px) scale(.15) rotate(-12deg);opacity:0}30%{transform:translateY(-18px) scale(1.18) rotate(5deg);opacity:1}67%{transform:translateY(-31px) scale(1) rotate(0)}100%{transform:translateY(-74px) scale(.55);opacity:0}}@keyframes ranchCollectText{0%{transform:translateY(6px) scale(.75);opacity:0}20%,68%{opacity:1}35%{transform:translateY(-28px) scale(1)}100%{transform:translateY(-88px) scale(.92);opacity:0}}@keyframes ranchQualityBadge{0%,22%{transform:translateY(10px) scale(.5);opacity:0}42%,72%{transform:translateY(-10px) scale(1);opacity:1}100%{transform:translateY(-48px) scale(.8);opacity:0}}@keyframes ranchCollectParticle{0%{transform:translate(0,0) scale(.4);opacity:1}100%{transform:translate(var(--dx),var(--dy)) scale(0);opacity:0}}@keyframes ranchCollectHalo{0%{transform:scale(.25);opacity:0}35%{opacity:1}100%{transform:scale(1.45);opacity:0}}

/* 钓鱼小游戏：按住上浮、松开下沉，持续覆盖鱼影以完成捕获。 */
.bottom-sheet.fishing-sheet{max-height:94%;padding:14px 18px calc(18px + env(safe-area-inset-bottom));overflow:hidden;background:linear-gradient(180deg,#f9edc5,#dfb86e);touch-action:none;user-select:none}
.fishing-game{display:grid;gap:9px}.fishing-game header{display:flex;align-items:center;justify-content:space-between}.fishing-game header small{color:#8a6238;font-size:9px}.fishing-game header h2{margin:1px 0 0;color:#603719;font:400 21px "FarmDisplay",sans-serif}.fishing-quit{width:37px;height:37px;border:3px solid #a56a32;border-radius:50%;color:#74421f;background:#f6d99a;box-shadow:0 2px 0 #74421f,inset 0 2px white;font-size:22px}.fishing-help{padding:7px 10px;border:2px solid #b88243;border-radius:11px;color:#75512e;background:#fff2cc;font-size:9px;text-align:center}.fishing-help b{color:#3e8e39;font-size:11px}.fishing-board{height:min(50vh,430px);display:grid;grid-template-columns:34px 116px;justify-content:center;gap:10px}.catch-meter{position:relative;overflow:hidden;border:4px solid #8a5728;border-radius:18px;background:#d5c69e;box-shadow:0 3px 0 #5f3618,inset 0 2px 4px rgba(75,46,23,.35)}.catch-meter i{position:absolute;left:0;right:0;bottom:0;height:0;background:linear-gradient(0deg,#42a33c,#a6df59);box-shadow:inset 0 2px rgba(255,255,255,.65);transition:height .08s linear}.catch-meter span{position:absolute;inset:0;display:grid;place-items:center;color:white;font:400 10px "FarmDisplay",sans-serif;writing-mode:vertical-rl;text-shadow:0 1px 2px #4e3a20}.fish-track{position:relative;overflow:hidden;border:5px solid #8c5828;border-radius:24px;background:linear-gradient(180deg,#8bd5d3 0%,#4daeb4 48%,#277c94 100%);box-shadow:0 4px 0 #5c3517,inset 0 0 0 3px rgba(220,255,236,.3),inset 0 12px 18px rgba(255,255,255,.2);touch-action:none}.fish-track::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(180deg,transparent 0 46px,rgba(255,255,255,.12) 47px 48px);pointer-events:none}.water-bubbles,.water-bubbles::before,.water-bubbles::after{position:absolute;width:7px;height:7px;border:2px solid rgba(225,255,245,.48);border-radius:50%;content:""}.water-bubbles{left:17px;top:68%;animation:bubbles 4s linear infinite}.water-bubbles::before{left:55px;top:92px;width:4px;height:4px}.water-bubbles::after{left:29px;top:185px;width:9px;height:9px}@keyframes bubbles{to{transform:translateY(-230px);opacity:.15}}
.fishing-fish{position:absolute;z-index:4;left:50%;top:28%;width:56px;height:31px;transform:translate(-50%,-50%);filter:drop-shadow(0 2px 1px rgba(19,60,65,.45));transition:top .035s linear}.fishing-fish::before{content:"";position:absolute;left:10px;top:5px;width:36px;height:22px;border:3px solid #315f5b;border-radius:55% 45% 48% 52%;background:linear-gradient(#9bd36a,#4e9c4c)}.fishing-fish::after{content:"";position:absolute;left:0;top:8px;border-right:14px solid #4b9249;border-top:8px solid transparent;border-bottom:8px solid transparent}.fishing-fish.rare::before{border-color:#8a5b1f;background:linear-gradient(#fff07c,#e4a82d)}.fishing-fish.rare::after{border-right-color:#daa12c}.catch-bar{position:absolute;z-index:3;left:7px;right:7px;top:62%;height:23%;border:3px solid #d7f77d;border-radius:14px;background:rgba(92,194,72,.47);box-shadow:0 0 0 2px rgba(45,118,48,.6),inset 0 0 15px rgba(221,255,143,.65);transition:background .08s,box-shadow .08s}.catch-bar i{position:absolute;left:50%;top:50%;width:17px;height:23px;transform:translate(-50%,-50%);border:3px solid #4d6f32;border-radius:50% 50% 45% 45%;background:linear-gradient(90deg,#e9573e 0 46%,#fff0c4 47% 100%);box-shadow:0 2px 0 rgba(47,65,33,.4)}.catch-bar.on-fish{background:rgba(154,226,75,.7);box-shadow:0 0 0 2px #e5ff8c,0 0 16px #dfff6e,inset 0 0 18px #efffb1}.fishing-control{min-height:62px;display:grid;place-items:center;align-content:center;border:4px solid #396d2a;border-radius:19px;color:white;background:linear-gradient(#80cb50,#3d9237);box-shadow:0 4px 0 #285521,inset 0 0 0 2px #9be06d,inset 0 3px rgba(255,255,255,.55);touch-action:none}.fishing-control:active{transform:translateY(3px);box-shadow:0 1px 0 #285521,inset 0 0 0 2px #9be06d}.fishing-control span{font:400 17px "FarmDisplay",sans-serif;text-shadow:0 2px #2e6c2a}.fishing-control small{margin-top:2px;font-size:8px;opacity:.86}.fishing-result{min-height:430px;display:grid;place-items:center;align-content:center;gap:7px;text-align:center}.fishing-result h2{margin:0;color:#603719;font:400 25px "FarmDisplay",sans-serif}.fishing-result p{max-width:260px;margin:0 0 8px;color:#805e3d;font-size:10px}.fishing-result>button{width:210px}.fishing-result .item-icon{z-index:2;width:112px;height:112px;background-image:url("./assets/item-icons-v1.webp")!important;background-size:400% 400%!important;background-position:var(--ix) var(--iy)!important;filter:drop-shadow(0 5px 3px rgba(88,51,19,.32));animation:catchPop .55s cubic-bezier(.2,.9,.25,1.3)}.fishing-result>small{color:#498b35;font:400 12px "FarmDisplay",sans-serif}.result-fish{font-size:82px;line-height:1;color:#4d94a1;transform:rotate(-8deg)}@keyframes catchPop{from{transform:scale(.25) rotate(-16deg);opacity:0}to{transform:scale(1);opacity:1}}
@media(max-height:700px){.fishing-board{height:330px}.fishing-result{min-height:350px}.fishing-control{min-height:52px}}
.order-material .item-icon{width:34px;height:34px;flex:0 0 34px;background-image:url("./assets/item-icons-v1.webp")!important;background-size:400% 400%!important;background-position:var(--ix) var(--iy)!important}.order-week-progress{display:grid;gap:6px;margin-top:12px;padding:10px;border:3px solid #c28a46;border-radius:16px;background:linear-gradient(#fff8e2,#efd29a);box-shadow:0 3px 0 #845124,inset 0 0 0 2px #ffecb5}.order-week-progress>span{display:flex;justify-content:space-between}.order-week-progress>span b{font:400 13px "FarmDisplay",sans-serif;color:#603719}.order-week-progress>span small{color:#806043}.order-week-progress>i{height:10px;overflow:hidden;border-radius:8px;background:#d5c398}.order-week-progress>i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#76bf49,#40913a)}.order-week-progress>div{display:flex;justify-content:space-between;gap:5px}.order-week-progress>div b{flex:1;padding:4px;border-radius:9px;color:#8c6a45;background:#eadbb9;font-size:7px;text-align:center}.order-week-progress>div b.claimed{color:white;background:#5aa143}.order-heading{display:flex;align-items:center;gap:9px}.order-main-icon{width:49px;height:49px;flex:0 0 49px}.order-main-icon .item-icon{width:49px;height:49px;background-image:url("./assets/item-icons-v1.webp")!important;background-size:400% 400%!important;background-position:var(--ix) var(--iy)!important}.order-heading h3{margin:0}.order-heading small{color:#9a7146;font-size:8px}.order-needs{display:flex;gap:7px;margin:9px 0;padding:7px;border-radius:12px;background:#f5e6bd}.order-needs>span{min-width:55px;display:grid;grid-template-columns:28px 1fr;align-items:center}.order-needs .item-icon{grid-row:1/3;width:28px;height:28px;background-image:url("./assets/item-icons-v1.webp")!important;background-size:400% 400%!important;background-position:var(--ix) var(--iy)!important}.order-needs b{font:400 11px "FarmDisplay",sans-serif;color:#4c8b38}.order-needs small{font-size:7px;color:#806043}

/* 订单系统 v2：追踪、缺口导航与换单 */
.order-card.tracked-order{border-color:#5d9d3e;box-shadow:inset 0 0 0 2px #d8f0a8,0 3px 0 #477c31}.order-heading h3 em{display:inline-block;margin-left:6px;padding:2px 5px;border-radius:7px;color:white;background:#55a142;font:700 7px "Microsoft YaHei UI",sans-serif;vertical-align:2px}.order-needs>span{position:relative}.order-needs>span.missing{padding-bottom:25px}.order-needs>span.missing b{color:#b45b31}.order-needs>span.missing small{color:#a45a37}.order-needs>span button{position:absolute;left:0;right:0;bottom:0;min-height:21px;padding:1px 3px;border:1px solid #b47b3b;border-radius:7px;color:#6e431f;background:#fff3cf;font-size:7px;font-weight:800}.order-card-actions{display:flex;justify-content:flex-end;gap:5px}.order-card-actions .primary,.order-card-actions .secondary{min-height:34px;padding:3px 8px;font-size:10px}.order-card-actions .secondary.tracked{color:white;border-color:#477b31;background:#61a846}.order-done-label{color:#4c8a3a;font-family:"FarmDisplay",sans-serif}.orders-complete-banner{display:grid;gap:3px;margin-top:12px;padding:12px;border:3px solid #5b9b3e;border-radius:16px;color:#376f2e;background:linear-gradient(#efffd9,#cceaa4);box-shadow:0 3px 0 #477530,inset 0 0 0 2px #f7ffe8;text-align:center}.orders-complete-banner b{font:400 16px "FarmDisplay",sans-serif}.orders-complete-banner small{font-size:8px}.current-order-complete{grid-template-columns:1fr 82px}.current-order-complete strong{font:400 18px "FarmDisplay",sans-serif;color:#408437}.current-order-complete small{font-size:8px;color:#806344}.submit-order.order-go{font-size:12px}.order-card .secondary:disabled{cursor:not-allowed;filter:grayscale(.75);opacity:.58}
.farm-toolbar{position:absolute;z-index:7;left:8px;right:8px;bottom:5px;height:78px;display:grid;grid-template-columns:1fr 1.55fr;gap:7px;padding:7px;border:4px solid #9b5c29;border-radius:19px;background:linear-gradient(#fff9e9,#efd29a);box-shadow:0 4px 0 #623513,0 9px 20px rgba(61,39,20,.27),inset 0 0 0 2px #ffedb7,inset 0 3px white}.farm-tool{min-width:0;display:grid;grid-template-columns:50px 1fr;align-items:center;padding:3px 7px;border:3px solid #b37b3d;border-radius:15px;color:#694221;background:linear-gradient(#fff6d8,#e9c684);box-shadow:0 2px 0 #75451d,inset 0 2px white;text-align:left}.farm-tool.active{border-color:#f2de62;color:white;background:linear-gradient(#7ac64e,#3d8f37);box-shadow:0 2px 0 #316728,inset 0 2px rgba(255,255,255,.5)}.farm-tool>span:not(.farm-tool-art){display:grid}.farm-tool b{font:400 13px "FarmDisplay",sans-serif}.farm-tool small{font-size:7px;color:#876344}.farm-tool.active small{color:#eaf7d7}.farm-tool-art{width:48px;height:55px;background-image:url("./assets/farm-tools-v1.webp");background-repeat:no-repeat;background-size:200% 100%;filter:drop-shadow(0 2px 1px rgba(77,43,19,.2))}.tool-water{background-position:0% 0%}.tool-seeds{background-position:100% 0%}.seed-tool{grid-template-columns:50px 1fr 42px}.seed-tool>em{font-style:normal;font-size:9px;text-align:right}.seed-choice.selected{border-color:#f1dc62;background:linear-gradient(#f5f6d3,#dbe7aa);box-shadow:0 0 0 2px #68a745,0 3px 0 #527b31}
.farm-toolbar{position:absolute;z-index:7;left:auto;right:9px;bottom:8px;width:122px;height:58px;display:flex;justify-content:flex-end;gap:7px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.farm-tool,.farm-tool.seed-tool{width:56px;height:56px;min-width:56px;display:grid;grid-template-columns:1fr;place-items:center;padding:0;border:2px solid rgba(139,88,42,.8);border-radius:17px;background:rgba(255,246,218,.9);box-shadow:0 3px 0 rgba(101,56,22,.82),0 5px 12px rgba(52,34,18,.2),inset 0 2px rgba(255,255,255,.9);text-align:center}.farm-tool.active{border-color:#f3df62;background:linear-gradient(#83ca57,#46973c);box-shadow:0 3px 0 #356c2b,0 0 0 2px rgba(239,229,94,.45),inset 0 2px rgba(255,255,255,.5)}.farm-tool>span:not(.farm-tool-art),.farm-tool>em{display:none}.farm-tool-art{width:51px;height:51px}.seed-choice.selected{border-color:#f1dc62;background:linear-gradient(#f5f6d3,#dbe7aa);box-shadow:0 0 0 2px #68a745,0 3px 0 #527b31}

/* 商店 v2：分类、锁定预览、批量购买与每周特惠。 */
.shop-tabs{position:sticky;z-index:3;top:-1px;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin:12px 0 7px;padding:5px;border:2px solid #c18b49;border-radius:15px;background:#f4dca8}.shop-tabs button{min-width:0;padding:7px 1px;border:2px solid transparent;border-radius:10px;color:#79552f;background:transparent;font:400 9px "FarmDisplay",sans-serif}.shop-tabs button.active{border-color:#3f7b2f;color:white;background:linear-gradient(#7bc44e,#3f9138);box-shadow:0 2px 0 #315d28,inset 0 2px rgba(255,255,255,.4)}
.shop-note{padding:7px 9px;border-radius:11px;color:#775632;background:#fff0c9;font-size:8px;text-align:center}.shop-list{display:grid;gap:9px;margin-top:9px}.shop-product{padding:10px;border:3px solid #bd8140;border-radius:17px;background:linear-gradient(#fffaf0,#efd39a);box-shadow:0 3px 0 #805020,inset 0 0 0 2px #ffedb8}.shop-product.locked{filter:saturate(.55);background:linear-gradient(#eee7d7,#d8c39e)}.shop-product-main{display:grid;grid-template-columns:56px 1fr;align-items:center;gap:7px}.shop-product-main>.item-icon{width:56px;height:56px}.shop-product-info h3{display:flex;align-items:center;gap:5px;margin:0;color:#603719;font:400 15px "FarmDisplay",sans-serif}.shop-product-info small{color:#8a6845;font-size:8px}.shop-product-info p{margin:4px 0 0;color:#765638;font-size:8px;line-height:1.35}.shop-badge{padding:2px 5px;border-radius:8px;color:white;background:#5a9c40;font:normal 7px "Microsoft YaHei UI",sans-serif}.shop-badge.deal{background:#db593d}.shop-purchase{display:grid;grid-template-columns:106px 1fr;align-items:center;gap:7px;margin-top:8px}.shop-stepper{height:36px;display:grid;grid-template-columns:32px 1fr 32px;align-items:center;overflow:hidden;border:2px solid #ad793e;border-radius:12px;background:#fff5d8}.shop-stepper button{height:100%;border:0;color:#6a431f;background:#eccb8e;font-size:17px;font-weight:900}.shop-stepper b{color:#66401f;font:400 10px "FarmDisplay",sans-serif;text-align:center}.shop-purchase>.primary{min-width:0;min-height:38px;padding:4px;font-size:10px;letter-spacing:0}.shop-purchase del{opacity:.65}.shop-lock-reason{color:#8b6843;font-size:9px;text-align:center}.shop-product.locked .item-icon{filter:grayscale(.55);opacity:.72}
.facility-card{display:grid;grid-template-columns:48px 1fr 78px;align-items:center;gap:9px;padding:11px 9px;border:3px solid #b97938;border-radius:17px;background:linear-gradient(#fffaf0,#edcf94);box-shadow:0 3px 0 #7c481d,inset 0 0 0 2px #ffedb7}.facility-card.maxed{border-color:#6da048;background:linear-gradient(#f4f6dc,#dce8b6)}.facility-mark{width:46px;height:46px;display:grid;place-items:center;border:3px solid #fff0b8;border-radius:14px;color:white;background:linear-gradient(#d99a3d,#a76125);box-shadow:0 2px 0 #744019;font:400 20px "FarmDisplay",sans-serif}.facility-card.maxed .facility-mark{background:linear-gradient(#79be4d,#3e8c36)}.facility-info h3{display:flex;align-items:center;gap:6px;margin:0;color:#603719;font:400 14px "FarmDisplay",sans-serif}.facility-info h3 em{padding:2px 5px;border-radius:7px;color:white;background:#ad6e2e;font:normal 7px "Microsoft YaHei UI",sans-serif}.facility-info p{margin:4px 0 2px;color:#805e3c;font-size:8px}.facility-info small{display:block;color:#4e8438;font-size:8px;line-height:1.35}.facility-levels{display:flex;gap:3px;margin-top:3px}.facility-levels i{width:19px;height:5px;border-radius:5px;background:#d2bd91}.facility-levels i.on{background:#5ca243}.facility-card>.primary{min-width:0;min-height:39px;padding:4px;font-size:9px}.shop-section-title{margin:12px 0 0;color:#6c4523;font:400 13px "FarmDisplay",sans-serif}
.farm-page-switch{position:absolute;z-index:8;left:50%;top:61px;display:flex;gap:4px;padding:4px;border:2px solid #9d642e;border-radius:14px;background:rgba(255,239,193,.94);box-shadow:0 3px 0 #623714,inset 0 2px white;transform:translateX(-50%)}.farm-page-switch button{min-width:82px;padding:6px 8px;border:2px solid transparent;border-radius:9px;color:#714721;background:transparent;font:400 11px "FarmDisplay",sans-serif;white-space:nowrap}.farm-page-switch button small{font:700 7px "Microsoft YaHei UI",sans-serif;opacity:.75}.farm-page-switch button.active{border-color:#467c32;color:white;background:linear-gradient(#7cc650,#3f9138);box-shadow:0 2px 0 #315f28,inset 0 2px rgba(255,255,255,.45)}.screen-farm .locked-cell{display:grid;place-items:center;align-content:center;gap:3px;cursor:not-allowed}.plot-lock{width:37px;height:37px;display:grid;place-items:center;border:3px solid #86603b;border-radius:50%;color:#fff0c6;background:linear-gradient(#9c7952,#715137);box-shadow:0 3px 0 #51371f,inset 0 2px rgba(255,255,255,.25);font:400 12px "FarmDisplay",sans-serif}.locked-cell small{padding:2px 5px;border-radius:7px;color:#6d4a2d;background:rgba(255,239,200,.86);font-size:7px;box-shadow:0 1px 2px rgba(60,38,20,.2)}

/* 种子图标 v2：以胡萝卜种子纸袋为统一模板。 */
.item-icon.item-wheatSeed{background-image:url("./assets/wheat-seed-v2.webp")!important}.item-icon.item-cornSeed{background-image:url("./assets/corn-seed-v2.webp")!important}.item-icon.item-strawberrySeed{background-image:url("./assets/strawberry-seed-v2.webp")!important}.item-icon.item-tomatoSeed{background-image:url("./assets/tomato-seed-v2.webp")!important}.item-icon.item-pumpkinSeed{background-image:url("./assets/pumpkin-seed-v2.webp")!important}.item-icon.item-potatoSeed{background-image:url("./assets/potato-seed-v2.webp")!important}.item-icon.item-riceSeed{background-image:url("./assets/rice-seed-v2.webp")!important}.item-icon.item-cabbageSeed{background-image:url("./assets/cabbage-seed-v2.webp")!important}.item-icon.item-eggplantSeed{background-image:url("./assets/eggplant-seed-v2.webp")!important}.item-icon.item-cucumberSeed{background-image:url("./assets/cucumber-seed-v2.webp")!important}.item-icon.item-pepperSeed{background-image:url("./assets/pepper-seed-v2.webp")!important}.item-icon.item-watermelonSeed{background-image:url("./assets/watermelon-seed-v2.webp")!important}.item-icon.item-sunflowerSeed{background-image:url("./assets/sunflower-seed-v2.webp")!important}.item-icon.item-soybeanSeed{background-image:url("./assets/soybean-seed-v2.webp")!important}.item-icon.item-onionSeed{background-image:url("./assets/onion-seed-v2.webp")!important}
.item-icon.item-wheatSeed,.item-icon.item-cornSeed,.item-icon.item-strawberrySeed,.item-icon.item-tomatoSeed,.item-icon.item-pumpkinSeed,.item-icon.item-potatoSeed,.item-icon.item-riceSeed,.item-icon.item-cabbageSeed,.item-icon.item-eggplantSeed,.item-icon.item-cucumberSeed,.item-icon.item-pepperSeed,.item-icon.item-watermelonSeed,.item-icon.item-sunflowerSeed,.item-icon.item-soybeanSeed,.item-icon.item-onionSeed{background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important}

/* 农田透视补偿：越靠后的田块内容越上移，保持与第一行相同的田内落点。 */
.screen-farm .plot-cell:nth-child(n+4):nth-child(-n+6) .crop-sprite{bottom:30px}.screen-farm .plot-cell:nth-child(n+4):nth-child(-n+6) .plot-control:not(.empty){bottom:15px}
.screen-farm .plot-cell:nth-child(n+7):nth-child(-n+9) .crop-sprite{bottom:42px}.screen-farm .plot-cell:nth-child(n+7):nth-child(-n+9) .plot-control:not(.empty){bottom:27px}
.toast{pointer-events:none}

/* 主页四区域入口：对称双排布局，减少场景遮挡。 */
.area-gate{width:148px;height:72px;grid-template-columns:52px 1fr;padding:4px 8px 4px 3px;border-radius:19px}.area-gate:nth-child(1){left:9px;right:auto;top:9%}.area-gate:nth-child(2){left:auto;right:9px;top:58%}.area-gate:nth-child(3){left:9px;right:auto;top:58%}.area-gate:nth-child(4){left:auto;right:9px;top:9%}.area-gate b{font-size:14px}.area-gate small{font-size:7px}.area-gate .nav-sprite{width:49px;height:62px}
