@font-face{font-family:ebrimabd;src:url('/assets/fonts/ebrimabd.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap;}
/* Original exported atlases provide the icons and panel surfaces. Layout is DOM for accessibility. */
body.game-screen{margin:0;overflow:hidden;background:#688e37;font-family:Arial,sans-serif;color:#503615}.game-screen>.topbar,.game-screen .page-heading,.game-screen main>footer,.game-screen main>#help{display:none}.game-screen main{padding:0;max-width:none;margin:0}.game-screen .workspace{display:block;margin:0}.game-screen .farm-panel{position:relative;height:100dvh;border:0;border-radius:0;overflow:hidden;background:url('/assets/grass.jpg')}.game-screen .farm-panel>.panel-heading{display:none}.game-screen .scene{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;aspect-ratio:auto;border:0;border-radius:0;overflow:hidden}.game-screen .scene #farm,.game-screen .scene .plots,.game-screen .scene .facilities{left:0;width:100%;height:100%}.game-screen .scene .scene-note{display:none}.game-screen .scene-status{top:80px;bottom:auto;right:15px;font-family:Arial;font-size:12px}.game-screen .farm-toolbar{position:absolute;bottom:79px;left:50%;transform:translateX(-50%);z-index:6;min-height:0;padding:7px 14px;border-radius:12px;background:#fff7dbe8;border:2px solid #9d762d;max-width:75%;font-size:12px}.game-screen .farm-toolbar .expand{display:none}.game-screen .farm-toolbar>div{max-width:none;font-size:12px}.game-screen .placement-controls{position:absolute;bottom:136px;left:50%;transform:translateX(-50%);z-index:7;border-radius:12px;max-width:90%;padding:7px}.game-screen .placement-controls:has(button:nth-child(2)[hidden]):not(:has(button:nth-child(4):not([hidden]))){display:none}.game-screen .placement-controls>button:first-child{display:none}.game-screen .original-camera{position:absolute;top:95px;right:12px;z-index:7;padding:5px;background:#fff7dbe8;border:2px solid #9d762d;border-radius:12px;display:flex;align-items:center;gap:3px}.original-camera button{padding:0;border:0;background:transparent}.original-camera button canvas{width:28px;height:28px}.original-camera>span:last-child{display:none}.game-screen .game-wallet{position:absolute;top:10px;left:12px;z-index:5;background:#fff2bde8;border:3px solid #b77e29;border-radius:30px;padding:6px 15px;box-shadow:0 2px 3px #59451b66}.game-wallet .coin canvas{width:35px;height:35px;object-fit:contain}.game-wallet strong{font:700 22px Arial;color:#664014}.game-wallet small{font:700 9px Arial;color:#715222}.game-wallet .level-mark{background:#dfa72b;border:2px solid #fff1a1;color:#fff;text-shadow:1px 1px #82601b}.game-screen .game-session{position:absolute;z-index:5;top:10px;right:12px;max-width:410px;gap:6px;padding:8px 12px;margin:0;border:2px solid #a98138;border-radius:15px;background:#fff8deeb;font-size:11px}.game-session form{gap:5px}.game-session input{width:110px;padding:4px}.game-session button{padding:4px 7px}.game-session p{font-size:10px}.game-dock{position:absolute;z-index:8;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:6px;padding:6px 14px;background:linear-gradient(#fff1b5,#d6ac56);border:3px solid #946019;border-radius:19px;box-shadow:0 2px 0 #643b16,0 4px 8px #0004}.game-dock button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:57px;border:0;border-radius:8px;padding:2px 5px;background:transparent;color:#6d4116;font:bold 11px Arial;cursor:pointer}.game-dock button:hover,.game-dock button[aria-pressed=true]{background:#fff3b7;box-shadow:0 0 0 2px #d5a02c}.game-dock canvas{width:37px;height:40px}.game-screen .facility-hit,.game-screen .facility-hit:hover,.game-screen .facility-hit:focus-visible,.game-screen .plot,.game-screen .plot:hover,.game-screen .plot:focus-visible{background:transparent!important;outline:none!important;box-shadow:none!important;border:0!important}.game-screen .plot{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.original-dialog{position:fixed;margin:auto;padding:0;border:0;background:transparent;width:min(754px,96vw);height:min(593px,94dvh);max-width:none;max-height:none;overflow:hidden;color:#543513;font-family:Arial,sans-serif;filter:drop-shadow(0 10px 15px #0005)}.original-dialog::backdrop{background:#15290066}.original-panel-art{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1}.original-dialog-title{position:absolute;top:15px;left:80px;right:80px;margin:0;text-align:center;font:bold 24px Arial;color:#fff6cc;text-shadow:0 2px #623113}.original-close{position:absolute;right:13px;top:12px;z-index:3;padding:0;background:none;border:0;cursor:pointer}.original-close canvas{display:block;width:37px;height:37px}.original-dialog .original-dialog-content{position:absolute;inset:82px 26px 44px;padding:0;margin:0;border:0;border-radius:0;background:none;overflow:auto;max-height:none;width:auto}.original-dialog .section-label,.original-dialog .seed-panel>h2,.original-dialog .seed-panel>p,.original-dialog .tip,.original-dialog .save-status,.original-dialog .barn-heading,.original-dialog .rewards-section>.barn-heading{display:none}.original-dialog .shop-tabs,.original-dialog .barn-tabs{margin:0 0 10px;padding:0 0 6px;border:0;display:flex;gap:4px;flex-wrap:wrap}.original-dialog .shop-tabs button,.original-dialog .barn-tabs button{background:#a76424;border:1px solid #df9d48;color:#ffefbc;font:bold 12px Arial;padding:8px 14px;border-radius:7px}.original-dialog .shop-tabs button.active,.original-dialog .barn-tabs button.active{background:#ffe19b;color:#703f14}.original-dialog .seed-list,.original-dialog .producer-shop{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-height:none;overflow:visible}.original-dialog .seed-card,.original-dialog .producer-shop-card{min-height:158px;padding:7px;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;gap:3px;background:#fff2ce;border:3px solid #d29a52;border-radius:10px;box-shadow:inset 0 0 0 1px #fff8e4;color:#5d3a16}.original-dialog .seed-picture,.original-dialog .producer-picture{display:block;width:75px;height:66px;margin:0;object-fit:contain}.original-dialog .seed-name,.original-dialog .producer-shop-card strong{font:bold 13px Arial;margin:0 0 4px;color:#59320e}.original-dialog .seed-detail{font:10px Arial;color:#8b5924}.original-dialog .seed-price{font:bold 12px Arial;color:#7b4b13;margin:5px 0}.original-dialog .selection-dot{display:none}.original-dialog .seed-card:disabled,.original-dialog .producer-shop-card:disabled{filter:grayscale(.5);opacity:.7}.original-pagination{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:25px;color:#ffedb5;font:bold 14px Arial}.original-pagination button{background:#ffe8a2;border:2px solid #a8702c;border-radius:50%;width:30px;height:30px;color:#875315;cursor:pointer}.original-pagination button:disabled{opacity:.4}.barn-dialog{width:min(761px,96vw);height:min(595px,94dvh)}.barn-dialog .original-dialog-content{top:90px}.barn-dialog .barn-search{display:flex;gap:8px;margin:0 0 9px;color:#fff1cc}.barn-dialog .barn-search #barn-results{display:none}.barn-dialog .inventory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.barn-dialog .barn-item{display:flex;flex-wrap:wrap;gap:3px;justify-content:center;text-align:center;background:#fff0c9;border:2px solid #bb8540;border-radius:7px;padding:4px;min-height:94px}.barn-dialog .barn-item canvas{width:43px;height:40px}.barn-dialog .barn-item h3{font:bold 12px Arial;white-space:normal}.barn-dialog .barn-item p{font:11px Arial}.barn-dialog .barn-item button{width:100%;padding:4px;background:#8abd39;border:1px solid #526d25;color:#fff;font:bold 11px Arial}.recipes-dialog{width:min(900px,96vw);height:min(510px,94dvh)}.recipes-dialog .original-dialog-title,.details-dialog .original-dialog-title,.gifts-dialog .original-dialog-title{color:#7d451b;text-shadow:0 1px #fff}.recipes-dialog .original-dialog-content{inset:62px 28px 48px}.recipe-choices>input{padding:7px;border:1px solid #bb9252;border-radius:5px;width:240px;margin-bottom:10px}.recipe-choice-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px}.recipe-choice{position:relative;min-height:85px;border:0;background:transparent;padding:3px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#623f1d}.recipe-tile-art{position:absolute;inset:0;width:100%;height:100%;z-index:-1}.recipe-choice:disabled{opacity:.6;cursor:default}.recipe-pair{display:flex;align-items:center}.recipe-pair canvas{width:36px;height:33px}.recipe-pair canvas+canvas{width:25px;height:25px}.recipe-choice>span:not(.recipe-pair){font:bold 9px Arial}.recipe-choice small{font:9px Arial}.recipes-dialog .original-pagination{color:#7d451b}.details-dialog .original-dialog-content,.gifts-dialog .original-dialog-content{top:65px}.details-dialog .producer-grid{grid-template-columns:1fr}.details-dialog .producer-card.unowned{display:none}.details-dialog .production-group-title{margin:8px 0}.game-screen .original-dialog .producer-card>.producer-picture{width:85px;height:85px}
@media(max-width:900px){.game-screen .game-session{top:72px;right:8px;max-width:280px}.game-session p,.game-session form label{display:none}.game-screen .original-camera{top:160px}.original-dialog .seed-card{min-height:140px}.original-dialog .seed-list,.original-dialog .producer-shop{grid-template-columns:repeat(4,minmax(0,1fr))}.recipe-choice-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.game-screen .game-wallet{transform:scale(.85);transform-origin:top left}.game-screen .farm-toolbar{font-size:10px;max-width:90%;width:max-content}.game-dock{gap:2px;padding:4px 6px}.game-dock button{min-width:45px}}

.sale-dialog{width:min(580px,95vw);height:330px}.sale-dialog .original-dialog-title{color:#7d451b}.sale-dialog .original-dialog-content{inset:65px 36px 36px;color:#623f1d;font:16px Arial}.sale-dialog p{margin:15px 0}.sale-dialog button:not(.original-close){padding:10px 16px;margin:12px 10px 0 0;cursor:pointer}

.sale-dialog .original-dialog-content p{font:16px/1.5 Arial;color:#442b14;text-shadow:0 1px #fff}.sale-dialog button:not(.original-close){position:relative;background:transparent;border:0;min-width:145px;color:white;font:bold 16px Arial;text-shadow:0 1px #633}.sale-dialog button:not(.original-close)>canvas{position:absolute;inset:0;width:100%;height:100%}.sale-dialog button:not(.original-close)>span{position:relative}.sale-dialog button:disabled{opacity:.6}

.warehouse-dialog{width:min(830px,96vw);height:min(680px,94dvh)}.warehouse-dialog .original-dialog-content{inset:65px 35px 30px;overflow:auto;color:#442b14}.warehouseConfirm-dialog{width:min(600px,95vw);height:350px}.warehouseConfirm-dialog .original-dialog-content{inset:65px 35px 30px}.warehouse-dialog .original-dialog-title,.warehouseConfirm-dialog .original-dialog-title{color:#7d451b}.warehouse-dialog p,.warehouseConfirm-dialog p{font:15px/1.4 Arial;color:#442b14}.warehouse-dialog button:not(.original-close),.warehouseConfirm-dialog button:not(.original-close){position:relative;background:transparent;border:0;padding:8px 14px;margin:5px;cursor:pointer;color:white;font:bold 13px Arial;text-shadow:0 1px #543}.warehouse-dialog button:not(.original-close)>canvas,.warehouseConfirm-dialog button:not(.original-close)>canvas{position:absolute;inset:0;width:100%;height:100%}.warehouse-dialog button:not(.original-close)>span,.warehouseConfirm-dialog button:not(.original-close)>span{position:relative}.warehouse-dialog button:disabled{opacity:.45;cursor:default}.warehouse-item{padding:8px;margin:8px 0;background:#fff0c9;border:2px solid #bc904c;border-radius:8px}

/* The recovered game UI is assembled before the first playable frame. */
body.booting{margin:0;overflow:hidden;background:#688e37 url('/assets/grass.jpg');}
body.booting>header,body.booting>main{visibility:hidden;}
.startup-screen{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;background:#688e37 url('/assets/grass.jpg');padding:24px;box-sizing:border-box;font-family:Arial,sans-serif;}
.startup-screen[hidden]{display:none;}
.startup-card{max-width:520px;text-align:center;color:#503615;background:#fff4d3;border:3px solid #ad7c32;border-radius:20px;padding:30px 38px;box-shadow:0 4px 12px #354c2840;}
.startup-card h1{margin:0 0 14px;font:700 32px Arial,sans-serif;}
.startup-card p{color:inherit;font:16px/1.5 Arial,sans-serif;margin:0;overflow-wrap:anywhere;}
.startup-card button{margin-top:20px;padding:10px 22px;border:2px solid #946019;border-radius:10px;background:#ffdf86;color:#503615;font:700 15px Arial,sans-serif;cursor:pointer;}
.startup-card noscript{display:block;margin-top:16px;}

/* Original State4Button artwork, rather than extra CSS selection boxes. */
.original-button-art{position:relative;display:block;flex:none;width:37px;height:40px;}
.original-camera .original-button-art{width:22px;height:22px;}
.game-dock .original-button-art>canvas,.original-camera .original-button-art>canvas,.original-close .original-button-art>canvas,.original-pagination .original-button-art>canvas{position:absolute;inset:0;width:100%;height:100%;display:none;}
.original-art-button:not(:hover):not(:focus-visible):not(:active):not([aria-pressed=true])>.original-button-art>canvas[data-state=normal],
.original-art-button:disabled>.original-button-art>canvas[data-state=normal]{display:block;}
.original-art-button:not(:disabled):not(:active):not([aria-pressed=true]):is(:hover,:focus-visible)>.original-button-art>canvas[data-state=hover]{display:block;}
.original-art-button:not(:disabled):is(:active,[aria-pressed=true])>.original-button-art>canvas[data-state=down]{display:block;}
.game-dock button:hover,.game-dock button[aria-pressed=true]{background:transparent;box-shadow:none;}
.original-art-button:focus-visible{outline:none;}

.game-screen .original-camera{background:transparent;border:0;border-radius:0;padding:3px;gap:3px;color:#fff;isolation:isolate;}
.original-camera>.original-camera-art{position:absolute;inset:0;z-index:-1;width:100%;height:100%;pointer-events:none;}
.original-camera button{color:inherit;}

.original-close .original-button-art{width:37px;height:37px;}

/* ShopItemSkin uses the common atlas box, 158 × 199, at y=1. */
.store-dialog .seed-card,.store-dialog .producer-shop-card{
 min-height:200px;border:0;border-radius:0;box-shadow:none;
 background:var(--original-shop-card) center 1px / 100% calc(100% - 1px) no-repeat;
}

/* ShopViewSkin listTab1: ShopTabBtn1Skin, zero gap, bottom-aligned artwork. */
.store-dialog .shop-tabs{gap:0;padding:0;margin:0;justify-content:center;}
.store-dialog .shop-tabs button{
 width:103px;height:51px;padding:17px 3px 8px;flex:0 1 103px;
 background:var(--original-shop-tab-normal) center bottom / 100% 44px no-repeat;
 border:0;border-radius:0;color:white;font:bold 17px Arial;
 -webkit-text-stroke:2px #682004;paint-order:stroke fill;text-shadow:none;
}
.store-dialog .shop-tabs button.active,.store-dialog .shop-tabs button:active{
 background:var(--original-shop-tab-selected) center bottom / 100% 51px no-repeat;color:white;
}
.store-dialog .shop-tabs button:focus-visible{outline:2px solid #fff6c3;outline-offset:-3px;}

.original-pagination button{width:27px;height:36px;border:0;padding:0;border-radius:0;background:transparent;}
.original-pagination .original-button-art{width:27px;height:36px;}
.original-pagination button[data-direction="-1"] .original-button-art{transform:scaleX(-1);}
/* ShopViewSkin: centered 4 × 158px grid with no tile gaps, side arrows. */
.store-dialog .original-dialog-content{left:max(48px,calc((100% - 632px)/2));right:max(48px,calc((100% - 632px)/2));}
.store-dialog .seed-list,.store-dialog .producer-shop{gap:0;}
.store-dialog .original-pagination{inset:0;display:block;pointer-events:none;}
.store-dialog .original-pagination>span{position:absolute;bottom:12px;left:0;right:0;text-align:center;font-size:17px;color:white;-webkit-text-stroke:2px #592612;paint-order:stroke fill;}
.store-dialog .original-pagination button{position:absolute;top:53.2%;width:47px;height:63px;pointer-events:auto;}
.store-dialog .original-pagination button[data-direction="-1"]{left:1px;}
.store-dialog .original-pagination button[data-direction="1"]{right:3px;}
.store-dialog .original-pagination .original-button-art{width:47px;height:63px;}

/* ShopItemSkin: name at y=10, 75px picture centered at y=66.5,
   information at y=111, action/cost area at y=162. */
.store-dialog .seed-card,.store-dialog .producer-shop-card{position:relative;height:200px;padding:0;}
.store-dialog .seed-name,.store-dialog .producer-shop-card strong,.store-dialog .shop-animal-name{
 position:absolute;top:10px;left:50%;transform:translateX(-50%);width:min(129px,90%);
 margin:0;max-height:30px;overflow:hidden;font:bold 13px/14px Arial;text-align:center;
}
.store-dialog .seed-picture,.store-dialog .producer-picture{
 position:absolute;top:29px;left:50%;transform:translateX(-50%);width:75px;height:75px;margin:0;
}
.store-dialog .seed-detail,.store-dialog .shop-state{
 position:absolute;top:111px;left:6px;right:6px;height:36px;margin:0;
 font:11.5px/13px Arial;color:#9a5822;text-align:center;
}
.store-dialog .seed-price,.store-dialog .producer-shop-card small{
 position:absolute;top:162px;left:6px;right:6px;margin:0;
 font:bold 11px/12px Arial;color:#945521;text-align:center;
}

.store-dialog .shop-requirement{position:absolute;left:6px;top:32px;width:30px;height:26px;background:center/contain no-repeat;}
.store-dialog .shop-requirement[data-requirement=build]{background-image:var(--original-shop-build);}
.store-dialog .shop-requirement[data-requirement=invite]{background-image:var(--original-shop-invite);}

.store-dialog .shop-bird-house{position:absolute;left:9px;top:87.5px;width:25px;height:25px;background:var(--original-shop-bird-house) center/contain no-repeat;}
/* ShopItem's DynamicLabel is a single clipped line; ShopItem does not
   opt into DynamicLabel.selfRun hover scrolling. Keep short names centered
   and align overflowing names to the start of the 129px mask. */
.store-dialog .seed-name,.store-dialog .producer-shop-card strong,.store-dialog .shop-animal-name{
 display:flex;justify-content:safe center;white-space:nowrap;height:16px;max-height:16px;
 color:#945521;line-height:16px;
}

.store-dialog .shop-water-tag{position:absolute;left:0;top:0;width:16px;height:25px;background:var(--original-shop-water-tag) center/contain no-repeat;}

/* ShopItem resets card filters; level locks use imgWarn and red lblInfo2. */
.store-dialog .seed-card:disabled,.store-dialog .producer-shop-card:disabled{filter:none;opacity:1;}
.store-dialog .level-locked::after{
 content:'Locked';position:absolute;top:110.5px;left:50%;transform:translateX(-50%);
 width:72px;height:16px;background:var(--original-shop-locked) center/100% 100% no-repeat;
 color:white;font:13px/15px Arial;text-align:center;
}
.store-dialog .level-locked .seed-detail,.store-dialog .level-locked .shop-state{top:129px;height:26px;color:#f00;font-size:12px;}

.store-dialog .shop-pollination{position:absolute;left:6px;top:32px;width:21px;height:21px;background:var(--original-shop-pollination) center/contain no-repeat;}

.store-dialog .producer-shop-card{cursor:default;}
.store-dialog .producer-shop-card small{top:147px;}
.store-dialog .shop-buy{
 position:absolute;left:50%;top:162px;transform:translateX(-50%);box-sizing:border-box;
 width:75px;height:30px;padding:0;border-style:solid;border-width:8px 10px 10px;
 border-image:var(--original-shop-buy-normal) 8 10 10 10 fill / 8px 10px 10px stretch;
 background:transparent;border-radius:0;box-shadow:none;color:white;font:bold 14px/14px Arial;
 -webkit-text-stroke:1.6px #511050;paint-order:stroke fill;cursor:pointer;
}
.store-dialog .shop-buy:is(:hover,:focus-visible):not(:disabled){border-image-source:var(--original-shop-buy-hover);}
.store-dialog .shop-buy:active:not(:disabled){border-image-source:var(--original-shop-buy-normal);}
.store-dialog .shop-buy:disabled{border-image-source:var(--original-shop-buy-disabled);-webkit-text-stroke-color:#4b4b4b;cursor:default;opacity:1;}

.store-dialog .shop-buy>span{position:absolute;inset:-8px -10px -7px;display:flex;align-items:center;justify-content:center;}

/* ShopItem.updateLblInfo3 selects BtnOperSkin for coin purchases.
   Unlock retains the BtnCostSkin declared by ShopItemSkin. */
.store-dialog .shop-buy:not([data-unlock="true"]){
 border-width:8px 11px 10px 12px;
 border-image:var(--original-shop-coin-normal) 8 11 10 12 fill / 8px 11px 10px 12px stretch;
 -webkit-text-stroke-color:#055905;
}
.store-dialog .shop-buy:not([data-unlock="true"]):is(:hover,:focus-visible):not(:disabled){border-image-source:var(--original-shop-coin-hover);}
.store-dialog .shop-buy:not([data-unlock="true"]):active:not(:disabled){border-image-source:var(--original-shop-coin-normal);}
.store-dialog .shop-buy:not([data-unlock="true"]):disabled{border-image-source:var(--original-shop-buy-disabled);-webkit-text-stroke-color:#4b4b4b;}
.store-dialog .shop-buy:not([data-unlock="true"])>span{inset:-8px -11px -7px -12px;}

.store-dialog .seed-card{cursor:default;}
.store-dialog .seed-card .seed-price{top:147px;}
.store-dialog .seed-card .seed-price{font:14px/16px Arial;color:#9a5822;}
.store-dialog .seed-card:not(.level-locked) .seed-detail{left:10px;right:10px;height:16px;font:12px/16px Arial;white-space:nowrap;overflow:hidden;}
.store-dialog .seed-sale{position:absolute;top:129px;left:14px;right:14px;height:12px;font:12px/12px Arial;color:#945521;text-align:center;white-space:nowrap;overflow:hidden;}
.store-dialog .producer-shop-card small{font:14px/16px Arial;color:#9a5822;}
.store-dialog .producer-shop-card:not(.level-locked) .shop-state{left:10px;right:10px;height:16px;font:12px/16px Arial;white-space:nowrap;overflow:hidden;}
.store-dialog .shop-sale{position:absolute;top:129px;left:14px;right:14px;height:12px;font:12px/12px Arial;color:#945521;text-align:center;white-space:nowrap;overflow:hidden;}
.store-dialog .shop-faster-time{color:#f0f;font-weight:bold;}
.store-dialog .seed-card .seed-price,.store-dialog .producer-shop-card small{left:10px;right:10px;white-space:nowrap;overflow:hidden;}
.store-dialog .producer-shop-card:not(.level-locked) .shop-state.shop-multiline{left:6px;right:6px;height:36px;font:11.5px/12.5px Arial;white-space:normal;overflow:hidden;}

/* SelectMaterialItemSkin: the outline surrounds the ingredient, not the cell. */
.recipe-choice-grid{grid-template-columns:repeat(10,76px);gap:0 4px;justify-content:center;}
.recipe-choice{width:76px;height:90px;min-height:90px;padding:0;display:block;}
.recipe-choice:disabled{opacity:1;}
.recipe-choice .recipe-tile-art{inset:auto;z-index:0;pointer-events:none;}
.recipe-choice .recipe-material-icon{position:absolute;left:20.5px;top:20px;width:35px;height:35px;pointer-events:none;}
.recipe-choice .recipe-barn-icon{position:absolute;left:7px;top:68px;width:20px;height:17px;pointer-events:none;}
.recipe-choice>span.recipe-material-quantity{position:absolute;left:32px;top:69px;width:40px;height:16px;text-align:left;font:bold 16px/16px Arial;color:#603a1c;-webkit-text-stroke:2px white;paint-order:stroke fill;}
@media(max-width:850px){.recipe-choice-grid{grid-template-columns:repeat(auto-fit,76px);}}

/* Single-input SelectMaterialView uses a scale-nine panel and side arrows. */
.original-single-selector::backdrop{background:#0008;}
.original-single-selector>.original-panel-art{display:none;}
.original-single-selector::before{content:'';position:absolute;inset:0;pointer-events:none;border-style:solid;border-width:38px 60px;border-image:var(--original-selector-panel) 38 60 fill / 38px 60px stretch;z-index:-1;}
.original-single-selector .original-dialog-title{top:40px;font:bold 19px Arial;color:#523517;text-shadow:none;}
.original-single-selector .original-close{top:8px;right:10px;}
.original-single-selector .original-dialog-content{inset:0;overflow:auto;}
.original-single-selector .recipe-choices>input{position:absolute;left:10px;top:8px;margin:0;}
.original-single-selector .recipe-choice-grid{position:absolute;top:70px;left:50%;transform:translateX(-50%);grid-template-columns:repeat(var(--selector-columns),76px);}
.original-single-selector .original-pagination{inset:0;pointer-events:none;}
.original-single-selector .original-pagination>span{display:none;}
.original-single-selector .original-pagination button{position:absolute;top:50%;transform:translateY(-50%);pointer-events:auto;opacity:1;}
.original-single-selector .original-pagination button[data-direction='-1']{left:10px;}
.original-single-selector .original-pagination button[data-direction='1']{right:15px;transform:translateY(-50%) scaleX(-1);}
.recipes-dialog .original-pagination button:disabled>.original-button-art>canvas{display:none;}
.recipes-dialog .original-pagination button:disabled>.original-button-art>canvas[data-state=disabled]{display:block;}
@media(max-width:850px){.original-single-selector .recipe-choice-grid{position:relative;left:auto;transform:none;grid-template-columns:repeat(auto-fit,76px);margin:0 35px;}}

.original-single-selector .original-pagination .original-button-art{width:31px;height:68px;transform:none;}
.original-single-selector .original-pagination button{width:31px;height:68px;padding:0;}
.recipes-dialog .original-pagination button[data-direction='-1'] .original-button-art{transform:none;}
.recipes-dialog:not(.original-single-selector) .original-pagination button[data-direction='1'] .original-button-art{transform:scaleX(-1);}

.has-fixed-materials .original-dialog-title{top:150px;}
.has-fixed-materials .recipe-choice-grid{top:180px;}
.recipe-fixed-label{position:absolute;top:40px;left:25px;right:25px;margin:0;text-align:center;font:bold 19px Arial;color:#523517;}
.recipe-fixed{position:absolute;top:55px;left:50%;transform:translateX(-50%);display:flex;gap:4px;}
.recipe-fixed-item{position:relative;cursor:default;}

/* SearchSkin: original 127x31 background, 84px editable field, 20px icon. */
.original-recipe-search{position:absolute;left:10px;top:8px;width:127px;height:31px;cursor:text;}
.original-recipe-search canvas{position:absolute;pointer-events:none;}
.original-recipe-search .recipe-search-background{inset:0;width:127px;height:31px;}
.original-recipe-search .recipe-search-icon{left:101px;top:5px;width:20px;height:20px;}
.original-recipe-search input{position:absolute;left:8px;top:1.5px;width:84px;height:25.5px;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;outline:none;color:#653232;font:bold 13px Arial;appearance:none;}
.original-recipe-search input::placeholder{color:#653232;opacity:1;}
.original-recipe-search input::-webkit-search-cancel-button{display:none;}

.original-material-tooltip{position:fixed;inset:auto;margin:0;padding:6px 8px;border:0;background:transparent;color:#f6dfbc;font:bold 15px/18px ebrimabd,sans-serif;text-align:center;white-space:pre;max-width:100vw;overflow:hidden;pointer-events:none;}
.original-material-tooltip::before{content:'';position:absolute;inset:0;z-index:-1;border-style:solid;border-width:7px 6px 6px 7px;border-image:var(--original-material-tip) 7 6 6 7 fill / 7px 6px 6px 7px stretch;}
.original-material-tooltip::backdrop{background:transparent;pointer-events:none;}
.recipe-choice .recipe-material-icon{pointer-events:auto;}
.recipe-choice{cursor:default;}
.recipe-choice:not(.recipe-fixed-item) .recipe-material-icon{cursor:pointer;}
.original-action-progress{position:fixed;pointer-events:none;z-index:7;}

/* Original PlantTool product cursor: stage-sized, independent of map zoom. */
.original-plant-cursor{position:fixed;left:0;top:0;z-index:90;pointer-events:none;object-fit:contain;user-select:none}
.original-plant-cursor[hidden]{display:none}
/* Local instruction/placement panels are accessibility fallbacks, not original
   farm HUD artwork. Reveal placement controls when keyboard focus enters them. */
.game-screen .farm-toolbar,
.game-screen .placement-controls:not(:focus-within){
 position:absolute;left:0;top:0;bottom:auto;width:1px;height:1px;
 min-height:0;max-width:none;margin:-1px;padding:0;border:0;
 overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);
 white-space:nowrap;transform:none;
}
.game-screen .placement-controls:focus-within{
 bottom:79px;top:auto;clip:auto;clip-path:none;white-space:normal;
}

/* GameUIViewSKin ordinary farm treasury; original atlas nine-slice borders. */
.game-screen .game-wallet{left:20.5px;top:7px;display:flex;align-items:center;gap:0;width:270px;min-width:0;height:43px;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.game-wallet .original-coin-group{position:relative;width:138.5px;height:42px;flex:none}
.game-wallet .original-exp-group{position:relative;width:131px;height:43px;flex:none}
.original-coin-group::before,.original-exp-group::before{box-sizing:border-box;content:"";position:absolute;height:31px;border-style:solid;border-color:transparent;border-image-source:var(--wallet-bar);border-image-repeat:stretch}
.original-coin-group::before{left:28.5px;top:6px;width:110px;border-width:12px 33px 16px;border-image-slice:12 33 16 33 fill}
.original-exp-group::before{left:17.5px;top:8px;width:114px;border-width:11px 33px 16px;border-image-slice:11 33 16 33 fill}
.game-wallet .original-coin-icon{position:absolute;left:0;top:0;width:42px;height:42px}
.game-wallet .original-level-icon{position:absolute;left:0;top:1px;width:39px;height:40px}
.game-wallet #coins,.game-wallet #xp,.game-wallet #level{position:absolute;margin:0;padding:0;border:0;background:none;border-radius:0;display:flex;align-items:center;justify-content:center;font:16px Arial,sans-serif;letter-spacing:0;color:#5e3507;white-space:nowrap}
.game-wallet #coins{left:42px;top:9.67px;width:81px;height:21px}
.game-wallet #xp{left:38.5px;top:11px;width:84.5px;height:21.5px;paint-order:stroke fill;-webkit-text-stroke:1.6px #ffe9b4}
.game-wallet #level{left:0;top:14.66px;width:34px;height:16px;color:#764c24;text-shadow:none;paint-order:stroke fill;-webkit-text-stroke:1px white}
.game-wallet .xp-track{position:absolute;left:29.83px;top:11.97px;width:90px;height:20px;background:none;border-radius:0;overflow:visible}
.game-wallet .xp-track i{height:20px;background:none;border-style:solid;border-color:transparent;border-width:0;border-image:var(--wallet-fill) 9 16 9 11 fill / 9px 16px 9px 11px stretch;min-width:0;max-width:90px}
.game-wallet .xp-track i[style="width: 0%;"]{visibility:hidden}

/* Original GameUIBottomAreaSkin hideBar frame and GameUIOperArea tile sizes. */
.game-screen .game-dock{bottom:1px;left:calc(50% + .5px);width:429px;height:49.67px;display:flex;align-items:flex-start;justify-content:flex-start;gap:3px;margin:0;padding:8.68px 0 0 55.04px;background:none;border:0;border-radius:0;box-shadow:none;pointer-events:none}
.game-dock canvas.original-dock-background{position:absolute;left:42.65px;bottom:-.33px;width:387px;height:52px;pointer-events:none}
.game-screen .game-dock button{position:relative;z-index:1;flex:none;width:37px;min-width:37px;height:40px;margin:0;padding:0;border:0;border-radius:0;pointer-events:auto}
.game-dock button>span:not(.original-button-art){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:460px){.game-screen .game-dock{left:50%;transform:translateX(calc(-50% - 21.15px))}}
@media(max-width:390px){.game-screen .game-dock{transform:translateX(calc(-50% - 21.15px)) scale(.84);transform-origin:calc(50% + 21.15px) bottom}}

.original-recycle-menu{position:fixed;z-index:20;width:191px;height:53px;transform:translate(-50%,-100%)}
.original-recycle-menu[hidden],.original-recycle-menu button[hidden]{display:none}
.original-recycle-menu::before{content:"";position:absolute;inset:0 0 3px;box-sizing:border-box;border:solid transparent;border-width:6px 12px 11px 13px;border-image:var(--recycle-panel) 6 12 11 13 fill stretch}
.original-recycle-menu .recycle-menu-arrow{position:absolute;width:18px;height:13px;left:calc(50% - 9px);bottom:-3px}
.original-recycle-menu button{position:absolute;width:38px;height:38px;border:0;padding:0;background:none}
.original-recycle-menu .recycle-sell{left:4.5px;top:3px}.original-recycle-menu .recycle-store{left:39.5px;top:4px}
.original-recycle-menu button canvas{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
.recycle-choice [data-state=hover],.recycle-choice:is(:hover,:focus-visible) [data-state=normal]{display:none}
.recycle-choice:is(:hover,:focus-visible) [data-state=hover]{display:block}
/* World navigation is camera-driven. Offscreen accessibility targets must not
   scroll the canvas independently when the browser focuses them. */
.game-screen .scene.world-mode{overflow:clip}
/* The local summary is redundant with original object hover text. Retain it
   for assistive reading without overlaying the camera and shared-player HUD. */
.game-screen .scene .scene-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
/* TipViewSkin: plain white 20px bold text, with the cost/add outline. */
.original-floating-tips{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;overflow:visible;pointer-events:none;z-index:100000}
.original-floating-tips::backdrop{background:transparent;pointer-events:none}
.original-floating-tip{position:absolute;white-space:pre;text-align:center;font:bold 20px Arial,sans-serif;line-height:normal;color:white;-webkit-text-stroke:2px var(--tip-stroke);paint-order:stroke fill;pointer-events:none}
/* TipView reference_group HorizontalLayout: native icon dimensions, 3px gap. */
.original-reward-tip{display:flex;align-items:center;justify-content:center;gap:3px}
.original-reward-tip>canvas{flex:none}
.original-collection-banner{position:fixed;right:64px;top:46.75px;height:56px;z-index:8;pointer-events:none;font-family:Arial,sans-serif;}
.original-collection-banner[hidden]{display:none;}
.original-collection-banner::before{content:'';position:absolute;inset:0;box-sizing:border-box;border-style:solid;border-width:15px 24px;border-image-source:var(--collection-banner-art);border-image-slice:15 24 fill;border-image-repeat:stretch;}
.original-collection-banner img{position:absolute;left:12px;top:10px;width:35px;height:35px;}
.original-collection-banner span{position:absolute;left:59px;top:11.72px;height:30px;line-height:30px;white-space:nowrap;font-size:18px;font-weight:bold;color:#845014;}
/* Local multiplayer controls yield space to the recovered original banner. */
.game-screen.collection-banner-visible .game-session{top:112px;}
.game-screen.collection-banner-visible .original-camera{top:210px;}
.original-product-flight{position:fixed;inset:auto;left:0;top:0;margin:0;padding:0;border:0;background:transparent;pointer-events:none;z-index:9;transform-origin:center;}
.original-product-flight::backdrop{background:transparent;pointer-events:none;}
.original-harvest-drag{position:fixed;width:110px;height:120px;transform-origin:0 0;z-index:8;}
.original-harvest-drag[hidden]{display:none;}
.harvest-drag-activate{position:absolute;left:19px;top:0;width:72px;height:89px;margin:0;padding:0;border:0;background:url('/assets/harvest-drag/RipMouseTipPanel_normal_png.png') no-repeat;cursor:pointer;}
.harvest-drag-activate:hover,.harvest-drag-activate:focus-visible{background-image:url('/assets/harvest-drag/RipMouseTipPanel_normal_hl_png.png');}
.harvest-drag-activate img{position:absolute;left:5px;top:18px;width:54px;height:51px;pointer-events:none;}
/* Recovered BarnItemSkin: 186×111 cards, 35px goods, editable sale quantities. */
.barn-dialog #inventory{grid-template-columns:repeat(3,186px);gap:10px 15px;justify-content:center;}
.barn-dialog .original-barn-item{position:relative;width:186px;height:111px;min-height:111px;display:block;padding:0;border:0;background:var(--original-barn-card) no-repeat;background-size:100% 100%;border-radius:0;}
.barn-dialog .original-barn-item.empty{opacity:.5;}
.barn-dialog .original-barn-item h3{position:absolute;left:13px;top:11px;width:100px;height:20px;margin:0;overflow:hidden;white-space:nowrap;text-align:left;font:bold 12px/20px Arial;}
.barn-dialog .barn-goods-icon{position:absolute;left:12.5px;top:35.5px;width:35px;height:35px;object-fit:contain;}
.barn-dialog .barn-quantity{position:absolute;left:49px;top:37px;width:88px;height:29px;padding:3px 20px 1px 2px;border:0;background:var(--original-barn-quantity) no-repeat;background-size:100% 100%;font:bold 19px Arial;color:#945521;text-align:right;}
.barn-dialog .barn-owned{position:absolute;left:137px;top:41px;width:45px;height:22px;background:var(--original-barn-owned) center/100% 100%;font:13px/22px Arial;text-align:center;color:#20732f;}
.barn-dialog .barn-unit-price{position:absolute;top:69px;left:0;width:100%;font:bold 10px/12px Arial;text-align:center;color:#3a7931;}
.barn-dialog .original-barn-item button{position:absolute;min-height:0;padding:0;border:0;border-radius:0;}
.barn-dialog .original-barn-item .barn-quantity-step{left:118.5px;width:18px;height:14px;background:var(--original-barn-step) center/100% 100%;}
.barn-dialog .barn-quantity-step.up{top:38px;}.barn-dialog .barn-quantity-step.down{top:52px;transform:scaleY(-1);}
.barn-dialog .original-barn-item .barn-sell{left:60px;top:80.5px;width:67px;height:23px;background:var(--original-shop-coin-normal) center/100% 100%;color:white;text-shadow:0 1px #365b16;font:bold 14px/23px Arial;}
.barn-dialog .original-barn-item .barn-sell:hover{background-image:var(--original-shop-coin-hover);}
.barn-select-check{appearance:none;width:32.8px;height:29.6px;margin:0;cursor:pointer;background:var(--original-barn-check) center/100% 100% no-repeat;}
.barn-select-check:checked{background-image:var(--original-barn-checked),var(--original-barn-check);background-size:80% auto,100% 100%;background-position:center 15%,center;}
.barn-dialog .original-barn-item>.barn-select-check{position:absolute;left:142.65px;top:3.34px;}
.barn-selection-bar{position:absolute;bottom:9px;left:75px;right:75px;display:flex;align-items:center;gap:16px;color:#8b4832;font:14px Arial;}
.barn-selection-bar label{display:flex;align-items:center;gap:5px;white-space:nowrap;}.barn-selection-bar button{height:34px;flex:1;border:0;background:var(--original-shop-coin-normal) center/100% 100% no-repeat;color:white;font:bold 14px Arial;text-shadow:0 1px #365b16;}
.barn-dialog .original-pagination{bottom:48px;}
.barnSale-dialog{width:480px;height:360px;}.barnSale-dialog .original-dialog-content{inset:65px 35px 25px;overflow:auto;}.barnSale-dialog ul{max-height:140px;overflow:auto;}.barnSale-dialog button:not(.original-close){margin:8px;padding:8px 16px;border:0;background:var(--original-shop-coin-normal) center/100% 100%;color:white;font-weight:bold;}
/* BarnViewSkin places page arrows beside the goods, not over the last row. */
.barn-dialog .barn-search{height:20px;min-height:20px;line-height:20px;}
.barn-dialog .barn-search input{height:20px;min-height:20px;padding:1px 8px;font-size:12px;}
.barn-dialog .original-pagination{inset:0;width:100%;height:100%;transform:none;display:block;pointer-events:none;}
.barn-dialog .original-pagination button{position:absolute;top:319px;pointer-events:auto;}
.barn-dialog .original-pagination button[data-direction="-1"]{left:13px;}
.barn-dialog .original-pagination button[data-direction="1"]{right:13px;}
.barn-dialog .original-pagination>span{position:absolute;top:526px;left:50%;transform:translateX(-50%);}
.barnSale-dialog .original-dialog-content>p{color:#503615;font:16px/1.4 Arial;}

/* SelectOperViewSkin normal farm: original 483 x 309 panel, centered in 1000 x 600. */
.barnSale-dialog{width:483px;height:309px;max-width:96vw;}
.barnSale-dialog::backdrop{background:#0008;}
.barnSale-dialog .original-dialog-title{display:none;}
.barnSale-dialog .original-dialog-content{inset:0;overflow:hidden;}
.barnSale-dialog .original-close{right:-0.5px;top:0.5px;}
.barn-confirm-inner{position:absolute;left:calc(50% - 185px);top:32px;width:370px;height:189px;}
.barnSale-dialog .original-dialog-content>p{position:absolute;left:calc(50% - 170px);top:49.5px;width:340px;min-height:125px;margin:0;display:flex;flex-direction:column;justify-content:center;text-align:center;color:#995720;font:bold 18px/23px Arial;}
.barn-confirm-warning{color:#f00;}
.barnSale-dialog button.barn-confirm-ok,.barnSale-dialog button.barn-confirm-cancel{position:absolute;top:240.5px;height:47px;margin:0;padding:0;border:0;background:none;}
.barnSale-dialog button.barn-confirm-ok{left:75.5px;width:194px;}
.barnSale-dialog button.barn-confirm-cancel{left:282.5px;width:123px;}
.barn-confirm-label{position:relative;z-index:1;font:bold 21px Arial;color:#fff;text-shadow:1px 1px 1px #65421f,-1px -1px 1px #65421f;}
.barnSale-dialog .barn-confirm-ok>.original-button-art,.barnSale-dialog .barn-confirm-cancel>.original-button-art{position:absolute;inset:0;width:100%;height:100%;}
.barnSale-dialog .original-dialog-content .original-button-art>canvas{position:absolute;inset:0;width:100%;height:100%;display:none;}
.barnSale-dialog .original-art-button:not(:hover):not(:focus-visible):not(:active)>.original-button-art>canvas[data-state=normal],.barnSale-dialog .original-art-button:disabled>.original-button-art>canvas[data-state=normal]{display:block;}
.barnSale-dialog .original-art-button:not(:disabled):not(:active):is(:hover,:focus-visible)>.original-button-art>canvas[data-state=hover]{display:block;}
.barnSale-dialog .original-art-button:not(:disabled):active>.original-button-art>canvas[data-state=down]{display:block;}

/* BarnTabItemSkin: 59 x 58, bottom-aligned backing, icon y=13/center=-2. */
.barn-dialog #barn-tabs{position:absolute;left:9px;top:42.2px;display:flex;gap:5px;flex-wrap:nowrap;padding:0;margin:0;z-index:2;}
.barn-dialog #barn-tabs button{position:relative;flex:none;width:59px;height:58px;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;}
.barn-tab-background{position:absolute;bottom:0;left:0;}
.barn-tab-background.selected{display:none;}
.barn-dialog #barn-tabs button:is(.active,:active) .barn-tab-background.normal{display:none;}
.barn-dialog #barn-tabs button:is(.active,:active) .barn-tab-background.selected{display:block;}
.barn-tab-icon{position:absolute;top:13px;left:calc(50% - 2px);transform:translateX(-50%);}
.barn-dialog .original-dialog-content{top:116.5px;}

.barn-dialog>.barn-search{position:absolute;right:26px;top:77px;width:300px;display:flex;gap:5px;align-items:center;color:#fff;}
.barn-dialog>.barn-search input{width:215px;min-width:0;}
.barn-dialog>.barn-search label{white-space:nowrap;font-size:11px;}
.barn-dialog .original-dialog-content{top:141.5px;}
.barn-dialog.has-building-tabs .original-dialog-content{top:164.5px;}
#barn-building-tabs{position:absolute;top:115.5px;left:30.5px;width:693px;height:44px;display:flex;gap:5px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;}
#barn-building-tabs[hidden]{display:none;}
#barn-building-tabs button{position:relative;flex:0 0 54px;width:54px;height:44px;border:0;padding:0;background:none;}
.barn-subtab-background{position:absolute;top:0;left:0;}
.barn-subtab-background.selected{display:none;}
#barn-building-tabs button:is(.active,:active) .normal{display:none;}
#barn-building-tabs button:is(.active,:active) .selected{display:block;}
.barn-subtab-icon{position:absolute;left:50%;top:calc(50% + 4px);transform:translate(-50%,-50%);}

/* Original lblTip: centered 570.67 x 350, 25px, stage center +35. */
#barn-empty-message{position:absolute;left:calc(50% - 285.335px);top:156.5px;width:570.67px;height:350px;margin:0;display:block;text-align:center;font:25px Arial;color:#fff;pointer-events:none;}
#barn-empty-message[hidden]{display:none;}

.barn-subtab-arrow{position:absolute;top:119.5px;margin:0;padding:0;border:0;background:none;transform-origin:top left;transform:scale(.6);z-index:3;}
.barn-subtab-arrow.previous{left:5.44px;}
.barn-subtab-arrow.next{left:744.65px;top:119.12px;transform:scale(-.6,.6);}
.barn-subtab-arrow canvas{display:block;}
.barn-subtab-arrow[hidden]{display:none;}

.barn-sort{position:absolute;left:408.68px;top:53.5px;width:197px;z-index:5;color:white;font:16px Arial;}
.barn-sort>button{width:197px;min-height:26px;border:0;background:var(--barn-sort-arrow) right 8px center/no-repeat,var(--barn-sort-button) center/100% 100%;color:inherit;font:inherit;padding:4px 25px 4px 8px;white-space:pre-line;line-height:17px;}
.barn-sort-menu,.barn-sort-children{position:absolute;top:42px;left:0;width:160px;padding:10px;background:var(--barn-sort-panel) center/100% 100%;}
.barn-sort-children{left:165px;width:140px;}
.barn-sort-menu button,.barn-sort-children button{display:block;width:100%;height:30px;padding:0 3px;border:0;background:none;text-align:left;white-space:nowrap;color:white;font:14px Arial;}
.barn-sort-menu button:is(:hover,:focus-visible),.barn-sort-children button:is(:hover,:focus-visible){background:var(--barn-sort-selected) center/100% 100%;}
.barn-sort [hidden]{display:none;}
.barn-sort>button{border-style:solid;border-width:5px 9px 7px 7px;border-image:var(--barn-sort-button) 5 9 7 7 fill stretch;background:var(--barn-sort-arrow) right center/no-repeat;padding:0 18px 0 0;}
.barn-sort-menu,.barn-sort-children{background:none;border-style:solid;border-width:10px 13px 13px 11px;border-image:var(--barn-sort-panel) 10 13 13 11 fill stretch;padding:0;}
.barn-sort-menu button,.barn-sort-children button{color:#0e4e81;}
.barn-sort-menu button:is(:hover,:focus-visible),.barn-sort-children button:is(:hover,:focus-visible){background:none;border-style:solid;border-width:2px 4px 2px 3px;border-image:var(--barn-sort-selected) 2 4 2 3 fill stretch;padding:0;}
.barn-dialog>.barn-search{left:614.34px;right:auto;top:52.7px;width:114px;height:26px;}
.barn-dialog>.barn-search label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);}
.barn-dialog>.barn-search input{width:114px;height:26px;}
.barn-sort>button{position:relative;background:none;}
.barn-sort>button::after{content:"";position:absolute;right:0;top:calc(50% - 5.5px);width:17px;height:11px;background:var(--barn-sort-arrow) center/no-repeat;}
.barn-sort>button[aria-expanded=true]::after{transform:scaleY(-1);}
/* Recovered SearchSkin: unchanged atlas art and original input geometry. */
.barn-dialog>.barn-search{display:block;height:28px;min-height:28px;}
.barn-dialog>.barn-search .barn-search-background{position:absolute;left:0;top:0;pointer-events:none;}
.barn-dialog>.barn-search .barn-search-icon{position:absolute;left:101px;top:5px;pointer-events:none;}
.barn-dialog>.barn-search input{position:absolute;left:8px;top:1.5px;width:84px;height:25.5px;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#653232;font:bold 13px Arial;appearance:none;}
.barn-dialog>.barn-search input::placeholder{color:#653232;opacity:1;}
.barn-dialog>.barn-search input::-webkit-search-cancel-button{display:none;}
.barn-dialog>.barn-search{width:127px;height:31px;}
.barn-dialog>.barn-search .barn-search-background{width:127px;height:31px;}
.barn-dialog>.barn-search .barn-search-icon{width:20px;height:20px;}

/* BarnViewSkin: centered 761×595 art within the original 1000×600 group.
   Roof balance uses _Image2, coinImg and lblCoins; there is no title label. */
.barn-dialog .original-dialog-title{display:none;}
.barn-balance-backing{position:absolute;left:calc(50% - 270.34px);top:17.16px;width:99px;height:31px;pointer-events:none;}
.barn-balance-icon{position:absolute;left:calc(50% - 300.84px);top:12.16px;width:42px;height:42px;pointer-events:none;}
.barn-balance{position:absolute;left:calc(50% - 260.84px);top:21.83px;width:87px;height:20px;color:#845014;font:16px/20px Arial;text-align:left;white-space:nowrap;}

/* ShopViewSkin coin balance in its centered 754×593 panel. RC purchases use coins locally. */
.store-dialog .original-dialog-title{display:none;}
.store-balance-backing{position:absolute;left:calc(50% - 310.33px);top:14.83px;width:99px;height:31px;pointer-events:none;}
.store-balance-icon{position:absolute;left:calc(50% - 340.83px);top:9.83px;width:42px;height:42px;pointer-events:none;}
.store-balance{position:absolute;left:calc(50% - 300.83px);top:19.5px;width:81px;height:20px;color:#845014;font:16px/20px Arial;text-align:left;white-space:nowrap;}

/* Original ShopViewSkin Search at (663.34,17.67), SearchSkin 127×31. */
.original-store-search{position:absolute;left:calc(50% + 163.34px);top:14.17px;width:127px;height:31px;}
.store-search-background{position:absolute;inset:0;width:127px;height:31px;pointer-events:none;}
.store-search-icon{position:absolute;left:101px;top:5px;width:20px;height:20px;pointer-events:none;}
.original-store-search input{position:absolute;left:8px;top:1.5px;width:84px;height:25.5px;padding:0;border:0;outline:none;background:transparent;color:#653232;font:bold 13px Arial;}
.store-card-lists.searching{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;}
.store-card-lists.searching>#seed-list,.store-card-lists.searching>#producer-shop{display:contents!important;}

/* Original AchievementRewardViewSkin: 1000 × 600 centered design surface. */
.achievement-reward-dialog{border:0;padding:0;background:transparent;width:100vw;height:100vh;max-width:none;max-height:none;margin:0;overflow:hidden}
.achievement-reward-dialog::backdrop{background:rgba(0,0,0,.5)}
.achievement-reward-stage{position:absolute;width:1000px;height:600px;left:50%;top:50%;margin-left:-500px;margin-top:-300px;transform-origin:center center;font-family:Arial,sans-serif}
.achievement-reward-title{width:1000px;margin:0;text-align:center;font-size:33px;font-weight:bold;color:#fffe00;-webkit-text-stroke:2.6px #8e1717;paint-order:stroke fill;line-height:1.2}
.achievement-reward-description{width:1000px;margin:0;text-align:center;font-size:14.5px;color:#663300;line-height:1.2}
.achievement-reward-medals{display:flex;gap:6px}
.achievement-reward-items{width:1000px;display:flex;justify-content:center}
.achievement-reward-item{position:relative;width:125px;height:147px}
.achievement-reward-item-icon{position:absolute;width:75px;height:75px;object-fit:contain;left:25px;top:20px}
.achievement-reward-quantity{position:absolute;top:110px;left:0;width:126px;text-align:center;font-size:24px;font-weight:bold;color:#333}
.achievement-reward-dialog button{border:0;padding:0;background:none}

.achievement-reward-dialog .original-button-art>canvas{position:absolute;inset:0;width:100%;height:100%;display:none}
.achievement-reward-title,.achievement-reward-description{font-family:Arial,sans-serif}

/* Original ShopItemSkin reverse side, 158x200 coordinate surface. */
.store-dialog .store-card-flip{position:absolute;left:calc(50% - 47px);top:29px;width:90px;height:100px;padding:0;border:0;background:transparent;cursor:pointer;z-index:2;}
.store-dialog .store-card-flip canvas{position:absolute;left:87px;top:54px;width:24px;height:24px;pointer-events:none;}
.store-dialog .store-card-back{position:absolute;width:158px;height:200px;top:0;left:50%;transform:translateX(-50%);z-index:3;}
.store-dialog .store-card-back-background{position:absolute;inset:0;padding:0;border:0;background:transparent;cursor:pointer;}
.store-dialog .store-card-back-background canvas{display:block;width:158px;height:199px;}
.store-dialog .store-card-back-title{position:absolute;left:15px;top:15px;width:129px;overflow:hidden;white-space:nowrap;font:bold 13px Arial;pointer-events:none;}
.store-dialog .store-card-stock-icon{position:absolute;left:11px;top:52px;pointer-events:none;}
.store-dialog .store-card-owned,.store-dialog .store-card-progress{position:absolute;left:54px;top:62px;font:bold 16px Arial;color:#653232;pointer-events:none;}
.store-dialog .store-card-progress{top:108px;}
.store-dialog .store-card-achievement-icon{position:absolute;left:28.5px;top:95px;transform:translateX(-50%);pointer-events:none;}
.store-dialog .store-card-back .store-card-buy{position:absolute;left:41.5px;top:162px;width:75px;height:30px;transform:none;}
.store-dialog .store-card-favourite{position:absolute;top:153px;padding:0;border:0;background:transparent;cursor:pointer;}
.store-dialog .store-card-favourite canvas{display:block;}
.store-dialog .store-card-reversed{background:none;}
.store-dialog .store-card-reversed>:not(.store-card-back){visibility:hidden;}
.store-dialog .store-card-flip[hidden],.store-dialog .store-card-back[hidden]{display:none;}

/* ShopDropDownListSkin: original green header and cream menu, 23px rows. */
.store-sort{padding-bottom:18px;position:absolute;left:calc(50% - 62.5px);top:14.68px;width:224px;z-index:8;font:14px Arial;}
.store-sort>button{box-sizing:border-box;width:224px;height:30px;border-style:solid;border-width:9px 19px 11px 11px;border-image:var(--store-sort-button) 9 19 11 11 fill stretch;background:none;color:white;font:14px/10px Arial;white-space:nowrap;padding:0 12px 0 0;text-shadow:1px 1px #306606,-1px -1px #306606;}
.store-sort>button::after{content:'';position:absolute;right:7px;top:10px;width:17px;height:11px;background:var(--store-sort-arrow) center / auto no-repeat;}
.store-sort>button[aria-expanded=true]::after{transform:scaleY(-1);}
.store-sort-menu{position:absolute;left:0;top:48px;width:220px;box-sizing:border-box;border-style:solid;border-width:17px 17px 19px 18px;border-image:var(--store-sort-panel) 17 17 19 18 fill stretch;padding:0;}
.store-sort-menu button{display:block;width:100%;height:23px;padding:0;border:0;background:none;color:#9a5822;font:13px Arial;text-align:center;white-space:nowrap;cursor:pointer;}
.store-sort-menu button:is(:hover,:focus-visible){background:#ffc55b;}
.store-sort[hidden],.store-sort [hidden]{display:none;}
/* Keep original Store coordinates intact on smaller screens. */
.original-dialog.store-dialog{width:754px;height:593px;max-width:none;max-height:none;left:50%;top:50%;right:auto;bottom:auto;margin:0;transform:translate(-50%,-50%) scale(var(--store-scale,1));transform-origin:center;}
.store-dialog #shop-title{display:none;}
.store-dialog .seed-list{margin-bottom:0;}
/* SelectMaterialItemSkin groupAchi: output achievement, independent of stock. */
.original-single-selector .recipe-achievement{position:absolute;left:52px;top:0;width:17px;height:24px;z-index:2;}
.original-single-selector .recipe-achievement canvas{display:block;}
.live-cursors{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:10000;}
.live-cursor{position:absolute;pointer-events:none;color:var(--cursor-color);transition:left 100ms linear,top 100ms linear;filter:drop-shadow(0 1px 1px #fff);}
.live-cursor-arrow{position:absolute;left:-3px;top:-6px;font:25px Arial;transform:rotate(-125deg);}
.live-cursor-name{position:absolute;left:12px;top:17px;padding:3px 7px;border-radius:8px;background:var(--cursor-color);color:white;font:bold 12px Arial;white-space:nowrap;}
.live-cursor.pressed::before{content:'';position:absolute;left:-10px;top:-10px;width:20px;height:20px;border:2px solid var(--cursor-color);border-radius:50%;}

#startup-progress{display:block;width:100%;height:24px;margin:20px 0 10px;accent-color:#76a438}#startup-detail{font-size:15px}#startup-file{display:block;overflow-wrap:anywhere;min-height:20px;color:#6c6647}#startup-retry{margin-top:16px}
/* Clear, outlined farm pointers with original item artwork beside the tip. */
.farm-panel .farm-scene,.farm-panel canvas#farm,.world-mode{cursor:url('/assets/cursors/pointer.svg') 5 3,auto}
.original-plant-cursor{background:transparent;border:0;border-radius:0;padding:0;filter:none}
.live-cursor{filter:none;transition:left 90ms linear,top 90ms linear;will-change:left,top}
.live-cursor-arrow{left:-5px;top:-3px;width:28px;height:34px;transform:none;background:var(--cursor-color);clip-path:polygon(9% 3%,95% 61%,58% 65%,41% 96%);filter:drop-shadow(0 0 2px white)}
.live-cursor::after{content:'';position:absolute;left:-7px;top:-5px;width:32px;height:38px;background:#fffbe7;clip-path:polygon(9% 3%,95% 61%,58% 65%,41% 96%);z-index:-1}
.live-cursor-name{left:19px;top:27px;padding:4px 9px;border:2px solid #fff9df;border-radius:8px;box-shadow:0 2px 5px #16372c40;font:bold 12px Arial;letter-spacing:.1px}
.live-cursor-tool{position:absolute;left:23px;top:57px;white-space:nowrap;background:#fff9e8ed;color:#34522b;padding:3px 7px;border-radius:5px;font:11px Arial}
.live-cursor-tool:empty{display:none}
.live-cursor-item{position:absolute;left:26px;top:-29px;width:48px;height:48px;padding:0;object-fit:contain;background:transparent;border:0;border-radius:0;box-shadow:none}
.live-cursor.pressed::before{left:-14px;top:-14px;width:28px;height:28px;background:#ffffff50;box-shadow:0 0 0 5px #ffffff20}
.live-action-progress{position:absolute;transform:translate(-50%,-150%);height:25px;min-width:125px;border:2px solid #103600;border-radius:6px;background:#056700;box-shadow:0 2px 6px #173b3450;overflow:hidden;white-space:nowrap;font:bold 13px Arial;color:white}
.live-action-progress i{position:absolute;inset:0 auto 0 0;background:#00ab00}
.live-action-progress span{position:relative;display:block;padding:5px 8px}
.live-action-progress[hidden],.live-cursor[hidden],.live-cursor-item[hidden]{display:none}
.language-controls{position:fixed;left:12px;bottom:12px;display:flex;align-items:center;gap:10px;z-index:10001;padding:7px 10px;border:2px solid #d6b176;border-radius:10px;background:#fff8dfed;box-shadow:0 2px 6px #27462a30;color:#42552d;font:12px Arial}
.language-controls label{display:flex;align-items:center;gap:5px}.language-controls select{font:13px Arial;border:1px solid #c6ac78;border-radius:5px;background:#fffdf4;color:#34522b;padding:3px}.language-controls input{accent-color:#639b37}
@media(max-width:700px){.language-controls{bottom:105px;left:5px;font-size:10px;gap:5px;padding:4px}.language-controls select{max-width:86px}}

html[lang=es] .store-dialog .level-locked::after{content:'Bloqueado';font-size:11px}
.live-cursor.working .live-cursor-arrow{background:#23a33b}.live-cursor.working .live-cursor-name{box-shadow:0 0 0 3px #4ccf6880}
.live-action-progress{transform:translate(-50%,-100%) translateY(-65px);z-index:2}

/* Original Darryl portrait and panel/button art, with accessible mission content. */
.mission-launcher{position:absolute;left:14px;top:130px;z-index:8;width:87px;padding:0 4px 6px;border:0;background:transparent;cursor:pointer;color:#fff8d0;font:bold 13px Arial;text-shadow:0 2px 2px #563315;display:grid;justify-items:center;filter:drop-shadow(0 2px 2px #4e5827)}
.mission-launcher .mission-portrait{width:68px;height:75px;object-fit:contain}.mission-badge{position:absolute;right:0;top:1px;padding:3px 6px;border-radius:14px;background:#844c23;border:2px solid #ffda7e;font-size:11px}.mission-launcher.ready .mission-badge{background:#659a20;font-size:20px}.mission-launcher:hover{filter:brightness(1.12) drop-shadow(0 2px 2px #4e5827)}
.missions-dialog{width:min(640px,95vw);height:min(650px,93dvh)}.missions-dialog .original-dialog-title{color:#7d451b;text-shadow:0 1px #fff}.missions-dialog .original-dialog-content{inset:65px 38px 35px;overflow:auto;color:#563719;font:14px/1.4 Arial}.missions-dialog h3{font-size:20px;margin:10px 0}.missions-dialog h4{margin:14px 0 8px}.missions-dialog p{margin:8px 0;color:#563719}.mission-tasks{list-style:none;padding:0;margin:16px 0;display:grid;gap:10px}.mission-tasks li{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:5px 10px;background:#fff4d1;border:1px solid #d6b67b;border-radius:9px;padding:9px}.mission-tasks img{width:40px;height:40px;object-fit:contain;grid-row:1/3}.mission-tasks li:not(:has(img)){grid-template-columns:1fr auto}.mission-tasks progress{grid-column:2/4;width:100%;height:9px;accent-color:#79a927}.mission-tasks li:not(:has(img)) progress{grid-column:1/3}.mission-tasks .complete{border-color:#91b544;background:#edf3cc}.mission-rewards{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.mission-rewards>span{display:flex;align-items:center;gap:5px;font-weight:bold}.mission-rewards canvas{width:28px;height:28px;object-fit:contain}.mission-claim{display:block;margin:20px auto 0;padding:12px 30px;border:0;background:var(--original-shop-coin-normal) center/100% 100%;color:white;font:bold 16px Arial;text-shadow:0 1px #574625;cursor:pointer}.mission-claim:disabled{filter:grayscale(.8);opacity:.7;cursor:default}
@media(max-width:600px){.mission-launcher{top:145px;left:5px;transform:scale(.8);transform-origin:top left}.missions-dialog .original-dialog-content{left:24px;right:24px;font-size:13px}.missions-dialog h3{font-size:17px}}
.weather-dialog{position:fixed;inset:0;margin:0;padding:0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;background:transparent;overflow:hidden;color:white}.weather-dialog::backdrop{background:transparent}.weather-dialog canvas{position:absolute;inset:0;width:100%;height:100%}.weather-dialog p{position:absolute;bottom:12%;left:10%;right:10%;text-align:center;font:bold 18px Arial;color:#fff8da;text-shadow:0 2px 3px #342715}

.cropinator-panel{width:min(760px,96vw);height:min(620px,94dvh)}
.cropinator-panel .original-dialog-content{padding:24px 32px;overflow:auto;text-align:center}
.cropinator-panel p{margin:8px 0}.cropinator-panel select{max-width:100%;padding:9px;font:inherit}
.cropinator-operations{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;align-items:center}
.cropinator-operation{position:relative;width:145px;min-height:208px;border:0;background:none;cursor:pointer;color:#573816;font:inherit;padding:0}
.cropinator-operation canvas{display:block;margin:auto}.cropinator-operation strong,.cropinator-operation span{display:block;line-height:1.2;font-size:14px}
.cropinator-operation:hover canvas{filter:brightness(1.12)}.cropinator-operation:disabled{opacity:.5;cursor:default}
.cropinator-confirm{border:0;background-image:var(--original-shop-coin-normal);background-size:100% 100%;color:white;text-shadow:1px 1px #345315;font:inherit;padding:8px 22px;margin:8px;cursor:pointer}
.cropinator-seed{display:inline-block;width:48px;height:48px;object-fit:contain;margin:4px 10px;vertical-align:middle}
.cropinator-effect{position:fixed;inset:0;max-width:none;max-height:none;width:100vw;height:100dvh;margin:0;padding:0;border:0;background:transparent;overflow:hidden}.cropinator-effect::backdrop{background:#0003}.cropinator-effect canvas{width:100%;height:100%}

.mission-go{grid-column:2/-1;justify-self:end;min-height:32px;padding:6px 15px;border:0;background:var(--original-shop-coin-normal) center/100% 100%;color:white;font:bold 13px Arial;text-shadow:0 1px #574625;cursor:pointer}.mission-tasks li:not(:has(img)) .mission-go{grid-column:1/-1}.mission-go:hover{background-image:var(--original-shop-coin-hover)}.mission-go:disabled{filter:grayscale(.8);opacity:.7;cursor:default}.mission-go:focus-visible{outline:3px solid #2478a8;outline-offset:2px}

.gift-picture{object-fit:contain;flex:0 0 48px}.mission-rewards .gift-picture{width:42px;height:42px;flex-basis:42px}.mission-launcher.ready .mission-portrait{filter:drop-shadow(0 0 5px #fff3a0)}

/* Recovered TaskViewSkin: tan panel, NPC speech card and 94px task strips. */
.missions-dialog{width:min(740px,96vw);height:min(690px,94dvh);background:transparent;overflow:visible;border:0}
.missions-dialog>.original-dialog-title{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.mission-original-panel{position:absolute;inset:55px 8px 0 25px;border:solid transparent;border-width:180px 222px 125px 247px;border-image:url('/assets/mission-ui/panel.png') 180 222 125 247 fill stretch;pointer-events:none}
.missions-dialog>.original-close{top:52px;right:10px;z-index:4}
.missions-dialog .original-dialog-content{inset:0 28px 20px 35px;padding:0 5px 5px;overflow:auto;scrollbar-width:thin;color:#583414}
.mission-story-header{position:relative;min-height:170px;margin:0 -3px 0 0;padding-top:1px}
.mission-npc{position:absolute;left:0;top:0;width:170px;height:170px;object-fit:contain}
.mission-speech{position:relative;margin-left:145px;min-height:142px;padding:16px 26px 14px 37px;box-sizing:border-box;background:url('/assets/mission-ui/speech.png') center/100% 100% no-repeat;text-align:center}
.missions-dialog .mission-speech h3{font:bold 19px/1.15 Arial;margin:0 0 9px;color:#583414}
.missions-dialog .mission-speech p{font:bold 14px/1.35 Arial;margin:0;color:#734b39}
.missions-dialog .mission-summary{margin:0 10px;font-size:12px;font-weight:bold;text-align:right}
.missions-dialog .mission-note{margin:7px 10px;font-size:12px;text-align:center}
.mission-reward-block{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin:10px 0 14px}.mission-reward-block h4{font-size:13px;margin:0}.mission-reward-block .mission-rewards{gap:10px}.mission-rewards>span{font-size:12px}.mission-rewards>span>img:not(.gift-picture){width:33px;height:33px;object-fit:contain}
.missions-dialog .mission-tasks{gap:8px;margin:10px 0}.missions-dialog .mission-tasks li{position:relative;isolation:isolate;min-height:94px;box-sizing:border-box;border:0;border-radius:0;background:none;padding:9px 13px;grid-template-columns:60px 1fr auto;gap:5px 12px}
.missions-dialog .mission-tasks li::before{content:'';position:absolute;inset:0;z-index:-1;border:solid transparent;border-width:31px 11px;border-image:url('/assets/mission-ui/task-row.png') 31 11 fill stretch;pointer-events:none}
.missions-dialog .mission-tasks li>img:not(.mission-complete-mark){width:60px;height:60px;grid-column:1;grid-row:1/4}.missions-dialog .mission-tasks li:not(:has(img:not(.mission-complete-mark))){grid-template-columns:1fr auto}
.missions-dialog .mission-tasks li>span{font-weight:bold;color:#6d4747}.mission-tasks .mission-complete-mark{width:42px;height:31px;grid-column:-2;grid-row:3;justify-self:end}.missions-dialog .mission-tasks .complete{background:none}
.missions-dialog .mission-tasks li:not(:has(img:not(.mission-complete-mark))) progress{grid-column:1/-1}.mission-tasks li:not(:has(img:not(.mission-complete-mark))) .mission-go{grid-column:1/-1}
@media(max-width:600px){.missions-dialog .original-dialog-content{inset:0 20px 16px 20px}.mission-original-panel{inset:45px 3px 0 8px;border-width:100px 95px 80px 105px}.mission-story-header{margin-left:0;min-height:155px}.mission-npc{width:100px;height:100px;top:22px}.mission-speech{margin-left:82px;padding:12px 18px 12px 22px;min-height:142px}.missions-dialog .mission-speech h3{font-size:15px}.missions-dialog .mission-speech p{font-size:12px}.missions-dialog>.original-close{top:39px;right:0}.missions-dialog .mission-tasks li{grid-template-columns:44px 1fr auto;gap:5px 7px}.missions-dialog .mission-tasks li>img:not(.mission-complete-mark){width:44px;height:44px}.mission-reward-block{gap:6px}.mission-reward-block .mission-rewards{gap:7px}.missions-dialog .mission-note{font-size:11px}}

/* TaskRewardViewSkin receipt: original speech panel, ribbon and NPC artwork. */
.mission-receipt{position:fixed;margin:auto;width:min(790px,96vw);height:390px;max-height:94dvh;box-sizing:border-box;padding:0;border:0;background:transparent;overflow:visible;color:#623a22}.mission-receipt::backdrop{background:#0008}
.mission-receipt-card{position:absolute;top:95px;left:200px;right:10px;min-height:216px;box-sizing:border-box;padding:18px 22px 12px;isolation:isolate;text-align:center}
.mission-receipt-card::before{content:'';position:absolute;inset:0;z-index:-1;border:solid transparent;border-width:57px 23px;border-image:url('/assets/mission-ui/reward-panel.png') 57 23 fill stretch}
.mission-receipt-card::after{content:'';position:absolute;width:28px;height:36px;left:-19px;top:56px;background:url('/assets/mission-ui/reward-arrow.png') center/100% 100%;z-index:-1}
.mission-receipt-npc{position:absolute;left:0;top:85px;width:205px;height:240px;object-fit:contain;object-position:center bottom}
.mission-receipt-banner{position:absolute;left:210px;right:20px;top:28px;height:92px;display:flex;align-items:center;justify-content:center}.mission-receipt-ribbon{position:absolute;inset:0;width:100%;height:100%}.mission-receipt-title{position:relative;margin:0 28px;text-align:center;color:#fefa5e;text-shadow:0 2px #512800,2px 0 #512800,-2px 0 #512800,0 -2px #512800;font:bold 22px/1.1 Arial}
.mission-receipt-close{position:absolute;right:0;top:86px;width:38px;height:38px}.mission-receipt-status{margin:8px 0 10px;font:bold 13px Arial}.mission-receipt-items{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:0;margin:0}.mission-receipt-item{display:flex;flex-direction:column;align-items:center;gap:3px;font:12px/1.2 Arial;min-width:0}.mission-receipt-item img{width:62px;height:62px;object-fit:contain}.mission-receipt-item strong{font-size:20px;color:#6f401d}.mission-receipt-pager{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:10px;font:12px Arial}.mission-receipt-previous,.mission-receipt-next{width:28px;height:28px}.mission-receipt-next>.original-button-art{transform:scaleX(-1)}.mission-receipt-done{position:absolute;bottom:12px;left:calc(200px + (100% - 210px)/2);transform:translateX(-50%);margin:0;min-width:140px}
@media(max-width:600px){.mission-receipt{height:610px;overflow:auto}.mission-receipt-npc{top:80px;left:5px;width:100px;height:120px}.mission-receipt-banner{top:12px;left:0;right:0;height:90px}.mission-receipt-title{font-size:18px}.mission-receipt-card{top:175px;left:8px;right:8px;padding:20px 20px 12px;min-height:310px}.mission-receipt-card::after{display:none}.mission-receipt-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.mission-receipt-status{margin-top:0}.mission-receipt-close{top:105px;right:8px}.mission-receipt-done{bottom:18px;left:50%}.mission-receipt-item img{width:50px;height:50px}.mission-receipt-pager{margin-top:12px}}
.mission-receipt .original-art-button{padding:0;border:0;background:none;cursor:pointer}.mission-receipt .original-button-art{width:100%;height:100%}.mission-receipt .original-button-art>canvas{position:absolute;inset:0;width:100%;height:100%;display:none}.mission-receipt .original-art-button:disabled{opacity:.45;cursor:default}.mission-receipt-previous,.mission-receipt-next{width:18px;height:40px}

.mission-tasks .mission-hint{grid-column:1/-1;font-size:12px;color:#68462f}.mission-hint summary{cursor:pointer;font-weight:bold;min-height:20px}.mission-hint p{margin:5px 0;line-height:1.4}.mission-hint summary:focus-visible{outline:2px solid #57952d;outline-offset:2px}
/* Keep reward controls below the card when a short phone viewport scrolls. */
@media(max-width:600px){.mission-receipt{height:auto;padding:175px 8px 18px}.mission-receipt-card{position:relative;top:auto;left:auto;right:auto}.mission-receipt-done{position:relative;bottom:auto;left:auto;transform:none;margin:18px auto 0}}
.mission-receipt{scrollbar-width:thin;scrollbar-color:#b88b45 transparent}
.original-floating-tip:not(.original-reward-tip){width:max-content;max-width:calc(100vw - 24px);white-space:pre-wrap;overflow-wrap:anywhere}
/* GameUITaskBtnSkin: original 65px story icon and 23×66 objective meter. */
.mission-launcher{left:0;width:110px;height:98px;padding:0;display:block}.mission-launcher .mission-portrait{position:absolute;left:34.5px;top:1.5px;width:65px;height:65px}.mission-launcher-progress{position:absolute;left:10px;top:2px;width:23px;height:66px}.mission-launcher-progress>span,.mission-launcher-progress canvas{position:absolute;inset:0;width:23px;height:66px}.mission-launcher-progress-fill{transition:clip-path 2200ms linear}.mission-launcher-sign{position:absolute;left:43px;top:44.5px;width:19px;height:19px}.mission-launcher-complete{position:absolute;left:69px;top:32px;width:36px;height:36px}.mission-launcher-caption{position:absolute;top:72px;left:10px;right:0;line-height:1.2}
@media(prefers-reduced-motion:reduce){.mission-launcher-progress-fill{transition:none}}
.mission-launcher-progress{opacity:0;transform:translateX(5px);transition:opacity .15s,transform .5s ease-out}.mission-launcher:is(:hover,:focus-visible) .mission-launcher-progress{opacity:1;transform:translateX(0)}
@media(hover:none){.mission-launcher-progress{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.mission-launcher-progress{transition:none}}

/* Original GameUITaskBtnSkin progress bubble, 191 × 57 at x=109. */
.mission-callout{position:absolute;left:109px;top:7px;width:191px;height:57px;text-shadow:none;pointer-events:none}.mission-callout-background{position:absolute;inset:0;width:191px;height:57px}.mission-callout-label{position:absolute;left:25px;top:12px;width:148px;height:30px;display:flex;align-items:center;justify-content:center;color:#721b0c;font:bold 20px Arial;white-space:nowrap}.mission-callout.with-check .mission-callout-label{width:131px;font-size:19px}.mission-callout-check{position:absolute;left:158px;top:16px;width:39px;height:37px}.mission-launcher.show-progress .mission-launcher-progress{opacity:1;transform:translateX(0)}

.mission-sparkle{position:absolute;pointer-events:none;z-index:2}

/* Seven categories share the original single tab row; pagination owns scrolling. */
.store-dialog .shop-tabs{flex-wrap:nowrap}.store-dialog .shop-tabs button{min-width:0;flex:1 1 0;font-size:14px;white-space:nowrap;padding-left:1px;padding-right:1px}.store-dialog .original-dialog-content{overflow:hidden}

.store-dialog .shop-tabs button:is([data-category="automation"],[data-category="decorations"]){font-size:12px}

/* Three shared missions stay active; tabs only choose which details to show. */
.mission-tabs{display:flex;gap:6px;margin:0 0 12px}.mission-tabs button{flex:1;min-width:0;padding:8px 6px;border:2px solid #b97b3e;border-radius:10px;background:#fff2cf;color:#79411f;font:inherit;font-weight:bold;cursor:pointer}.mission-tabs button[aria-pressed="true"]{background:#ffe29a;border-color:#71401d;box-shadow:inset 0 -3px #daac59}.mission-tabs button:focus-visible{outline:3px solid #447c31;outline-offset:2px}
/* Each active original mission has its own independent shortcut. */
.mission-rail{position:absolute;left:0;top:130px;z-index:8;display:flex;flex-direction:column;gap:2px;pointer-events:none}
.mission-rail .mission-launcher{position:relative;top:auto;left:auto;flex:none;pointer-events:auto}
@media(max-width:600px){.mission-rail{top:145px;gap:0;transform:scale(.8);transform-origin:top left}.mission-rail .mission-launcher{transform:none}}
.automation-launcher{position:absolute;left:16px;bottom:65px;z-index:8;padding:8px 14px;border:2px solid #ad7939;border-radius:14px;background:#fff2c8;color:#75421c;font:bold 13px Arial;cursor:pointer}
.automation-row{display:grid;grid-template-columns:1fr auto;gap:8px;margin:8px 0;padding:10px;border-bottom:1px solid #c99d58}.automation-row select{grid-column:1/-1;max-width:100%}.automation-row button{padding:6px 14px;border:1px solid #966e36;border-radius:8px;background:#ead0a2;color:#573718;cursor:pointer}.automation-row button[aria-pressed="true"]{background:#80b44b;color:#fff}.automation-dialog .original-dialog-content{overflow:auto}
.automation-dialog .original-dialog-content>p{color:#563719;background:#fff4d9;padding:12px;border-radius:8px}.automation-row{background:#fff4d9;border-radius:8px}
