body[data-game=farm] main{max-width:1240px}
body[data-game=farm] #stage{background:transparent;padding:0;border:0;overflow:visible}
.farm-chapters{display:flex;gap:8px;align-items:center;margin:18px 0}
.farm-chapters a,.farm-chapters button{display:flex;justify-content:center;align-items:center;padding:10px 20px;min-height:46px;border-radius:30px;background:#fffaf0;border:1px solid #d3dbc4;color:#385749;text-decoration:none;font-weight:700;font-size:14px}
.farm-header-strip{margin:12px 0;font-size:14px}
.farm-goal{display:grid;grid-template-columns:auto 1fr 180px auto;align-items:center;gap:14px;border-radius:18px;background:#f8edd2;border:1px solid #e2d3af;padding:15px 18px;margin-bottom:20px;font-size:13px}
.farm-goal>span{font-size:11px;letter-spacing:.05em;color:#846740}
.farm-goal progress{width:100%;height:12px;accent-color:#80995d;border:0;border-radius:10px;overflow:hidden;background:#dfd6b8}
.farm-goal progress::-webkit-progress-bar{background:#dfd6b8}
.farm-goal progress::-webkit-progress-value{background:#80995d;border-radius:10px}
.farm-goal.complete{grid-template-columns:1fr auto}
.farm-workspace{grid-template-columns:minmax(0,1fr) 270px}
.farm-garden-board{min-width:0}
.farm-field{aspect-ratio:3/2}
.farm-plots{inset:40% 5% 5%;gap:22px 12px}
body[data-game=farm] .farm-plot{transition:background .15s,border-color .15s;min-height:0}
body[data-game=farm] .farm-plot:disabled{opacity:1}
.farm-plot.farm-tool-match{border:2px solid #d6e6b4;background-color:#bad18521;box-shadow:inset 0 0 0 3px #eaf4ce26}
.farm-plot>img{height:88%;width:84%;transform:translateY(-10%)}
.farm-plot>img.ripe-crop{height:96%;width:85%;transform:translateY(-11%)}
.farm-plot>img.farm-planted-seed{height:48%;width:40%;transform:translateY(-8%) rotate(-7deg)}
.farm-seed-mound{position:absolute;width:48%;height:24%;bottom:27%;background:radial-gradient(ellipse,#65432be0,#82603a 45%,#9b744620 72%);border-radius:50%}
.farm-empty-mark{position:absolute;color:#ffefd069;font-size:28px;font-weight:400}
.farm-request{bottom:5px;font-size:12px;max-width:95%;white-space:normal;line-height:1.25;min-height:32px;padding:3px 8px}
.farm-request b{font-weight:600}
.farm-request img,.farm-request svg{flex-shrink:0;width:27px;height:27px}
.farm-stage-dots{bottom:-10px}
.farm-stage-dots i{width:9px;height:9px}
.farm-decorations{top:11%;left:5%;right:5%;height:25%;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;pointer-events:auto}
body[data-game=farm] .farm-decorations button{position:relative;padding:0;min-height:0;border:0;background:none;box-shadow:none;border-radius:50%;pointer-events:none;opacity:1}
.farm-decorations button:disabled>span{display:none}
body[data-game=farm] .farm-decorations.editing button{outline:2px dashed #ffe7a6;background:#fff4ca4d;pointer-events:auto}
.farm-decorations span{position:static;width:auto;height:auto;color:#fff9da;font-size:25px}
.farm-toolbox{position:sticky;top:14px;padding:18px;background:linear-gradient(160deg,#fffcf3,#f2efdf)}
body[data-game=farm] .farm-seeds button{padding:7px 3px;background:#fffcf3!important;border:1px solid #d9c9a7!important;border-radius:12px!important}
.farm-seeds img{height:86px;width:100%}
.farm-seeds span{white-space:normal;font-size:11px}
.farm-tools-new img,.farm-tools-new svg{height:72px}
.farm-selected{display:flex;align-items:center;gap:8px;background:#e8efdb;border-radius:13px;font-size:12px;padding:8px;margin-top:12px}
.farm-selected img,.farm-selected svg{width:35px;height:35px;object-fit:contain;flex-shrink:0}
.farm-harvest-basket{grid-template-columns:100px minmax(0,1fr);margin:12px 0 0;padding:14px;gap:12px;background:linear-gradient(110deg,#f3e6c9,#f8f0da)}
.farm-basket-art{height:100px;width:100%}
.farm-harvest-basket h2{font-size:16px}
.farm-harvest-basket p{margin:6px 0 10px;font-size:12px}
.farm-stock{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
body[data-game=farm] .farm-stock button{display:grid;grid-template-columns:1fr;gap:2px;justify-items:center;min-width:0;padding:5px;min-height:62px;background:#fffcf2;touch-action:none}
.farm-stock button:disabled{opacity:.62}
.farm-stock img{width:46px;height:40px}
.farm-stock span{display:block;line-height:1.2;font-size:11px;font-weight:400;text-align:center}
.farm-stock b{font-size:13px}
.farm-market{display:block;margin-top:28px;padding:0;overflow:hidden;background:#fffaf0;border:2px solid #e1d1a9;scroll-margin-top:15px}
.farm-market-heading{padding:17px 24px;background:repeating-linear-gradient(90deg,#f7dfab 0 52px,#fff3d4 52px 104px);border-bottom:4px solid #d6b781;text-align:center}
.farm-market-heading span{letter-spacing:.12em;font-size:10px}
.farm-market-heading h2{margin:5px 0 0;font-size:23px}
.farm-market-wallet{display:flex;justify-content:center;align-items:center;gap:5px;margin-top:8px;font-size:13px}
.farm-market-wallet img{width:24px;height:24px;object-fit:contain}
.farm-receipt{margin:10px auto 0;padding:8px 12px;border-radius:16px;background:#fffaf0;width:fit-content;font-size:12px;font-weight:700}
.farm-garden-board>.farm-decor-coach{margin-top:12px}
.farm-market-counter{display:grid;grid-template-columns:1fr 1.1fr;gap:26px;padding:26px}
.farm-market-produce h3{margin-top:0}
.farm-market-produce>p{font-size:12px;line-height:1.6}
.farm-market-produce>small{font-size:11px;line-height:1.5;display:block;margin-top:12px}
.farm-market-produce .farm-stock img{width:70px;height:66px}
.farm-market-produce .farm-stock button{padding:10px}
.farm-sell{margin-top:14px;gap:7px}
.farm-sell img{height:37px}
.farm-sell span{font-size:11px;line-height:1.5;display:block}
.farm-customer{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:center;padding:16px;gap:12px;border:2px dashed #b7c893;border-radius:24px;background:radial-gradient(ellipse at 70% 30%,#fffcf2,#edf2df)}
.farm-customer>img.farm-visitor{width:100%;height:180px}
.farm-order-note{min-width:0;text-align:center}
.farm-order-note h3{font-size:16px;margin:0 0 14px}
.farm-order-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.farm-order-slots>div{position:relative;min-width:0;padding:8px 4px;background:#fffdf4;border:1px solid #d6d3bb;border-radius:12px}
.farm-order-slots img{width:100%;height:52px;object-fit:contain;filter:grayscale(.5);opacity:.65}
.farm-order-slots span{font-size:10px;display:block;line-height:1.2;overflow-wrap:anywhere}
.farm-order-slots .filled{background:#e5efd4;border-color:#799b67}
.farm-order-slots .filled img{filter:none;opacity:1}
.farm-order-slots b{position:absolute;top:-9px;right:-2px;color:#fff;background:#668955;border-radius:50%;width:22px;height:22px;display:grid;place-items:center}
.farm-order-slots b:empty{display:none}
.farm-order-note>p{font-size:11px;line-height:1.6}
.farm-customer-basket{width:105px;height:76px;object-fit:contain;display:block;margin:auto}
.farm-order-note>span{font-size:12px;font-weight:700}
.farm-rewards summary>span,.farm-notebook summary>span{float:right;font-size:12px;margin-left:12px;color:#667c52}
.farm-rewards>p,.farm-notebook>p{font-size:13px;line-height:1.7}
.farm-reward-grid small{display:block;margin-top:6px;font-size:11px}
.farm-reward-grid button[aria-pressed=true]{outline:3px solid #87a266}
.farm-decor-coach{display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:#e8eecf;padding:12px;border-radius:16px;font-size:13px}
.farm-notebook{margin-top:20px;padding:20px;border:1px solid #e0d2ae;background:#fffbef;border-radius:22px;scroll-margin-top:14px}
.farm-notebook summary{cursor:pointer;font-weight:700;min-height:30px}
.farm-growth-book{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.farm-growth-book article{min-width:0;background:#fffdf7;border:1px solid #e4dabe;padding:14px;border-radius:15px}
.farm-growth-book h3{font-size:15px;margin:0 0 12px}
.farm-growth-book small{display:block;font-size:11px;margin-top:5px;font-weight:400}
.farm-growth-book article>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}
.farm-growth-book figure{margin:0;min-width:0;text-align:center}
.farm-growth-book img,.farm-unknown{width:100%;height:75px;object-fit:contain}
.farm-unknown{display:grid;place-items:center;background:#f0eddf;border-radius:10px;color:#a89d7e;font-size:26px}
.farm-growth-book figcaption{font-size:10px;margin-top:5px;line-height:1.4}
.farm-stickers{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.farm-stickers>div{min-width:0;border:1px solid #e1d9c2;border-radius:18px;padding:12px 7px;text-align:center;background:#f0eee4}
.farm-stickers img,.farm-stickers>div>span{width:100%;height:85px;object-fit:contain;display:grid;place-items:center;font-size:30px;color:#a59b80}
.farm-stickers strong{display:block;font-size:12px;line-height:1.6}
.farm-stickers small{display:block;margin-top:6px;font-size:10px}
.farm-stickers .earned{background:radial-gradient(circle at 50% 35%,#fff6c6,#f0e1bc);border:2px solid #d0ac5c;box-shadow:0 4px 0 #ac925317}
.farm-dragging{opacity:.5}
.farm-drop-ready{outline:4px dashed #ffe192!important;outline-offset:2px!important;box-shadow:0 0 0 7px #fae9a340!important}
.farm-order-complete .farm-customer{animation:farm-thanks .6s ease-out}
.farm-nudge{animation:farm-nudge .35s}
@keyframes farm-thanks{50%{border-color:#ddb052;background:#fff1cd}}
@keyframes farm-nudge{50%{outline:4px solid #f6d393}}
@media(max-width:900px){
 .farm-workspace{grid-template-columns:1fr}
 .farm-toolbox{position:static;grid-template-columns:1fr 1.4fr}
 .farm-tools-new img,.farm-tools-new svg{height:52px}
 .farm-seeds img{height:60px}
 .farm-selected{grid-column:1/-1;margin:0}
 .farm-selected img,.farm-selected svg{width:26px;height:26px}
 .farm-toolbox p{display:none}
 .farm-market-counter{gap:16px;padding:20px}
 .farm-customer{grid-template-columns:80px minmax(0,1fr);padding:12px}
 .farm-growth-book{grid-template-columns:1fr}
 .farm-growth-book article>div{max-width:520px;margin:auto}
 .farm-growth-book img,.farm-unknown{height:100px}
 .farm-stickers{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:550px){
 body[data-game=farm] main{padding:18px 12px 35px}
 .farm-chapters a,.farm-chapters button{padding:10px 15px;flex:1;font-size:12px}
 .farm-header-strip{font-size:11px;gap:8px}
 .farm-header-strip>span{gap:3px}
 .farm-header-strip img{width:25px;height:25px}
 .farm-goal{grid-template-columns:1fr auto;gap:9px;padding:12px;font-size:12px}
 .farm-goal>span{grid-column:1/-1;font-size:10px}
 .farm-goal strong{grid-column:1/-1}
 .farm-goal progress{height:10px}
 .farm-goal.complete{display:block}
 .farm-goal.complete>span{display:block;margin-top:6px}
 .farm-toolbox{grid-template-columns:1fr;gap:10px;padding:12px}
 .farm-seeds button{flex-direction:row;gap:6px}
 .farm-seeds img{width:32px;height:45px}
 .farm-seeds span{font-size:10px}
 .farm-tools-new img,.farm-tools-new svg{height:45px}
 .farm-tools-new span{font-size:10px}
 .farm-field{aspect-ratio:4/5;border-width:3px}
 .farm-plots{inset:39% 4% 6%;gap:20px 9px}
 .farm-request{font-size:10px;padding:3px 4px;max-width:100%;bottom:3px;min-height:29px}
 .farm-request img,.farm-request svg{width:23px;height:23px}
 .farm-decorations{top:17%;height:16%}
 .farm-decorations.editing{top:5%;height:31%;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:7px}
 .farm-stage-dots{bottom:-9px;gap:3px}
 .farm-stage-dots i{width:8px;height:8px}
 .farm-harvest-basket{grid-template-columns:60px minmax(0,1fr);gap:8px;padding:10px}
 .farm-basket-art{height:80px}
 .farm-harvest-basket h2{font-size:14px}
 .farm-harvest-basket p{font-size:10px;line-height:1.5}
 .farm-stock{gap:5px}
 .farm-stock img{width:34px;height:30px}
 .farm-stock span{font-size:9px}
 .farm-stock b{font-size:11px}
 .farm-market-heading{padding:14px}
 .farm-market-heading h2{font-size:19px}
 .farm-market-counter{grid-template-columns:1fr;padding:16px;gap:16px}
 .farm-customer{grid-template-columns:72px minmax(0,1fr);padding:12px;gap:9px}
 .farm-customer>img.farm-visitor{height:145px}
 .farm-order-note h3{font-size:15px}
 .farm-order-slots img{height:45px}
 .farm-order-note p{font-size:10px}
 .farm-market-produce .farm-stock img{height:55px}
 .farm-sell span{font-size:10px}
 .farm-notebook{padding:14px}
 .farm-notebook summary{font-size:14px;line-height:1.6}
 .farm-notebook summary>span{float:none;display:block;margin:5px 0 0}
 .farm-growth-book img,.farm-unknown{height:76px}
 .farm-stickers{gap:8px}
 .farm-stickers img,.farm-stickers>div>span{height:65px}
 .farm-stickers strong{font-size:10px}
 .farm-stickers small{font-size:9px}
 .farm-rewards summary>span{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.farm-order-complete .farm-customer,.farm-nudge{animation:none!important}}
