.city-hotspot-kitchen { left:90%; top:45.5%; }
.city-hotspot-farm { left:91%; top:64%; }
.food-page { display:flex; flex-direction:column; background:radial-gradient(ellipse at 50% 20%,#44503a 0%,#28291f 48%,#181915 100%); }
.kitchen-page { background:radial-gradient(ellipse at 50% 25%,#62452d 0%,#352a22 50%,#1a1715 100%); }
.food-page .partners-header { height:104px; flex:0 0 104px; }
.food-page-content { flex:1; overflow-x:hidden; overflow-y:auto; overscroll-behavior:contain; touch-action:pan-y; padding:16px 24px 136px; min-height:0; }
.food-page button:disabled { opacity:.42; cursor:default; }
.food-primary,.food-secondary { padding:12px 20px; border:1px solid #b28b49; border-radius:8px; color:#ffe9b5; font-family:inherit; font-size:19px; font-weight:700; line-height:1.2; background:linear-gradient(#6d512e,#352c20); white-space:nowrap; }
.food-secondary { background:#27271f; }
.food-page-actions { display:flex; justify-content:center; gap:12px; margin-top:24px; }
.food-page-actions .food-primary { min-width:200px; }
.farm-play-actions { margin:14px 0; }
.food-page .fullscreen-footer { gap:12px; }
.food-page .fullscreen-footer button:not(.fullscreen-back) { text-overflow:clip; }
.food-icon { width:64px; height:64px; flex:0 0 auto; object-fit:contain; filter:drop-shadow(0 3px 2px #0005); }
.food-summary-bar,.farm-play-info { display:flex; justify-content:space-between; gap:12px; font-size:18px; color:#e8d5a4; }
.farm-progress { flex:0 0 auto; padding:0 24px; }
.farm-progress .food-summary-bar { justify-content:flex-end; }
.food-xp-track { position:relative; height:28px; margin:12px 0 24px; background:#131611; border:1px solid #757447; border-radius:6px; overflow:hidden; }
.food-xp-track span { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:#fff0c7; font-size:18px; font-weight:700; line-height:1; text-shadow:0 1px 2px #000,0 0 3px #000; white-space:nowrap; }
.food-xp-track i { display:block; height:100%; background:linear-gradient(90deg,#678e48,#b8ca77); }
.farm-welcome { text-align:center; padding:32px 12px; border:1px solid #a8a36c66; border-radius:14px; background:#24291bb3; }
.farm-welcome-art { display:flex; justify-content:center; gap:18px; margin:20px 0; }
.farm-welcome-art .food-icon { width:100px; height:100px; }
.farm-welcome h2,.kitchen-worktop h2 { color:#f7dda7; font-size:26px; }
.farm-welcome p { margin:16px 0; color:#bfc2a5; }
.farm-info-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; padding:20px; }
.farm-info-grid span { color:#b9bc9b; }
.farm-info-grid b { display:block; font-size:24px; color:#f4d895; margin-top:8px; }
.food-rule { color:#c1b797; font-size:17px; line-height:1.65; margin:16px 0; }
.farm-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.farm-stat { padding:10px 12px; border:1px solid #9b966666; border-radius:10px; background:#162016aa; text-align:center; }
.farm-stat span { color:#c4c6a7; font-size:16px; white-space:nowrap; }
.farm-stat b { display:block; color:#f7e6b8; font-size:28px; line-height:1.25; margin-top:4px; }
.farm-stat.is-warning b { color:#ff6b6b; animation:farm-time-blink .8s infinite; }
.farm-stat-combo.is-popping b { animation:farm-combo-pop .35s ease; color:#ffe080; }
.farm-board-wrap { position:relative; margin:14px 0 18px; padding:calc(100% / var(--farm-outer-cols)); border-radius:14px; background:#121c1288; }
.farm-board { position:relative; display:grid; grid-template-columns:repeat(var(--farm-cols),minmax(0,1fr)); gap:6px; }
.farm-tile { position:relative; aspect-ratio:1; min-width:0; padding:3px; border:1px solid #d5dfed; border-radius:9px; background:linear-gradient(160deg,#fff,#e6edfb 55%,#cfdcf2); box-shadow:inset 0 -2px 0 #0002,0 3px 8px #0005; display:grid; place-items:center; transition:transform .16s ease,opacity .22s ease,box-shadow .16s ease,filter .16s; touch-action:manipulation; }
.farm-tile .food-icon { width:90%; height:90%; min-height:0; pointer-events:none; }
.farm-tile.is-empty { visibility:hidden; }
@media(hover:hover) { .farm-tile:not(:disabled):hover { transform:scale(1.06); } }
.farm-tile.is-selected { z-index:6; transform:scale(1.08); border-color:#ffd54f; box-shadow:0 0 0 3px #ffd54f,0 0 20px #ffd54fe6; background:linear-gradient(160deg,#fff8dd,#ffe7a3 60%,#ffd166); }
.farm-tile.is-hint { border-color:#6ee7ff; animation:farm-hint-pulse .55s ease-in-out 4; }
.farm-tile.is-shaking { border-color:#ff7973; animation:farm-tile-shake .3s ease; }
.farm-tile.is-matched { z-index:1; transform:scale(.22); opacity:0; filter:brightness(1.8); pointer-events:none; }
.farm-tile:disabled:not(.is-empty) { opacity:1; }
.farm-tile.is-matched:disabled { opacity:0; }
.farm-link-layer { position:absolute; z-index:20; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; transition:opacity .25s ease; }
.farm-link-layer.is-fading { opacity:0; }
.farm-path { fill:none; stroke:#ffd54f; stroke-width:5px; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 0 6px #ffab00) drop-shadow(0 0 14px #ffab00b3); stroke-dasharray:1; animation:farm-path-draw .16s ease-out both; }
.farm-path-dot { fill:#fff3c4; filter:drop-shadow(0 0 6px #ffd54f); }
.farm-match-feedback { position:absolute; z-index:21; top:36%; left:50%; display:flex; align-items:center; gap:8px; padding:8px 14px; color:#fff0b5; background:#172117e6; border:1px solid #e1ba63; border-radius:9px; transform:translate(-50%,0); opacity:0; pointer-events:none; white-space:nowrap; font-size:18px; }
.farm-match-feedback .food-icon { width:40px; height:40px; }
.farm-match-feedback.is-popping { animation:farm-harvest-pop .65s ease both; }
.farm-board.is-shuffling { animation:farm-shuffle-in .3s ease; }
.farm-status { color:#b7ebd9; text-align:center; margin-bottom:10px; font-size:16px; }
.farm-status:empty { display:none; }
@keyframes farm-path-draw { from{stroke-dashoffset:1}to{stroke-dashoffset:0} }
@keyframes farm-hint-pulse { 50%{box-shadow:0 0 0 4px #6ee7fff2,0 0 22px #6ee7ffe6} }
@keyframes farm-tile-shake { 25%{transform:translateX(5px)}75%{transform:translateX(-5px)} }
@keyframes farm-combo-pop { 40%{transform:scale(1.3)} }
@keyframes farm-harvest-pop { 0%{opacity:0;transform:translate(-50%,12px) scale(.8)}25%,65%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-18px) scale(1)} }
@keyframes farm-shuffle-in { from{opacity:.3;transform:scale(.95)}to{opacity:1;transform:none} }
@keyframes farm-time-blink { 50%{opacity:.35} }
.farm-harvest { display:flex; flex-wrap:wrap; gap:8px; color:#dfd3a1; font-size:16px; }
.farm-harvest span { background:#13191288; border-radius:6px; padding:6px 10px; }
.farm-result { margin-top:22px; padding:20px; border:1px solid #80774e; border-radius:12px; background:#151b12aa; }
.farm-result h3 { text-align:center; color:#e8d28f; margin-bottom:12px; }
.farm-result.is-completed { border-color:#efcf70; box-shadow:0 0 22px #dbbd5544; }
@media(prefers-reduced-motion:reduce) { .farm-page *, .farm-page *::before, .farm-page *::after { animation:none !important; transition:none !important; } }
.food-tabs { display:flex; flex:0 0 auto; gap:10px; margin:0 24px 8px; }
.food-tabs button { flex:1; border:1px solid #8d774e; border-radius:8px; background:#241e18; color:#c9b998; padding:12px 6px; font-size:19px; white-space:nowrap; }
.food-tabs button.active { background:#725230; color:#ffedbe; border-color:#d8b76f; }
.kitchen-worktop { text-align:center; padding:24px 14px; border:1px solid #bc996555; border-radius:14px; background:linear-gradient(#4b372bdd,#2a211bee); }
.kitchen-worktop-header { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:12px; }
.kitchen-worktop-header h2 { grid-column:2; }
.kitchen-worktop-header .food-secondary { justify-self:end; padding:8px 12px; font-size:17px; }
.kitchen-slots { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:24px 0; }
.kitchen-slot { aspect-ratio:1; border:2px solid #c7a16b; border-radius:10px; background:#241b13; color:#d6c39b; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:6px; min-width:0; padding:8px 3px; }
.kitchen-slot .food-icon { width:65%; height:auto; }
.kitchen-slot b { font-size:17px; white-space:nowrap; }
.kitchen-seasoning { border-color:#8da582; background:#20271c; }
.food-slot-plus { font-size:36px; line-height:1; color:#a98a59; }
.kitchen-pot .food-icon { width:180px; height:180px; }
.kitchen-preview { background:#21191277; padding:18px; border-radius:10px; }
.kitchen-preview h3 { color:#f1d18e; font-size:23px; margin-bottom:12px; }
.kitchen-preview p { color:#ccb995; font-size:18px; line-height:1.6; }
.kitchen-cost { color:#e1c592; margin-top:20px; min-height:24px; }
.food-error,.food-missing { color:#f3796e !important; }
.food-recipe-list { display:flex; flex-direction:column; gap:14px; }
.food-recipe-card { display:flex; align-items:center; gap:12px; padding:16px 12px; border:1px solid #997c4c; border-radius:10px; background:#30251cee; }
.food-recipe-card.is-locked { border-color:#5d5544; background:#24231e; }
.food-recipe-card.is-locked>.food-icon { opacity:.25; filter:grayscale(1); }
.food-recipe-copy { flex:1; min-width:0; }
.food-recipe-copy h3 { font-size:21px; color:#f3d39b; margin-bottom:10px; }
.food-recipe-copy p { color:#beb196; font-size:16px; line-height:1.55; margin-top:8px; }
.food-recipe-materials { display:flex; flex-wrap:wrap; gap:6px 10px; color:#d5c6a9; font-size:16px; }
.food-recipe-materials small { font-size:14px; }
.food-recipe-actions { display:flex; flex-direction:column; gap:8px; }
.food-recipe-actions button { padding:9px 12px; font-size:17px; border:1px solid #947344; border-radius:6px; color:#f0d8a4; background:#58422b; white-space:nowrap; }
.food-picker { position:absolute; inset:104px 18px 126px; z-index:10; background:#2f281f; border:2px solid #c6a474; border-radius:12px; padding:18px; display:flex; flex-direction:column; box-shadow:0 0 0 1000px #0008; }
.food-picker header { display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; color:#eed6a9; }
.food-picker header button { background:none; border:0; color:#f3d9a5; font-size:32px; padding:0 10px; }
.food-picker-grid,.food-stock-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.food-picker-grid { flex:1; min-height:0; overflow:auto; padding:2px; margin-bottom:16px; align-content:start; }
.food-picker-grid>.food-material { aspect-ratio:1; width:100%; box-sizing:border-box; }
.food-material { border:1px solid #897149; border-radius:8px; background:#201c16; color:#d9c49d; padding:8px 4px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; min-width:0; }
.food-material .food-icon { width:54px; height:54px; }
.food-material b { font-size:17px; white-space:nowrap; }
.food-material span { font-size:16px; }
.food-material.is-rare,.farm-tile.is-rare { border-color:#d3a456; }
.food-stock-card { display:flex; gap:12px; padding:14px 10px; border:1px solid #89734d; border-radius:9px; background:#28241c; color:#e8cca0; margin-bottom:12px; align-items:center; }
.food-stock-card>div:not(.food-stock-actions) { flex:1; min-width:0; }
.food-stock-card b { font-size:20px; }
.food-stock-card small { display:block; font-size:16px; line-height:1.5; color:#bdae90; margin-top:6px; }
.food-stock-card button { border:1px solid #9c7c48; border-radius:6px; padding:8px 12px; background:#56432d; color:#f1d39b; font-size:17px; white-space:nowrap; }
.food-stock-actions { display:flex; flex-direction:column; align-items:center; gap:8px; }
.food-stock-actions em { font-style:normal; color:#ead8b5; }
.food-meal { border:1px solid #947b4a; color:#f0d697; border-radius:8px; padding:14px; margin-bottom:16px; font-size:18px; }
.food-inventory-panel h3,#kitchen-stock h3 { color:#e2ceaa; font-size:20px; margin:22px 0 14px; }
.food-equip-picker-buttons { display:flex; gap:10px; margin:10px 0; }
@media (max-width:420px) { .food-picker-grid,.food-stock-grid { gap:6px; } }

.food-footer-tabs { --cd-tabs-height:111px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.food-footer-tabs button { cursor:pointer; }
/* 用户 PSD 的 952px 设计按舞台宽度等比展示；背景始终按宽度定标。 */
.farm-skinned { position:relative; isolation:isolate; background:var(--farm-background) center top / 720px auto no-repeat #67421f; color:#342411; }
.farm-skin-art { position:absolute; z-index:-1; inset:16px 0 auto; height:1101.33px; background:var(--farm-skin) center top / 100% 100% no-repeat; pointer-events:none; }
.farm-skinned .partners-header { position:absolute; top:58px; left:46.6667px; width:120px; height:40px; padding:0; justify-content:center; border:0; background:none; }
.farm-skinned .partners-header h1 { position:absolute; width:0.666667px; height:0.666667px; overflow:hidden; clip-path:inset(50%); }
.farm-skinned .partners-header>span { font-size:28.6667px; font-weight:700; color:#fff6d4; text-shadow:0 2px 1.33333px #603818; }
.farm-skinned .farm-progress { position:absolute; top:70px; left:183.333px; right:46.6667px; padding:0; height:36px; }
.farm-skinned .food-summary-bar { position:absolute; right:0; top:0; height:34.6667px; display:flex; align-items:center; background:none; padding:0; border:0; font-size:18px; color:#fff4d8; }
.farm-skinned .food-xp-track { position:absolute; left:0; top:0; width:353.333px; height:34.6667px; margin:0; border:0; border-radius:0; background:var(--farm-xp-track) center / 100% 100%; overflow:hidden; }
.farm-skinned .food-xp-track i { position:absolute; inset:4.66667px auto 4.66667px 4.66667px; max-width:calc(100% - 9.33333px); background:var(--farm-xp-fill) left center / 344px 24px no-repeat; border-radius:11.3333px; }
.farm-skinned .food-xp-track span { font-size:16px; color:#fff4d8; text-shadow:0 1.33333px 1.33333px #38200d; }
.farm-skinned .food-page-content { position:absolute; inset:126.667px 34.6667px auto; height:986.667px; padding:0; overflow:visible; }
.farm-skinned .farm-stats { position:absolute; inset:13.3333px 0 auto; height:76.6667px; gap:0; }
.farm-skinned .farm-stat { position:relative; border:0; background:none; box-shadow:none; border-radius:0; padding:0 0 0 83.3333px; text-align:left; color:#342411; }
.farm-skinned .farm-stat span { font-size:18.6667px; white-space:nowrap; }
.farm-skinned .farm-stat b { display:block; font-size:30px; line-height:1.25; }
.farm-skinned .farm-hud-icon { object-fit:contain; position:absolute; left:20px; top:0; width:56.6667px; height:66.6667px; }
.farm-skinned .farm-stat-time .farm-hud-icon { width:46.6667px; }
.farm-skinned .farm-time-track { position:absolute; top:91.3333px; left:106.667px; right:93.3333px; height:2.66667px; margin:0; opacity:.6; }
.farm-skinned .farm-play-info { position:absolute; top:110px; left:23.3333px; right:26.6667px; height:44px; color:#342411; font-size:19.3333px; align-items:center; }
.farm-skinned #farm-total { position:absolute; left:0; top:8px; white-space:nowrap; }
.farm-skinned .farm-harvest-track { position:absolute; left:122px; top:0; width:400px; height:34px; background:var(--farm-harvest-track) center / 100% 100%; }
.farm-skinned .farm-harvest-track i { display:block; height:26px; margin:4px 6px; max-width:calc(100% - 12px); background:var(--farm-harvest-fill) left center / 388px 26px no-repeat; border-radius:12px; }
.farm-skinned .farm-icon-basket { left:auto; right:-10px; top:-20px; width:80.6667px; height:77.3333px; }
.farm-skinned .farm-play-actions { position:absolute; top:178.667px; left:0; right:0; margin:0; }
.farm-skinned .food-primary,.farm-skinned .food-secondary { font-size:16.6667px; padding:6.66667px 16px; border-color:#b88843; background:#704622; color:#fff0cf; }
.farm-skinned .farm-board-wrap { position:absolute; top:220px; left:0; right:0; margin:0; border:0; box-shadow:none; border-radius:0; background:none; box-sizing:border-box; }
.farm-skinned .farm-board { gap:5.33333px; }
.farm-skinned .farm-tile { border:0; border-radius:0; box-shadow:none; padding:12%; background:var(--farm-tile) center / 100% 100% no-repeat; }
.farm-skinned .farm-tile .food-icon { width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 1.33333px 1.33333px #58361b55); }
.farm-skinned .farm-tile.is-selected,.farm-skinned .farm-tile.is-hint { background:var(--farm-tile) center / 100% 100% no-repeat; filter:drop-shadow(0 0 6px #ffe88b); }
.farm-skinned .farm-status { position:absolute; top:850px; left:0; right:0; margin:0; color:#fff0c8; }
.farm-skinned .food-page-content>.food-rule { position:absolute; top:882px; left:40px; right:40px; margin:0; color:#fff4d8; font-size:14px; line-height:1.3; text-align:center; }
.farm-skinned .farm-harvest { position:absolute; top:953.333px; left:33.3333px; right:33.3333px; color:#fff1cb; }
.farm-skinned .farm-welcome { margin:216.667px 53.3333px 0; padding:36.6667px 20px; background:#fff0cfdb; border-color:#b98d54; color:#49311d; }
.farm-skinned .farm-welcome h2,.farm-skinned .farm-info-grid b,.farm-skinned .farm-welcome .food-rule { color:#49311d; }
.farm-skinned .farm-welcome+.food-page-actions { margin:20px 0; }

.farm-skinned .farm-stat span,.farm-skinned .farm-stat b { color:#342411; }
.farm-skinned .food-xp-track i { height:auto; }

/* 玩法说明放到底部木板；短屏为公共返回栏保留空间。 */
.farm-skinned .food-page-content { height:calc(100% - 126.667px - 116px); }
.farm-skinned .food-page-content>.food-rule { top:min(953.333px,calc(100% - 40px)); }


/* 收获行上移8设计像素，篮子以中心为基准缩小20%。 */
.farm-skinned .farm-play-info { top:102px; }
.farm-skinned .farm-icon-basket { transform:scale(.8); transform-origin:center; }


/* 说明跟随木板设计坐标，不随视口高度重新定位；编辑器偏移继续叠加。 */
.farm-skinned .food-page-content>.food-rule { top:953.333px; }

/* 整块连连看窗口使用固定舞台坐标，统一上移20px；高度不依赖视口。 */
.farm-skinned .farm-skin-art { top:-4px; }
.farm-skinned .partners-header { top:38px; }
.farm-skinned .farm-progress { top:50px; }
.farm-skinned .food-page-content { top:106.667px; height:986.667px; }

/* 木板中心锚定整个游戏屏幕中心，补偿资源栏占高，并保留上移20px。 */
.farm-skinned { --farm-window-top:calc(50% - 550.665px - var(--resource-content-top,104px) / 2 - 20px); }
.farm-skinned .farm-skin-art { top:var(--farm-window-top); }
.farm-skinned .partners-header { top:calc(var(--farm-window-top) + 42px); }
.farm-skinned .farm-progress { top:calc(var(--farm-window-top) + 54px); }
.farm-skinned .food-page-content { top:calc(var(--farm-window-top) + 110.667px); height:986.667px; }

/* 农庄大厅：1080×1627 PSD 可见内容，按1.5等比映射720舞台。
   仅未开局使用；参数全部读取玩法配置，不采用PSD示例值。 */
.farm-hall { background-image:var(--farm-hall-background); background-position:center center; --farm-hall-top:calc((100% - 116px - 1084.667px) / 2); }
.farm-hall .farm-skin-art { top:var(--farm-hall-top); height:1084.667px; background:var(--farm-hall-neutral) center / contain no-repeat; }
.farm-hall .partners-header { top:calc(var(--farm-hall-top) + 350px); left:65.3333px; width:112px; height:48px; align-items:center; }
.farm-hall .partners-header>span { font-size:36px; line-height:1; transform:translate(5px,-4px); }
.farm-hall .farm-progress { top:calc(var(--farm-hall-top) + 354px); left:196px; right:67px; height:48px; }
.farm-hall .food-summary-bar { top:0; font-size:21px; height:24px; }
.farm-hall .food-xp-track { top:23px; width:466px; height:26.6667px; padding:2.66667px 4.66667px; box-sizing:border-box; background:var(--farm-hall-xp-track) center / 100% 100% no-repeat; overflow:visible; }
.farm-hall .food-xp-track span { position:absolute; top:-25px; left:0; color:#49311d; text-shadow:none; font-size:21px; }
.farm-hall .food-xp-track i { position:relative; inset:auto; height:19.3333px; max-width:100%; border-radius:10px; background:var(--farm-hall-xp-fill) center / 100% 100% no-repeat; }
.farm-hall .food-page-content { top:var(--farm-hall-top); inset-inline:0; height:1084.667px; }
.farm-hall .farm-welcome { margin:0; padding:0; border:0; background:none; }
.farm-hall .farm-welcome h2 { position:absolute; top:458px; left:263px; width:200px; margin:0; font-size:34px; line-height:1.3; }
.farm-hall .farm-welcome>p:not(.food-rule) { position:absolute; top:510px; left:180px; width:380px; margin:0; color:#49311d; font-size:18px; }
.farm-hall .farm-info-grid { position:absolute; top:570px; left:335px; width:330px; height:138px; margin:0; padding:0; display:grid; grid-template-columns:162px 162px; grid-template-rows:76px 76px; gap:0; text-align:left; background:none; }
.farm-hall .farm-info-grid>span { padding-left:57px; font-size:17px; align-self:start; }
.farm-hall .farm-info-grid b { font-size:25px; }
.farm-hall .farm-info-grid .farm-hud-icon { position:absolute; width:50px; height:52px; object-fit:contain; transform:scale(.9); transform-origin:center; }
.farm-hall .farm-info-grid>img { position:absolute; left:0; top:0; }
.farm-hall .farm-info-grid>img:nth-of-type(2) { left:162px; }
.farm-hall .farm-info-grid>img:nth-of-type(3) { top:80px; }
.farm-hall .farm-info-grid>img:nth-of-type(4) { left:162px; top:80px; }
.farm-hall .farm-info-grid>span:nth-of-type(3),.farm-hall .farm-info-grid>span:nth-of-type(4) { grid-row:2; }
.farm-hall .farm-welcome .food-rule { position:absolute; top:724px; left:324px; width:331px; margin:0; font-size:14px; }
.farm-hall .farm-welcome-art { position:absolute; top:827px; left:165px; width:334px; height:66px; margin:0; justify-content:space-between; gap:0; }
.farm-hall .farm-welcome-art .food-icon { width:64px; height:64px; object-fit:contain; }
.farm-hall .farm-welcome+.food-page-actions { position:absolute; top:919.333px; left:218.667px; width:288px; height:94.667px; margin:0; }
.farm-hall #farm-start { width:288px; height:94.667px; padding:10px 28px 30px; border:0; background:var(--farm-hall-start) center / contain no-repeat; color:#49311d; font-size:25px; font-weight:700; }

.farm-hall .farm-info-grid { color:#49311d; }
.farm-hall .farm-info-grid>span { color:#49311d; }
.farm-hall .food-summary-bar { color:#49311d; }
.farm-hall .food-xp-track span { right:auto; bottom:auto; height:23px; justify-content:flex-start; }

.farm-hall #farm-start { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:4px 16px 8px; gap:0; font-size:28px; }
.farm-hall #farm-start .currency-amount { justify-content:center; width:150px; height:32px; background:#8f5716; border-radius:18px; color:white; font-size:31px; }
.farm-hall #farm-start .currency-icon { width:32px; height:32px; }
.farm-hall[data-lang="en"] .farm-skin-art,.farm-hall[data-lang="zh-Hant"] .farm-skin-art { background-image:var(--farm-hall-neutral); }
.farm-hall:is([data-lang="en"],[data-lang="zh-Hant"]) .partners-header h1 { clip-path:none; overflow:visible; width:350px; height:155px; top:-260px; left:-52px; display:flex; align-items:center; justify-content:center; border:5px ridge #c49148; border-radius:22px; background:#683d19; color:#ffd66e; font-size:64px; text-shadow:3px 3px #321708; }
.farm-hall[data-lang="en"] .farm-info-grid>span { font-size:14px; }
.farm-hall[data-lang="en"] .farm-info-grid b { font-size:22px; }

.farm-hall[data-lang="en"] .farm-welcome h2 { left:236px; width:270px; font-size:30px; white-space:nowrap; }
.farm-hall[data-lang="en"] .farm-welcome>p:not(.food-rule) { left:96px; width:550px; font-size:17px; }
.farm-hall[data-lang="en"] .farm-info-grid b { white-space:nowrap; font-size:20px; }

/* 大厅PSD新增问号入口：源坐标975,25，按1.5等比映射。 */
.farm-hall #farm-intro { position:absolute; top:10px; left:650px; width:48.6667px; height:48px; padding:0; border:0; background:var(--farm-hall-intro) center / contain no-repeat; cursor:pointer; z-index:2; }

.farm-hall-labels { display:none; }
.farm-hall .farm-hall-labels { display:contents; color:#ffdf92; font-weight:700; text-shadow:1px 2px 2px #3d230f; }
.farm-hall .farm-reward-caption { position:absolute; left:49.3333px; top:873px; width:97.3333px; text-align:center; font-size:16px; line-height:20px; }
.farm-hall .farm-more-caption { position:absolute; left:589px; top:837px; width:80px; display:flex; flex-direction:column; gap:7px; text-align:center; font-size:17px; line-height:23px; }
.farm-hall .farm-sign-caption { position:absolute; left:94px; top:702px; width:184px; display:flex; flex-direction:column; gap:4px; text-align:center; font-size:29px; line-height:1.2; transform:rotate(-6deg); -webkit-text-stroke:1px #3b220e; paint-order:stroke fill; text-shadow:2px 3px #3b220e; }
.farm-hall[data-lang="en"] .farm-reward-caption { font-size:12px; }
.farm-hall[data-lang="en"] .farm-more-caption { font-size:14px; }
.farm-hall[data-lang="en"] .farm-sign-caption { font-size:21px; }

.farm-hall-logo { position:absolute; left:10.6667px; top:0; width:362px; height:236.6667px; background:var(--farm-hall-logo) center / contain no-repeat; pointer-events:none; }
.farm-hall:is([data-lang="en"],[data-lang="zh-Hant"]) .farm-hall-logo { display:none; }
.farm-hall:is([data-lang="en"],[data-lang="zh-Hant"]) .partners-header h1 { top:calc(-1 * var(--farm-hall-top) - 350px); }

.farm-hall[data-lang="en"] .farm-hall-logo { display:block; background-image:var(--farm-hall-logo-en); }
.farm-hall[data-lang="zh-Hant"] .farm-hall-logo { display:block; background-image:var(--farm-hall-logo-zh-hant); }
.farm-hall:is([data-lang="en"],[data-lang="zh-Hant"]) .partners-header h1 { clip-path:inset(50%); width:1px; height:1px; overflow:hidden; }
