/* Reference-led presentation. Every displayed value comes from existing state. */
@font-face{font-family:Farm Nunito;src:url('/assets/living-farm/v2/fonts/nunito-variable.ttf') format('truetype');font-style:normal;font-weight:200 1000;font-display:swap}
:root,body,button,input,select,textarea{font-family:Farm Nunito,'Trebuchet MS','Segoe UI',sans-serif}
:root{--cream:#fff1d8;--ink:#40240f;--world-wood:url('/assets/living-farm/decor/wood.webp');font-synthesis:weight}
.app{position:relative;background:#f5e9d4}.app::after{opacity:.22;border-width:3px;border-image-width:3px;pointer-events:none}.app .bottom-nav .nav-item{font-size:11px;padding:6px 1px;gap:4px}.app .bottom-nav .nav-item svg{width:29px;height:29px}
.language-picker{position:relative;z-index:45;display:flex;align-items:center;gap:8px;padding:10px 54px 10px 12px;min-height:63px;height:63px;border-radius:0 0 16px 16px;background:linear-gradient(110deg,#fff6e8,#f2e3c9);box-shadow:0 2px 5px #6a471f55}
.language-brand{width:auto;min-width:0;height:auto;gap:3px;flex:1;white-space:nowrap}.language-brand>img{width:34px;height:38px;object-fit:contain}.language-brand strong{font-size:clamp(17px,5.5vw,27px);font-weight:900;letter-spacing:-1.05px}
.language-picker details{margin:0;position:static;flex:none}.language-picker summary{padding:7px 8px;gap:5px;min-height:34px;background:#fff6e7;border:1px solid #ccb28f;border-radius:12px;color:#50341c;font-size:10px;font-weight:700;box-shadow:inset 0 1px #fff}.language-picker summary img{width:22px;height:16px;border-radius:3px}.language-picker summary>span:first-of-type{max-width:65px;overflow:hidden;text-overflow:ellipsis}
.language-options{left:auto;right:12px;top:58px;z-index:100;width:205px}.language-picker+#screen .guide-entry{top:13px;right:12px;z-index:46}.guide-entry button{width:34px;height:36px;padding:0;font-size:0;min-height:36px;border-radius:12px;justify-content:center;gap:0;line-height:1}.guide-entry span{width:23px;height:23px;font-size:18px;background:#765940;color:#fff4df;border:1px solid #f9e7c8;display:grid;place-items:center;font-weight:bold;flex:none}
.app .bottom-nav{padding:5px 7px max(6px,env(safe-area-inset-bottom));border-radius:20px 20px 0 0;gap:1px}.nav-item{min-height:62px;gap:4px;font-size:10px;padding:6px 1px;border-radius:13px;color:#775337}.nav-item svg{width:29px;height:29px;fill:#a77a4b;stroke:#654024;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round;filter:drop-shadow(0 1px 0 #fff2d1) drop-shadow(0 1px 1px #714a1e45)}.nav-item.active svg{fill:#e4a748;stroke:#67401f;stroke-width:1.6}.nav-item [href='#i-tap']{fill:#dca365}
.world-sign{position:relative;width:205px;height:115px;margin:-25px 0 -3px;flex:none;z-index:2}.world-sign>img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none}.world-sign>span{position:absolute;left:10%;right:8%;top:46%;height:40%;display:flex;align-items:center;justify-content:center;text-align:center;color:#412306;font-size:clamp(24px,7vw,33px);line-height:1;font-weight:900;text-shadow:0 1px #f2d099;letter-spacing:-.7px}
body[data-screen=clicker] .app,body[data-screen=profile] .app{background:#88a056 url('/assets/living-farm/tap-garden.webp') center 63px/100% auto no-repeat}
.app .clicker-page{padding:0 10px 100px;background:none}.world-tap-head{display:flex;justify-content:space-between;align-items:flex-start;position:relative;z-index:2;height:82px}.world-tap-head .world-sign{width:51%;height:115px;margin-top:-26px}
.world-tap-head .tap-balance{display:grid;grid-template-columns:24px minmax(0,1fr);grid-template-rows:auto auto;column-gap:3px;row-gap:0;width:43%;margin:12px 0 0;padding:7px 9px 6px;background:linear-gradient(125deg,#fff8e8,#f4e3bd);border:1px solid #d3ae70;border-radius:15px;box-shadow:0 2px 3px #85582655}.tap-balance>img{width:25px;height:36px;grid-row:span 2;object-fit:contain}.world-tap-head .tap-balance strong{font-size:clamp(22px,6vw,31px);max-width:none;letter-spacing:-.6px;line-height:1.1;white-space:nowrap;text-align:center}.world-tap-head .tap-balance small{font-size:10px;letter-spacing:0;color:#705237;text-align:center;width:auto}
.tap-arena{height:auto;aspect-ratio:1.18;position:relative;margin:-3px 0 0;background:none!important;border:0;border-radius:0;box-shadow:none;overflow:visible}.tap-arena::before,.tap-arena::after{display:none}.tap-chicken,.tap-chicken.baby,.tap-chicken.young{position:relative;background:none;border:0;box-shadow:none;width:83%;height:100%;aspect-ratio:auto;border-radius:50%;padding:0;transform:none}.tap-chicken .living-tap-pet,.tap-chicken.baby .living-tap-pet,.tap-chicken.young .living-tap-pet{display:block;position:relative;width:100%;height:100%;max-width:none;object-fit:contain;filter:drop-shadow(0 5px 4px #563e2344);pointer-events:none;margin:0;transform:none;animation:none!important}.tap-chicken.young .living-tap-pet{transform:scale(.95)}
.world-energy{display:flex;align-items:center;gap:6px;width:75%;margin:-4px auto 9px;position:relative;background:#fff1d3;border:1px solid #dabb79;border-radius:13px;padding:5px 11px 5px;box-shadow:0 3px 4px #6e491f44}.world-energy>span{font-size:37px;line-height:1;color:#f8b830;text-shadow:1px 1px #a56412}.world-energy>div{flex:1;min-width:0}.world-energy .tap-progress.energy{height:10px;border:1px solid #d99c25;background:#d1bb93}.world-energy .tap-progress::-webkit-progress-bar{background:#d1bb93}.world-energy .tap-progress::-webkit-progress-value{background:linear-gradient(#ffe792,#ffb325)}.world-energy b{display:block;text-align:center;font-size:11px;margin-top:3px;color:#40260f}
.world-tap-actions{display:grid;grid-template-columns:1.65fr 1fr;gap:6px;margin:0 0 10px}.world-boost,.world-gift{display:flex;align-items:center;position:relative;min-width:0;height:76px;text-align:left;border-radius:13px;border:1px solid #bd8e50;background:linear-gradient(#edc07c55,#dea75788),var(--world-wood) center/cover;box-shadow:inset 0 1px #ffdfab,0 3px 0 #89592466;color:#47290f;gap:2px;padding:3px 5px}.world-boost>img{width:36%;height:70px;object-fit:contain;filter:drop-shadow(0 2px 2px #77451855)}.world-boost>span{flex:1;min-width:0}.world-boost b{display:block;font-size:14px;line-height:1.15}.world-boost strong{display:flex;align-items:center;justify-content:center;width:max-content;max-width:100%;gap:3px;border:1px solid #c49653;background:#fff1cc;border-radius:12px;font-size:14px;margin-top:5px;padding:3px 8px;box-shadow:0 2px #9b692755}.world-boost strong img{width:13px;height:19px;object-fit:contain}.world-gift{background:linear-gradient(110deg,#fff7e7,#f1dfbd);border-color:#d0b58a;padding:4px;gap:0}.world-gift>img{width:47%;height:64px;object-fit:contain}.world-gift b{font-size:10px;line-height:1.3;flex:1}.world-gift>span{font-size:21px}.gift-ready{position:absolute;right:5px;top:5px;width:7px;height:7px;background:#7b9c41;border:1px solid #fff4d7;border-radius:50%}
.world-growth{background:linear-gradient(105deg,#fff5e3,#f5e4c8);border:1px solid #d6bd92;border-radius:15px;padding:8px 9px 6px;box-shadow:0 3px 5px #4d3b2655}.world-growth header{display:flex;align-items:center;justify-content:space-between}.world-growth h2{font-size:13px;margin:0;color:#462910}.world-growth header>button{height:22px;min-width:28px;font-size:22px;color:#8c6335}.world-growth-body{display:flex;align-items:center;gap:7px}.world-growth ol{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;flex:1;min-width:0;margin:0;padding:0}.world-growth li{min-width:0;position:relative;text-align:center}.world-growth li+li::before{content:'›';position:absolute;left:-7px;top:30%;color:#977447;font-size:20px}.world-growth li>img{width:100%;height:66px;object-fit:contain;border-radius:50%;background:#e9d6b3;border:1px solid transparent}.world-growth li.current>img{border:2px solid #ffd338;background:#fff2bc}.world-growth li b{display:block;color:#745536;line-height:1.2;font-size:8px;overflow-wrap:anywhere}.world-growth .quick-grow{width:89px;min-height:63px;flex:none;padding:5px;display:flex;flex-direction:column;gap:6px;font-size:11px;border-radius:10px}.quick-grow strong{display:flex;align-items:center;justify-content:center;gap:3px;background:#fff0d2;border:1px solid #b88c50;border-radius:7px;padding:4px;width:100%;font-size:12px;white-space:nowrap}.quick-grow strong img{width:11px;height:15px;object-fit:contain}.world-growth-progress{display:flex;align-items:center;gap:8px;margin-top:5px}.world-growth-progress progress{height:4px;flex:1;width:30%;background:#d4c2a4}.world-growth-progress small{font-size:8px;color:#836744}.world-growth-progress progress::-webkit-progress-bar{background:#d4c2a4}.world-growth-progress progress::-webkit-progress-value{background:#d9a74b}
.tap-tabs{background:#fff0d9e8;margin:11px 0;border:1px solid #c8a373;padding:3px}.tap-tabs button{padding:8px 3px;font-size:10px;color:#6e4c28}.tap-tabs button.selected{background:linear-gradient(#ffdf8e,#edbd61);color:#563515}.tap-upgrades,.tap-dailies{background:#fff2dcf5;border:1px solid #c8aa7c;border-radius:18px;padding:5px 12px 18px}.tap-project-plan{background:#fff2dbe8;border-color:#c9b084;margin:12px 0 8px;padding:12px}.tap-project-plan summary{font-size:12px;font-weight:bold;cursor:pointer}.tap-project-plan p{color:#735a3c}.tap-footnote{background:#f7eed6df;padding:8px;border-radius:10px;color:#6e583d;margin-top:8px}.tap-particles .living-tap-value{top:29%;font-size:32px;color:#fff7df;-webkit-text-stroke:1px #644424;text-shadow:0 2px #60401e}
/* Each shelf has live, clickable eggs and an independent nameplate. */
body[data-screen=collection] .app{background:#926137}.app .world-collection{padding:0 0 100px;background:none}.world-collection-head{position:relative;height:82px;margin-bottom:-82px;z-index:3;display:flex;align-items:flex-start;justify-content:space-between;padding:0 10px;pointer-events:none}.world-collection-head .world-sign{width:49%;height:110px;margin-top:-28px}.world-collection-head .world-sign span{font-size:clamp(22px,6.5vw,30px)}.world-tabs{display:flex;gap:2px;padding:4px;margin-top:12px;pointer-events:auto;background:#fff0d4;border:1px solid #d2b389;border-radius:16px;box-shadow:0 2px 4px #65401455}.world-tabs button{min-height:35px;padding:5px 9px;font-size:12px;border-radius:12px;color:#7c593b;font-weight:700;white-space:nowrap}.world-tabs button.active{background:linear-gradient(#ffdf8b,#ffc450);border:1px solid #e4ad4d;color:#543010}.world-tabs button span{font-size:17px;margin-right:4px}
.egg-cabinet{position:relative;width:100%;aspect-ratio:960/1640;background:url('/assets/living-farm/v2/collection-cabinet-v2.webp') center bottom/100% calc(100% - 45px) no-repeat;padding-top:45px}
.cabinet-item{position:absolute;display:block;text-align:center;padding:0;background:none;border:0;border-radius:0;box-shadow:none;overflow:visible;color:#4d2a12}.cabinet-item .cabinet-art{position:absolute;inset:0 0 22%;isolation:isolate}.cabinet-pet{position:absolute;width:76%;height:94%;left:12%;bottom:6%;object-fit:contain;filter:drop-shadow(0 3px 2px #4c2b2255);z-index:1;transition:transform .18s}.cabinet-nest{position:absolute;width:122%;max-width:none;height:51%;left:-11%;bottom:-7%;object-fit:contain;z-index:2;pointer-events:none;clip-path:polygon(0 40%,20% 63%,50% 70%,80% 63%,100% 40%,100% 100%,0 100%)}
.cabinet-art::before{content:'';position:absolute;left:-11%;bottom:-7%;width:122%;height:51%;background:url('/assets/living-farm/decor/nest.webp') center/contain no-repeat;z-index:0}.cabinet-plaque{position:absolute;bottom:0;left:-5%;width:110%;min-height:22%;padding:5px 3px;background:linear-gradient(110deg,#fff2d4d9,#efcfa0e8),var(--world-wood) center/cover;border:1px solid #b38753;border-radius:9px;box-shadow:0 3px 3px #4b2d1680;z-index:4}.cabinet-plaque::before,.cabinet-plaque::after{content:'';position:absolute;width:3px;height:3px;border-radius:50%;background:#826442;top:5px}.cabinet-plaque::before{left:5px}.cabinet-plaque::after{right:5px}.cabinet-plaque h3{font-size:clamp(11px,3.35vw,17px);line-height:1.15;color:#503016;letter-spacing:-.25px;margin:0}.cabinet-plaque p{font-size:clamp(10px,3vw,15px);margin:3px 0 0;color:#5e3e23;font-weight:700;line-height:1.2}.little-coin{display:inline-grid;place-items:center;border:1px solid #b47b1e;background:linear-gradient(#ffe286,#eaa522);border-radius:50%;width:18px;height:18px;color:#a76613;box-shadow:inset 0 0 0 2px #f5c65d;font-size:12px;font-weight:900;vertical-align:middle}
.egg-cabinet .cabinet-item{width:25%;height:21%;left:21%;top:13.8%}.egg-cabinet .cabinet-item:nth-child(2){left:54.5%}.egg-cabinet .cabinet-item:nth-child(3){top:36.6%}.egg-cabinet .cabinet-item:nth-child(4){left:54.5%;top:36.6%}.egg-cabinet .cabinet-item:nth-child(5){left:31%;top:61%;width:38%;height:28%}.cabinet-item:hover .cabinet-pet{transform:translateY(-3px)}
.hen-cabinet{padding:100px 24px 15px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px;background:linear-gradient(#5d321833,#5d321833),var(--world-wood) center/360px;border-inline:8px ridge #9c6937}.hen-cabinet .cabinet-item{position:relative;aspect-ratio:.87;width:100%;}.hen-cabinet .cabinet-art::before{height:14px;bottom:-5px;left:-12px;width:calc(100% + 24px);background:var(--world-wood) center/cover;border-top:3px solid #c99a63;box-shadow:0 8px 7px #42230d8a}.hen-cabinet .cabinet-pet{width:112%;left:-6%;height:100%;bottom:0}.hen-cabinet .cabinet-plaque{left:0;width:100%}.hen-cabinet .cabinet-plaque h3{font-size:12px}.hen-cabinet .cabinet-plaque p{font-size:9px}.cabinet-shop{width:calc(100% - 32px);margin:8px 16px 0}
/* Cabinet: carved frame with live grain numerals and real transaction history. */
.app .world-profile{padding:0 13px 105px;background:none}.world-profile>.world-sign{margin-bottom:26px;width:52%;height:121px;margin-top:-25px}.world-profile>.world-sign span{font-size:clamp(25px,7vw,35px)}
.wallet-card.world-wallet{position:relative;isolation:isolate;aspect-ratio:1024/648;margin:0 -5px 15px;padding:0;width:calc(100% + 10px);background:url('/assets/living-farm/v2/wallet-frame-v2.webp') center/100% 100% no-repeat;border:0;border-radius:0;box-shadow:none;overflow:visible}.world-wallet::before,.world-wallet::after{display:none}.world-wallet .wallet-heading{position:absolute;top:7%;left:20%;width:60%;height:12%;display:flex;align-items:center;justify-content:center;gap:4px;margin:0;padding:0;color:#452409}.world-wallet .wallet-heading h2{font-size:clamp(12px,3.6vw,19px);text-align:center;margin:0;font-weight:900;line-height:1.1}.wallet-heading>img{width:23px;height:26px;object-fit:contain;flex:none}
.world-wallet .wallet-sum{position:absolute;left:12%;top:27%;width:76%;height:27%;display:flex;align-items:center;justify-content:center;gap:6px;margin:0;padding:0;min-height:0;background:none;border:0;border-radius:0;box-shadow:none;transform:none}.world-wallet .wallet-grain-amount{height:100%;max-width:83%;width:auto;min-width:0;filter:drop-shadow(0 2px 1px #92602944)}.world-wallet .wallet-currency{font-size:clamp(18px,6vw,31px);font-weight:900;color:#4f2e11;margin:0;letter-spacing:-1px;flex:none}.world-wallet .wallet-actions{position:absolute;top:59%;left:10%;width:80%;height:17%;display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0;padding:0;background:none;border:0}.world-wallet .wallet-actions .button{min-height:0;height:100%;font-size:clamp(12px,3.7vw,19px);padding:4px;gap:5px;border-radius:12px;box-shadow:inset 0 1px #fff0c6,0 3px 1px #68401788}.world-wallet .wallet-actions svg{width:22px;height:22px;stroke-width:2.8;flex:none}.wallet-network{position:absolute;top:82%;left:13%;width:74%;display:flex;gap:6px;justify-content:center;margin:0;color:#ffefd3;font-size:clamp(7px,2vw,10px);line-height:1.2;text-align:center}.wallet-network>span+span{border-left:1px solid #dcb67a;padding-left:6px}.wallet-guest-note{position:absolute;bottom:-10px;left:0;width:100%;text-align:center;font-size:9px;color:#4b3318;background:#fff0d4de;border-radius:8px}.wallet-sync-error{position:absolute;top:100%;z-index:4;background:#fff1d5;border:1px solid #d4ab71;padding:6px;border-radius:8px;width:100%;font-size:10px}
.world-history{margin:5px 3px 9px;padding:13px 14px 7px;border:1px solid #d0b38a;border-radius:17px;background:repeating-linear-gradient(15deg,#dbbd8010 0 1px,transparent 1px 3px),linear-gradient(120deg,#fff9e9,#f3e7d4);box-shadow:inset 0 1px #fff9e9,0 3px 7px #634c2944}.world-history>header{display:flex;justify-content:space-between;align-items:center;gap:7px}.world-history h2{font-size:20px;letter-spacing:-.6px;margin:0;color:#4d2c14}.world-history header button{display:flex;align-items:center;gap:7px;border:1px solid #c3a786;border-radius:9px;background:#f7e8d0;padding:5px 9px;font-size:11px;color:#5e3a1e}.world-history header button span{font-size:20px;line-height:.7}.world-transaction{display:flex;align-items:center;gap:9px;padding:12px 0;border-bottom:1px solid #d8c6a8}.world-transaction:last-child{border:0}.transaction-icon{width:33px;height:33px;display:grid;place-items:center;color:#fff7d9!important;border:1px solid #769051;border-radius:50%;background:linear-gradient(#accb82,#6f9c50);text-shadow:0 1px #365e2d;font-size:25px;flex:none}.transaction-icon.negative{background:linear-gradient(#eeb6a1,#ce765a);border-color:#b76c58}.world-transaction>div{min-width:0;flex:1}.world-transaction b{display:block;font-size:13px;line-height:1.2}.world-transaction small{display:block;font-size:9px;color:#877358;margin-top:3px}.world-transaction>strong{font-size:14px;white-space:nowrap;color:#816a4b}.world-transaction .positive{color:#2d7336}.world-transaction .negative{color:#b44931}.history-empty,#world-history-list>.muted{font-size:12px;line-height:1.6;padding:14px 0;color:#876e50}
.world-country,.world-settings{margin:7px 3px;border:1px solid #cfb18b;background:linear-gradient(110deg,#fff3df,#f0dfc1);border-radius:15px;box-shadow:inset 0 1px #fffaf0,0 3px 4px #694a2544}.world-country{display:flex;align-items:center;gap:14px;padding:7px 15px;font-size:16px}.world-country .country-flag{transform:scale(.85);transform-origin:center}.world-settings summary{padding:13px 18px;font-size:21px;display:flex;align-items:center;gap:13px;cursor:pointer}.world-settings summary span{font-size:16px;font-weight:bold}.world-settings summary span:last-child{margin-left:auto}.world-settings .profile-details{margin:0 10px 10px;border:0;background:transparent}.world-profile>.button{margin-top:9px!important}
/* The farm is a continuous yard. Feeding and the first real laid egg are in the scene. */
body[data-screen=profile] .app{background-image:url('/assets/living-farm/v2/farm-yard.webp');background-size:100% auto}
.app .world-farm{padding:0 12px 110px;background:#74904e var(--farm-background) center top/100% auto no-repeat}.world-farm-hero{position:relative;margin:0 -12px;background:var(--farm-background) center top/100% 100% no-repeat}.world-farm-head{position:absolute;left:10px;right:10px;top:0;height:90px;z-index:5;display:flex;justify-content:space-between;align-items:flex-start;pointer-events:none}.world-farm-head .world-sign{width:50%;height:120px;margin-top:-25px}.world-farm-head .world-sign span{font-size:clamp(22px,6.6vw,32px)}.world-coin-balance{display:flex;align-items:center;gap:5px;border:1px solid #d1ad78;background:linear-gradient(100deg,#fff7e5,#f3e5c7);border-radius:17px;padding:7px 10px;font-size:16px;margin-top:13px;box-shadow:0 2px 4px #71461a66}.world-coin-balance>.little-coin{width:25px;height:25px;font-size:19px}.world-coin-balance b{font-variant-numeric:tabular-nums}.world-coin-balance>span:last-child{font-size:12px}
.world-farm .game-stage,.world-farm .game-stage.hen-farm,.world-farm .game-stage.incubation-stage{height:auto;aspect-ratio:790/1164;position:relative;margin:0;border:0;border-radius:0;box-shadow:none;background:var(--farm-background) center top/100% auto no-repeat;overflow:visible}.world-farm .game-stage::before,.world-farm .game-stage::after{display:none}
.world-farm .game-stage .pet-button,.world-farm .hen-farm .pet-button{position:absolute;left:13%;top:27.8%;width:54%;height:36.65%;margin:0;bottom:auto;transform:none;display:block;padding:0}.world-farm .game-stage .pet-button .farm-pet,.world-farm .hen-farm .pet-button .farm-pet{width:100%;height:100%;max-width:none;max-height:none;margin:0;transform:none;filter:drop-shadow(0 4px 4px #58432244)}
.world-farm .game-stage .stage-badge,.world-farm .game-stage .stage-caption,.world-farm .game-stage .stage-sub{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.world-farm .game-stage .farm-feeder{right:7%;left:auto;bottom:23%;width:23%;max-width:115px;z-index:3}
.world-farm .incubation-stage .pet-button{left:27%;top:34%;height:38%;width:42%}.world-farm .incubation-stage .incubation-nest{left:12%;right:auto;width:76%;bottom:22%;height:30%}.world-farm .incubation-stage .incubation-nest-front{z-index:3;pointer-events:none}
.world-feed{position:absolute;left:6.6%;bottom:18.2%;width:55.4%;height:18%;z-index:6;background:url('/assets/living-farm/v3/feed-trough-reference.webp') center/100% 100% no-repeat;color:#4d2a0c;font-size:clamp(21px,6.3vw,32px);font-weight:900;padding:8% 13% 3% 7%;text-shadow:0 1px #f3d198;line-height:1.1;transform:none;filter:drop-shadow(0 5px 3px #49321955);transition:filter .2s,transform .2s}.world-feed:not(:disabled):active{transform:translateY(3px)}.world-feed:disabled{filter:drop-shadow(0 5px 3px #49321955) saturate(.75);font-size:clamp(17px,5vw,25px)}
.world-scene-nest{position:absolute;width:40%;right:0;bottom:31%;height:20%;z-index:4}.world-scene-nest>img{width:100%;height:100%;object-fit:contain}.world-scene-nest .laid-egg{background:none;border:0;box-shadow:none;width:100%;height:100%;position:relative;padding:0;overflow:visible}.world-scene-nest .laid-egg-art{width:100%;height:100%;margin:0}.world-scene-nest .laid-egg-label{position:absolute;bottom:0;left:20%;font-size:9px;padding:3px 7px;min-height:0}.scene-egg-count{position:absolute;right:9%;top:18%;border:1px solid #aa7838;background:#ffdf8b;border-radius:50%;padding:3px 6px;font-size:10px;color:#573510;pointer-events:none}
.world-farm-state{position:absolute;bottom:2.7%;left:0;right:0;z-index:8;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 6.2%;background:none}.world-farm-state>div{display:flex;align-items:center;gap:7px;background:linear-gradient(120deg,#fff7e5,#f3e1c0);border:1px solid #dcc39c;border-radius:14px;padding:10px 11px;box-shadow:0 3px 5px #4e3b1f55;min-width:0}.world-farm-state img{width:32px;height:38px;object-fit:contain}.state-star{font-size:34px;color:#f3b43e;text-shadow:0 1px #a36a18}.world-farm-state section{flex:1;min-width:0}.world-farm-state b{font-size:14px;font-weight:900;color:#513218;line-height:1.2;display:block}.world-farm-state progress{width:100%;height:10px;appearance:none;border:1px solid #c1a480;border-radius:8px;overflow:hidden;margin-top:7px;display:block}.world-farm-state progress::-webkit-progress-bar{background:#c9bca2}.world-farm-state progress::-webkit-progress-value{background:linear-gradient(#ffda73,#efaa2d);border-radius:8px}.world-farm-state>div+div progress::-webkit-progress-value{background:linear-gradient(#a8d974,#5b9d34)}
.world-farm>.care-card,.world-farm>.hen-upgrade,.world-farm>.feed-store,.world-farm>.nest-section,.world-farm>.preview-settings,.world-farm>.gallery-link{background:#fff2ddf5;border:1px solid #ccaf81;border-radius:17px;padding:15px;margin-top:13px}.world-farm .care-card{margin-bottom:0}.world-farm>.gallery-link{margin-bottom:15px}.world-farm[data-farm-stage=egg] .world-farm-hero .game-stage{aspect-ratio:960/1100}.world-farm[data-farm-stage=egg] .world-farm-state{padding-bottom:10px}
@media(max-width:359px){.world-coin-balance{font-size:13px;padding:6px;gap:3px}.world-coin-balance>.little-coin{width:20px;height:20px;font-size:15px}.world-farm-state{padding-inline:12px;gap:7px}.world-farm-state>div{padding:8px;gap:5px}.world-farm-state b{font-size:10px}.world-farm-state img{width:25px}.state-star{font-size:28px}.world-farm-head .world-sign{height:110px}}
/* A GPU mesh moves individual illustrated body parts; static art remains a fallback. */
.living-rig{position:absolute!important;inset:0;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;pointer-events:none;object-fit:contain;z-index:1}.rig-ready>.hen-pose,.rig-ready>.chick-source{opacity:0!important;animation:none!important}.living-chick-rig{position:relative;display:block}.living-chick-rig>.chick-source{width:100%;height:100%;object-fit:contain}.living-chick-rig{animation:none!important}.rig-ready .living-ground{animation:ground-breathe 4s ease-in-out infinite}.rig-ready .living-feed-grains{z-index:3}.rig-ready .living-laid-egg{z-index:4}@keyframes ground-breathe{50%{transform:scaleX(.96)}}
@media(min-width:600px){.app{margin:15px auto;border-radius:24px 24px 0 0}.language-picker{border-radius:24px 24px 15px 15px}.nav-item{font-size:12px}.world-sign{width:230px;height:131px}.world-tap-head{height:100px}.world-tap-head .world-sign{height:137px}.world-growth li>img{height:88px}.world-growth li b{font-size:10px}.world-tap-actions button{height:88px}.world-boost b{font-size:18px}.world-gift b{font-size:13px}}
@media(max-width:359px){.language-picker{padding-left:7px;padding-right:47px;gap:5px}.language-brand>img{width:27px;height:33px}.language-brand strong{font-size:18px;letter-spacing:-.8px}.language-picker summary{font-size:9px;padding:6px}.language-picker summary img{width:18px;height:14px}.language-picker+#screen .guide-entry{right:8px}.world-tap-head{height:73px}.world-tap-head .world-sign{height:105px}.world-tap-head .tap-balance{padding-inline:5px;width:43%}.world-tap-head .tap-balance strong{font-size:21px}.world-tap-actions{grid-template-columns:1.58fr 1fr}.world-boost b{font-size:11px}.world-boost strong{font-size:12px;padding:3px 6px}.world-gift b{font-size:9px}.world-growth .quick-grow{width:76px;font-size:10px}.world-growth li>img{height:54px}.world-growth li b{font-size:7px}.world-tabs button{font-size:11px;padding:4px 6px}.world-tabs button span{font-size:14px}.world-tabs{margin-top:13px}.nav-item{font-size:9px}.wallet-heading>img{width:16px}.world-wallet .wallet-actions{gap:5px}.world-wallet .wallet-actions svg{width:18px}.world-history h2{font-size:18px}.world-transaction>strong{font-size:12px}}
@media(prefers-reduced-motion:reduce){.living-rig{display:none}.rig-ready>.hen-standing,.rig-ready>.chick-source{opacity:1!important}.rig-ready[data-motion=nest]>.hen-standing,.rig-ready[data-motion=lay]>.hen-standing,.rig-ready[data-motion=peck]>.hen-standing{opacity:0!important}.rig-ready[data-motion=nest]>.hen-nesting,.rig-ready[data-motion=lay]>.hen-nesting,.rig-ready[data-motion=peck]>.hen-pecking{opacity:1!important}}
.tap-chicken,.tap-chicken.baby,.tap-chicken.young{left:0;top:0;width:76%;height:94%}
.world-energy .tap-progress.energy{width:100%;margin:0;border-radius:8px}
.app .world-collection,.app .clicker-page,.app .world-profile,.app .world-farm{padding-top:0}
.world-collection-head{background:url('/assets/living-farm/decor/wood.webp') center/cover}
.world-collection-head .world-sign{z-index:2}
.world-wallet .wallet-actions .button+.button{margin-top:0}
@media(max-width:359px){.app .bottom-nav .nav-item{font-size:9px}.app .bottom-nav .nav-item svg{width:26px;height:26px}}
#screen>.page.world-collection,#screen>.page.clicker-page,#screen>.page.world-profile,#screen>.page.world-farm{padding-top:0}
.language-brand strong{font-weight:1000}.world-sign>span{font-weight:1000}.cabinet-plaque h3{font-weight:900}.world-boost b,.world-growth h2{font-weight:900}
.wallet-network{font-size:clamp(8px,2.2vw,11px)}
.world-farm .incubation-stage .nest-front{z-index:3;pointer-events:none}


/* Stable ground contact: never squash, float or rotate the whole illustrated bird. */
.living-hen .hen-pose,.living-chick,.living-chick-rig,.living-tap-pet,.chick-source,.tap-chicken img,.rig-ready .living-ground{animation:none!important;transition:none!important;transform:none!important}
.living-hen[data-motion=preview]>.hen-standing{opacity:1}.living-hen[data-motion=preview]>.hen-pecking,.living-hen[data-motion=preview]>.hen-nesting{opacity:0}
.living-chick.is-eating{animation:none!important;transform:none!important}
/* Grain sits behind the beak; the front wooden wall covers the lower body. */
.world-feed-back{position:absolute;left:6.6%;bottom:18.2%;width:55.4%;height:18%;z-index:2;transform:none;background:url('/assets/living-farm/v3/feed-trough-reference.webp') center/100% 100% no-repeat;pointer-events:none}
.world-feed{background:none;isolation:isolate}.world-feed::before{content:'';position:absolute;inset:0;background:url('/assets/living-farm/v3/feed-trough-reference.webp') center/100% 100% no-repeat;clip-path:polygon(0 45%,100% 24%,100% 100%,0 100%);z-index:-1;pointer-events:none}
.world-farm .game-stage .pet-button{z-index:3;transition:none!important;will-change:left,top}
.world-scene-nest{z-index:2}.game-stage[data-journey=rest] .world-scene-nest>img,.game-stage[data-journey=settle] .world-scene-nest>img{opacity:0}
.game-stage[data-journey=rest] .world-scene-nest:has(.laid-egg),.game-stage[data-journey=settle] .world-scene-nest:has(.laid-egg){z-index:5}
.game-stage .living-feed-grains{display:none!important}
.living-rig{inset:-12%!important;width:124%!important;height:124%!important}
.feeding-head-layer{position:absolute;z-index:5;pointer-events:none;max-width:none;max-height:none}
.world-feed-back{z-index:4}

/* Reference scene: foreground stays in front of the moving resident. */
.world-farm .world-farm-head{left:3%;right:3%;height:20%}
.world-farm-head .world-sign{width:47%;height:auto;aspect-ratio:916/390;margin-top:0}
.world-farm-head .world-sign span{left:24%;right:9%;top:42%;height:42%;font-size:clamp(17px,5.3vw,27px);white-space:nowrap;letter-spacing:-.025em}
.world-farm-head .world-coin-balance{margin-top:8px;font-weight:900}
.world-farm .world-feed{padding:0 4% 0 9%;font-size:clamp(18px,5.3vw,28px);font-weight:1000;line-height:1.1;display:flex;align-items:center;justify-content:center;text-align:center;text-shadow:0 1px #f3d198}
.world-farm .world-feed>span{display:block;position:relative;top:17%;transform:rotate(-7deg);pointer-events:none}
.world-farm .world-feed>svg{width:13%;height:28%;position:absolute;top:54%;left:15%;fill:#714313;stroke:none;transform:rotate(-7deg);pointer-events:none}
.world-farm .world-feed{padding-left:22%;padding-right:4%}
.app .bottom-nav .nav-item{font-size:clamp(10px,3.1vw,15px)}
.world-farm .world-feed:disabled{font-size:clamp(14px,4.2vw,22px)}
.world-farm .world-farm-state>div{min-height:49px;box-shadow:inset 0 1px #fffaf1,0 3px 8px #32261555}
.world-farm .world-farm-state>div{height:clamp(44px,12vw,62px);padding:6px 10px}
.world-farm-state b{white-space:nowrap;font-size:clamp(10px,3.5vw,18px)}
.world-farm-state img{height:32px;width:29px}
.world-farm-state .state-star{line-height:1;font-size:32px}
.world-farm-state progress{margin-top:5px}
.world-farm .game-stage .living-ground{display:none}
.world-scene-nest{top:52%;bottom:auto;height:17%;width:40%;right:0}
.world-scene-nest>img{position:absolute;inset:0;object-fit:fill;pointer-events:none}
.farm-nest-back{z-index:0}.farm-nest-front{z-index:3;clip-path:polygon(0 30%,20% 48%,50% 59%,80% 48%,100% 30%,100% 100%,0 100%)}
.farm-nest-egg{position:absolute;z-index:2;left:calc(33% - (var(--egg-total) - 1)*8% + var(--egg-slot)*17%);top:4%;width:32%;height:69%;background:none;border:0;padding:0;transform:rotate(calc(-12deg + var(--egg-slot)*14deg));filter:drop-shadow(0 3px 2px #79502277);transition:filter .15s}
.farm-nest-egg img{width:100%;height:100%;object-fit:contain}.farm-nest-egg:not(:disabled):hover{filter:drop-shadow(0 2px 2px #73521988) brightness(1.07)}
.game-stage[data-journey=rest] .world-scene-nest[data-filled=true],.game-stage[data-journey=settle] .world-scene-nest[data-filled=true]{z-index:5}
body[data-screen=farm] .language-picker{height:clamp(50px,13.7vw,71px);min-height:50px;padding-block:6px;border-radius:0}
body[data-screen=farm] .language-brand>img{width:32px}
body[data-screen=farm] .language-brand strong{font-size:clamp(18px,6.4vw,31px);letter-spacing:-1px}
body[data-screen=farm] .language-picker+#screen .guide-entry{top:9px}
body[data-screen=farm]{--farm-width:min(100vw,520px)}
body[data-screen=farm] .app::after{display:none}
body[data-screen=farm] .language-picker{height:clamp(50px,calc(var(--farm-width)*.137),71px)}
body[data-screen=farm] .language-brand strong{font-size:clamp(18px,calc(var(--farm-width)*.064),31px)}
.world-farm-head .world-sign span{font-size:5cqw}
.world-farm .world-feed{font-size:clamp(17px,calc(var(--farm-width)*.053),28px)}
.world-farm .world-feed:disabled{font-size:clamp(14px,calc(var(--farm-width)*.042),22px)}
.world-farm .world-farm-state b{font-size:clamp(10px,calc(var(--farm-width)*.035),18px)}
.game-stage[data-journey=rest] .farm-nest-egg,.game-stage[data-journey=settle] .farm-nest-egg{top:26%;height:50%;width:26%}
@media(min-width:480px){
 body[data-screen=farm]{--farm-width:min(520px,calc((100svh - 16px)*.5556))}
 body[data-screen=farm] .app{max-width:var(--farm-width);margin:8px auto;border-radius:24px}
 body[data-screen=farm] .bottom-nav{width:var(--farm-width);bottom:0;border-radius:18px 18px 0 0}
 body[data-screen=farm] .app .bottom-nav .nav-item{font-size:clamp(9px,calc(var(--farm-width)*.031),15px)}
 .world-farm .world-farm-state>div{height:calc(var(--farm-width)*.125);padding:6px 9px}
 .world-farm .world-farm-state img{width:26px;height:30px}
}
@media(min-width:480px){.world-farm-state b{font-size:17px}.world-farm-state>div{padding:13px}.world-farm-state progress{height:12px}}
@media(max-width:359px){.world-farm-state b{font-size:11px}.world-farm .world-farm-state{padding-inline:6%;gap:9px}.world-farm-state>div{padding:8px 6px}.world-farm-state progress{height:8px}}

/* Lettering and props share the yard's coordinate system at every screen size. */
.world-farm-hero{container-type:inline-size;container-name:farm-yard}
.world-farm .game-stage .pet-button{left:6.5%;top:26.5%;width:60%;height:40.7%}

/* Incubation shares one ground position; it must not inherit the hen's pose
   or the legacy fixed-pixel nest offset. Only the front rim covers the shell. */
.world-farm[data-farm-stage=egg] .world-farm-hero .incubation-stage{aspect-ratio:790/1164;--incubation-center:50%}
.world-farm .game-stage.incubation-stage>.pet-button{left:var(--incubation-center);right:auto;top:57cqw;bottom:auto;width:36cqw;height:46cqw;max-width:none;padding:0;margin:0;transform:translateX(-50%);z-index:2}
.world-farm .game-stage.incubation-stage>.incubation-nest{left:var(--incubation-center);right:auto;top:68cqw;bottom:auto;width:62cqw;height:44cqw;max-width:none;margin:0;transform:translateX(-50%);object-fit:contain;pointer-events:none}
.world-farm .game-stage.incubation-stage>.nest-back{z-index:1;filter:drop-shadow(0 4px 3px #49321955)}
.world-farm .game-stage.incubation-stage>.nest-front{z-index:3;filter:none;clip-path:polygon(0 38%,20% 51%,50% 64%,80% 51%,100% 38%,100% 100%,0 100%)}

/* The resting hen and the low straw nest are separate, consistently lit props. */
.game-stage:has([data-nest-art=separate]) .world-scene-nest,
.game-stage:has([data-nest-art=separate])[data-journey=rest] .world-scene-nest[data-filled=true],
.game-stage:has([data-nest-art=separate])[data-journey=settle] .world-scene-nest[data-filled=true]{z-index:auto;top:56.8%;right:2.4%;width:44%;height:15.5%}
.game-stage:has([data-nest-art=separate]) .world-scene-nest::before{content:'';position:absolute;left:9%;right:9%;bottom:5%;height:32%;border-radius:50%;background:#5e452650;filter:blur(5px);z-index:1;pointer-events:none}
.game-stage:has([data-nest-art=separate]) .world-scene-nest>img{opacity:1;max-width:none}
.game-stage:has([data-nest-art=separate]) .farm-nest-back{z-index:2}
.game-stage:has([data-nest-art=separate]) .farm-nest-front{z-index:5}
.game-stage:has([data-nest-art=separate]) .farm-nest-egg{z-index:4}
.game-stage:has([data-nest-art=separate]) .scene-egg-count{z-index:6}
.game-stage:has([data-nest-art=separate])[data-journey=rest] .farm-nest-egg,
.game-stage:has([data-nest-art=separate])[data-journey=settle] .farm-nest-egg{top:24%;height:44%;width:23%;left:calc(49% - (var(--egg-total) - 1)*7% + var(--egg-slot)*15%)}

/* A disabled feeding action remains legible; only interaction is disabled. */
.world-farm .world-feed{padding:0;color:#4b270d;display:block;text-shadow:0 1px #f5d49e}
.world-farm .world-feed:disabled{opacity:1;cursor:default;filter:drop-shadow(0 5px 3px #49321955);color:#583418}
/* Keep both the hen emblem and lettering inside the sloping front plaque. */
.world-farm .world-feed>span{position:absolute;left:37%;top:46%;width:56%;height:32%;display:flex;align-items:center;justify-content:center;font-size:4.5cqw;line-height:1.1;white-space:nowrap;font-weight:900;transform:rotate(-7deg);text-shadow:none}
.world-farm .world-feed:disabled>span{font-size:4.2cqw}
.world-farm .world-feed>svg{left:23%;top:58%;width:10.5%;height:26%;fill:#643711}

/* Rounded, bevelled cream panels and a modelled gold level star. */
.world-farm .world-farm-state{gap:3.2%;padding-inline:6.2%;bottom:2.8%}
.world-farm .world-farm-state>div{height:12cqw;min-height:44px;padding:1.6cqw 2cqw;gap:2.1cqw;border-radius:3cqw;background:linear-gradient(110deg,#fff8e9,#f4e6cc);border:1px solid #decaab;box-shadow:inset 0 2px 1px #fffdf4,0 3px 5px #3d331f3d}
.world-farm-state img,.world-farm-state .state-star{width:6.8cqw;height:7.5cqw;flex:none;object-fit:contain;filter:drop-shadow(0 1px 1px #80542233)}
.world-farm .world-farm-state b{font-size:3.1cqw;font-weight:850;line-height:1.2;white-space:nowrap}
.world-farm-state progress{height:2.35cqw;border-color:#b59d76;box-shadow:inset 0 1px 2px #7b5e3830;margin-top:1.1cqw}
.world-farm-state progress::-webkit-progress-bar{background:linear-gradient(#b8a88d,#d1c3aa)}
.world-farm-state progress::-webkit-progress-value{background:linear-gradient(#ffe292,#ffbd3e 60%,#e8a328);box-shadow:inset 0 1px #fff2bc;border:1px solid #c5831c}
.world-farm-state>div+div progress::-webkit-progress-value{background:linear-gradient(#a6dd77,#72bd46 60%,#559c34);border-color:#4b8732}
body[data-screen=farm] .bottom-nav{background:linear-gradient(105deg,#fff7e7,#f1e1c3);border-top:1px solid #fff9e9;box-shadow:0 -2px 8px #4c361d30}
body[data-screen=farm] .nav-item.active{background:linear-gradient(120deg,#ffeab3,#ffd071);border:1px solid #edc16d;box-shadow:inset 0 1px 1px #fff9d2;color:#402714}
body[data-screen=farm] .nav-item svg{filter:drop-shadow(0 1px 0 #fef0c8) drop-shadow(0 2px 1px #5a371f30)}

/* Soil contact and foreground blades seat the wooden feeder in the yard. */
.world-feed-back::after{content:'';position:absolute;left:5%;right:0;top:91%;height:14%;border-radius:50%;background:radial-gradient(ellipse,#49371f75 0,#51412748 45%,transparent 73%);filter:blur(2px);transform:rotate(-7deg);pointer-events:none;z-index:-1}
.world-farm .world-feed,.world-farm .world-feed:disabled{filter:none}
.world-farm .world-feed::after{content:'';position:absolute;left:-4%;bottom:-14%;width:108%;height:auto;aspect-ratio:1200/415;background:url('/assets/living-farm/v5/feeder-grass.webp') center/100% 100% no-repeat;transform:rotate(-7deg);mask-image:linear-gradient(90deg,transparent,#000 13%,#000 87%,transparent),linear-gradient(#000 48%,transparent 76%);mask-composite:intersect;opacity:.9;pointer-events:none;z-index:2}
.world-farm .world-feed:not(:disabled):active{transform:none;filter:brightness(1.04)}

/* Adult residents keep one complete silhouette behind the trough; its
   occlusion mask restores only the beak over the grain, never the toes. */
.hen-farm .living-hen.rig-ready > .living-rig{display:block}
.hen-farm .living-hen.rig-ready > .hen-pose{opacity:0!important}
.hen-farm .living-hen .living-feed-grains{display:none!important}
.hen-farm .feeding-head-layer:not(.adult-feed-head){display:none!important}
.hen-farm[data-adult-feeding=true] .world-scene-nest{z-index:2!important}
.hen-farm[data-adult-feeding=true] .pet-button .farm-pet{filter:none!important}
.game-stage[data-trough-ready=false]>.pet-button,.game-stage[data-trough-ready=false]>.feeding-head-layer{visibility:hidden}
.farm-shop-entry,.egg-purchase-entry{margin-top:14px}
.sheet .shop-error{margin:12px 0 10px;padding:11px 12px;color:#963b20;background:#fff0df;border:1px solid #d89466;border-radius:10px;font-size:13px;line-height:1.45}

/* The shell moves inside a planted nest. All three textures use the same
   canvas registration; the front straw stays above the shell at every angle. */
.world-farm .game-stage.incubation-stage>.pet-button:has(.collection-gold-incubation){top:58cqw;width:70cqw;height:43.75cqw;overflow:visible;animation:none!important}
.world-farm .game-stage .pet-button .collection-gold-incubation{display:block;position:relative;isolation:isolate;overflow:visible;width:100%;height:100%;filter:none;animation:none!important;transform:none!important}
.world-farm .collection-gold-incubation>img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;max-height:none;margin:0;object-fit:contain;pointer-events:none;filter:none}
.world-farm .collection-gold-incubation>.gold-nest{animation:none!important;transform:none!important;transition:none!important}
.world-farm .collection-gold-incubation>.gold-nest-back{z-index:1;filter:drop-shadow(0 3px 2px #49321940)}
.world-farm .collection-gold-incubation>.gold-shell{z-index:2;transform-origin:50% 92%;animation:gold-incubation-sway 5s ease-in-out infinite!important}
.world-farm .collection-gold-incubation>.gold-nest-front{z-index:3;clip-path:polygon(0 42%,20% 62%,34% 73%,50% 77%,66% 73%,80% 62%,100% 42%,100% 100%,0 100%)}
@keyframes gold-incubation-sway{0%,78%,100%{transform:rotate(0)}84%{transform:rotate(-1.2deg)}91%{transform:rotate(1.2deg)}}
@media(prefers-reduced-motion:reduce){.world-farm .collection-gold-incubation>.gold-shell{animation:none!important;transform:none!important}}
