@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900;1000&display=swap');
:root{--ink:#34482d;--green:#6b963a;--cream:#f7f6ee;--line:#e7e7d9}*{box-sizing:border-box}body{margin:0;background:var(--cream);font-family:'Nunito',system-ui,sans-serif;color:var(--ink);font-size:14px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;border:0;color:inherit;transition:transform .15s,filter .15s}button:hover{filter:brightness(1.04);transform:translateY(-2px)}button:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:default;transform:none}button:focus-visible,a:focus-visible{outline:3px solid #e6ab38;outline-offset:3px}.sidebar{position:fixed;left:0;top:0;bottom:0;width:224px;background:#fffdf5;border-right:1px solid var(--line);padding:32px 20px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#42552d;line-height:1;font-size:22px;font-weight:1000;letter-spacing:-1px}.brand span{font-size:51px;color:#efb63c}.edition{font-size:8px;letter-spacing:1.4px;margin:16px 0 30px;color:#92977d}nav{display:grid;gap:9px}nav button{display:flex;align-items:center;gap:13px;background:transparent;text-align:left;padding:14px 16px;border-radius:12px;font-size:23px;color:#93967e}nav button span{font-size:14px;font-weight:800}nav .active{background:#eaf0d9;color:#526f31}nav em{font-style:normal;background:#f2e5bf;font-size:11px;padding:2px 7px;border-radius:5px}nav i{width:7px;height:7px;background:#e9aa45;border-radius:50%}.side-bottom{margin-top:auto}.season{position:relative;background:#f0eddb;border:1px solid #e8e3cb;border-radius:14px;padding:18px 14px;margin-bottom:20px;overflow:hidden;min-height:130px}.season small{font-size:8px;letter-spacing:1.4px;color:#9d884f}.season strong{display:block;font-size:15px;margin:8px 0}.season span{display:block;font-size:11px;max-width:100px;color:#8a8871}.season img{position:absolute;width:80px;right:-5px;bottom:-12px;transform:rotate(15deg)}.side-bottom button{background:none;font-size:12px;color:#777f67}.side-bottom p{font-size:9px;color:#a5a894;line-height:1.8;margin-top:20px}main{margin-left:224px;padding:0 34px;max-width:1800px}header{height:96px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.profile{display:flex;align-items:center;gap:13px}.level{background:#83a650;border:3px solid #f9d36e;box-shadow:0 2px 0 #6f8738;border-radius:15px;transform:rotate(-5deg);width:45px;height:48px;display:grid;place-content:center;color:white;font-size:26px;font-weight:1000}.profile b{font-size:15px}.profile small{font-size:9px;color:#969a82}.xp-track{width:145px;height:5px;background:#e1e6d5;border-radius:5px;margin-top:5px;overflow:hidden}.xp-track i{display:block;height:100%;background:#98b95b}.profile button{background:none;color:#9a9d8c}.wallet{display:flex;gap:16px;align-items:center}.wallet>div{display:flex;align-items:center;gap:8px;background:#eeeddf;border-radius:25px;min-width:116px;padding:5px 6px}.wallet img{width:30px;height:30px;object-fit:contain}.wallet b{flex:1}.wallet button{border-radius:50%;background:white;width:24px;height:24px;font-size:18px}.wallet>button{background:#eeeddf;width:36px;height:36px}.gem{color:#74b7c1;font-size:29px;text-shadow:1px 2px #5394a0}.heading{display:flex;align-items:center;justify-content:space-between;margin:30px 0 25px;gap:20px}.eyebrow{font-size:9px;font-weight:900;letter-spacing:1.8px;color:#9b9d78}h1{font-size:31px;letter-spacing:-1.1px;margin:6px 0 9px;font-weight:1000}h1 span{color:#dcae4f}p{color:#929581;line-height:1.6}.heading p{font-size:12px;margin:0}.daily-short{display:flex;align-items:center;gap:12px;padding:13px 17px;background:#fff8df;border:1px solid #eddfb6;border-radius:12px;white-space:nowrap}.daily-short>span{font-size:30px}.daily-short small{display:block;font-size:7px;letter-spacing:1px;color:#ae9252;text-align:left}.daily-short b{font-size:12px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:22px}.farm-card{border:1px solid #d4dfbd;border-radius:18px;overflow:hidden;background:#fffef7;box-shadow:0 6px 20px #405b2010}.map-toolbar{height:42px;background:#f3f5e7;padding:13px 20px;font-size:9px;letter-spacing:1.4px;font-weight:900;display:flex;align-items:center;gap:8px}.live-dot{width:6px;height:6px;background:#86a753;border-radius:50%}.map-weather{margin-left:auto;letter-spacing:0;font-weight:600;color:#929b77}.farm-map{height:430px;position:relative;background-color:#a8cb70;background-image:radial-gradient(ellipse at 70% 40%,#c2d987 0,transparent 50%),radial-gradient(#81b75f 1px,transparent 1px);background-size:auto,19px 17px;overflow:hidden}.river{position:absolute;right:-90px;top:-50px;width:145px;height:650px;background:#83c8ca;border-left:15px solid #b7d58a;transform:rotate(23deg);box-shadow:inset 10px 0 0 #c1dfbe}.road{position:absolute;width:150%;height:72px;background:#d8c899;transform:rotate(-26deg);top:160px;left:-100px;border:5px solid #e2d4a8;box-shadow:0 0 0 2px #9cbd69}.map-sign{position:absolute;top:20px;left:23px;background:#f7edcf;border:3px solid #a17d45;border-radius:6px;transform:rotate(-4deg);font-size:11px;font-weight:900;padding:7px 12px;box-shadow:0 4px 0 #755a3540}.trees img{position:absolute;filter:drop-shadow(3px 8px 1px #547d3244);width:85px}.building{position:absolute;background:none;filter:drop-shadow(3px 9px 2px #59743250)}.building img{width:100%;height:100%;object-fit:contain}.building span{position:absolute;bottom:-7px;left:50%;transform:translateX(-50%);padding:3px 9px;background:#fff8db;border-radius:7px;white-space:nowrap;font-size:10px;font-weight:900;box-shadow:0 2px 0 #a59c65}.barn{width:150px;height:145px;left:34%;top:35px}.silo{width:80px;height:132px;left:57%;top:20px}.crop-field{position:absolute;left:14%;top:213px;display:grid;grid-template-columns:repeat(4,54px);gap:5px;transform:rotate(-16deg) skew(12deg)}.plot{width:54px;height:42px;border-radius:8px;background:repeating-linear-gradient(0deg,#8e5f35 0 6px,#a37442 7px 10px);border:2px solid #bc975d;box-shadow:2px 4px 0 #6a783c55;position:relative;padding:0}.plot img{width:51px;height:59px;object-fit:contain;position:absolute;left:0;bottom:5px;transform:skew(-12deg) rotate(16deg);filter:drop-shadow(1px 4px 1px #63481d44)}.plot.ready{background:#b18a3d;border-color:#e9cb69}.plot small{position:absolute;bottom:-1px;left:5px;background:#fff7d4;border-radius:4px;padding:0 4px;font-size:8px;transform:skew(-12deg) rotate(16deg)}.animal-yard{position:absolute;left:64%;top:240px;width:130px;height:88px;border:5px dashed #eee4bc;border-radius:30%;background:#bed38a}.animal{position:absolute;background:none;padding:0}.animal img{width:48px;height:62px;object-fit:contain;filter:drop-shadow(2px 4px 1px #5a743444)}.animal small{position:absolute;background:#fff7d3;border-radius:6px;font-size:8px;top:-5px;left:10px;padding:2px 4px}.machine{width:80px;height:90px;top:128px}.map-tip{position:absolute;bottom:14px;left:20px;font-size:9px;color:#526b38;background:#eff4d7da;border:1px solid #dce9ba;padding:8px 12px;border-radius:20px}.zoom{position:absolute;right:12px;bottom:12px;display:flex;gap:3px}.zoom button{background:#fff9df;width:29px;height:29px;border-radius:7px;font-size:20px;box-shadow:0 2px #839856}.farm-controls{min-height:76px;display:flex;align-items:center;justify-content:space-between;padding:13px 18px;gap:10px}.crop-selector{display:flex;gap:8px;align-items:center}.crop-selector>span{font-size:8px;font-weight:900;letter-spacing:1px;margin-right:6px;color:#9b9f84}.crop-selector button{background:none;border:1px solid transparent;border-radius:9px;font-size:10px;text-align:left;padding:4px 8px}.crop-selector .selected{background:#f2f1df;border-color:#dddcbf}.crop-selector img{width:25px;height:32px;object-fit:contain;float:left;margin-right:6px}.crop-selector small{display:block;color:#a1a083;font-size:9px}.green{border-radius:10px;background:linear-gradient(#8bb34e,#6f963a);color:white;box-shadow:0 3px 0 #52732b,inset 0 1px 0 #c8dd94;font-weight:900;padding:12px 20px;border:1px solid #749745}.green span{margin-left:10px}.right-rail{display:grid;gap:18px;grid-template-rows:auto 1fr}.panel{background:#fffef8;border:1px solid var(--line);border-radius:15px;padding:20px}.panel h2{font-size:17px;margin:8px 0 20px;letter-spacing:-.4px}.panel h2 span{float:right;color:#dab260}.quest{padding:10px 0;border-top:1px solid #eeeedf;display:flex;align-items:center;gap:10px}.quest .check{width:28px;height:28px;border-radius:50%;background:#f0efdf;display:grid;place-items:center;color:#94aa68;font-size:16px}.quest b{font-size:11px;display:block}.quest small{font-size:9px;color:#a0a18b}.quest button{margin-left:auto;background:#edf1db;border-radius:6px;font-size:10px;padding:5px}.order-preview{background:#f1edda;position:relative;overflow:hidden}.order-preview img{width:85px;position:absolute;right:10px;top:55px;transform:rotate(-12deg)}.order-preview h2{max-width:135px}.order-preview p{font-size:10px;position:relative;max-width:150px}.order-preview button{font-size:10px;background:#fffaf0;padding:9px 12px;border:1px solid #e1dbc1;border-radius:8px;font-weight:800}.production{margin-top:25px}.section-title{display:flex;align-items:center;justify-content:space-between}.section-title h2{font-size:19px;margin:0}.section-title p{font-size:11px;margin:4px 0 15px}.section-title button{background:none;font-size:11px;font-weight:800}.quick-shop{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.product{background:#fffef8;border:1px solid var(--line);border-radius:13px;padding:15px;position:relative;display:flex;align-items:center;gap:12px}.product>img{width:70px;height:76px;object-fit:contain;filter:drop-shadow(0 4px 2px #8f886722)}.product h3{font-size:12px;margin:0 0 3px}.product p{font-size:9px;margin:0 0 8px}.buy{padding:5px 10px;border:1px solid #e1dbb4;border-radius:6px;background:#fbf0c8;font-size:11px;font-weight:900}.buy img{height:14px;vertical-align:middle;margin-right:4px}.owned{position:absolute;right:8px;top:6px;color:#97a476;font-size:9px}footer{display:flex;justify-content:space-between;font-size:9px;color:#a3a68d;padding:22px 0}.hidden{display:none!important}.tabs{display:flex;gap:10px;margin-bottom:22px}.tabs button{padding:10px 20px;border:1px solid var(--line);background:#fffef5;border-radius:20px}.tabs .selected{background:#e3ebd1;color:#577332}.shop-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.shop-grid .product{min-height:205px;flex-direction:column;text-align:center}.shop-grid .product>img{height:100px;width:120px}.intro-card{padding:20px 25px;background:#eeeddc;border-radius:15px;margin-bottom:22px}.intro-card h2{margin:0;font-size:22px}.intro-card p{margin-bottom:0}.ranking{max-width:850px;margin:auto}.rank-row{display:flex;align-items:center;background:#fffef6;border:1px solid var(--line);border-radius:12px;padding:18px 25px;margin-bottom:10px;gap:20px}.rank-row.you{background:#e8efdb;border:2px solid #9ab765}.rank-row strong{font-size:22px;width:35px}.rank-row .score{margin-left:auto;font-weight:900}.rank-row small{display:block;color:#9b9d86}.reward-hero{text-align:center;background:#fffdf2;border:1px solid #e8e3ce;border-radius:24px;padding:40px}.reward-hero>span{font-size:60px}.reward-hero h2{font-size:30px}.days{display:flex;gap:12px;justify-content:center;margin:30px 0}.day{border:1px solid #e7dfc3;border-radius:13px;padding:18px 12px;min-width:94px;background:#f6f2df}.day.active{border:2px solid #92b55a;background:#edf3d7}.day.claimed{opacity:.5}.day img{width:33px;height:33px;object-fit:contain;margin:10px 0}.day b,.day small{display:block}#toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#34482df2;color:white;padding:15px 25px;border-radius:12px;z-index:20;transition:.2s;box-shadow:0 8px 30px #0002}#toast.show{opacity:1;transform:translate(-50%,0)}dialog{max-width:480px;width:90%;border:1px solid #e2d8b8;border-radius:20px;padding:30px;background:#fffdf1;color:var(--ink);box-shadow:0 20px 100px #0003}dialog::backdrop{background:#25372080;backdrop-filter:blur(4px)}.close{float:right;background:#efe9d5;border-radius:50%;width:30px;height:30px;font-size:22px}.inventory-item{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:10px}.inventory-item img{width:35px;height:35px;object-fit:contain}.float-reward{position:absolute;z-index:10;color:#fffbe0;font-size:22px;font-weight:1000;text-shadow:0 2px 2px #53652d;pointer-events:none;animation:rise 1s forwards}@keyframes rise{to{transform:translateY(-60px);opacity:0}}@media(min-width:1500px){.farm-map{height:480px}.crop-field{top:250px}.animal-yard{top:285px}.building.barn{width:175px;height:170px}.quick-shop .product>img{width:85px;height:90px}}@media(max-width:1200px){.sidebar{width:190px;padding:25px 14px}main{margin-left:190px;padding:0 22px}.brand{font-size:19px}.game-layout{grid-template-columns:minmax(0,1fr) 220px;gap:16px}.panel{padding:16px}h1{font-size:26px}.daily-short{display:none}.quick-shop{grid-template-columns:repeat(2,1fr)}.shop-grid{grid-template-columns:repeat(3,1fr)}.crop-field{left:9%}.barn{left:30%}.crop-selector>span{display:none}.farm-controls{padding:12px}.green{padding:11px 13px}.days{flex-wrap:wrap}}@media(max-width:900px){.sidebar{width:78px;padding:22px 10px}.brand{justify-content:center}.brand b,.edition,nav span,nav em,nav i,.side-bottom{display:none}nav{margin-top:30px}nav button{justify-content:center;padding:13px}main{margin-left:78px}.game-layout{grid-template-columns:1fr}.right-rail{grid-template-columns:1fr 1fr;grid-template-rows:auto}.farm-map{height:440px}.shop-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.sidebar{top:auto;height:66px;right:0;bottom:0;width:100%;padding:0;z-index:15;border-top:1px solid #dedfca}.brand{display:none}nav{display:flex;margin:0;height:100%;justify-content:space-around;gap:0}nav button{width:20%;border-radius:0;font-size:25px;display:flex;flex-direction:column;gap:0;padding:5px}nav span{display:block;font-size:8px!important}main{margin:0;padding:0 15px 70px}header{height:80px}.wallet{gap:6px}.wallet>div{min-width:77px;gap:4px;font-size:12px}.wallet img{width:23px;height:23px}.wallet>button{display:none}.wallet button{width:20px;height:20px}.profile{gap:8px}.profile b{font-size:12px}.level{width:34px;height:39px;font-size:20px}.xp-track{width:80px}.profile>button{display:none}.heading{margin:23px 0 18px}h1{font-size:25px;max-width:300px;line-height:1.15}.heading p{font-size:10px;max-width:290px}.eyebrow{font-size:8px}.farm-map{height:360px}.map-toolbar{padding:12px;font-size:8px}.map-weather{font-size:8px}.barn{left:28%;top:50px;width:110px;height:110px}.silo{left:59%;top:26px;width:60px;height:110px}.crop-field{top:195px;left:10%;grid-template-columns:repeat(4,40px);gap:3px}.plot{width:40px;height:32px}.plot img{width:39px;height:48px}.animal-yard{left:66%;top:230px;width:94px;height:67px}.animal img{width:33px;height:42px}.trees img{width:65px}.map-tip{font-size:7px;bottom:12px;left:10px;max-width:230px}.map-sign{font-size:8px;top:13px;left:10px}.farm-controls{gap:4px;padding:10px 7px}.crop-selector{gap:1px}.crop-selector button{padding:4px;font-size:8px}.crop-selector img{width:20px;height:26px;margin-right:3px}.crop-selector small{font-size:8px}.green{font-size:11px;padding:10px}.right-rail{gap:10px}.panel{padding:13px}.panel h2{font-size:14px}.quest{gap:5px}.quest b{font-size:9px}.quest small{font-size:8px}.quest .check{width:21px;height:21px;font-size:12px;flex-shrink:0}.quest button{font-size:8px;padding:3px}.order-preview img{width:60px;right:-3px;top:75px}.order-preview p{font-size:9px;max-width:100px}.order-preview button{font-size:8px;padding:7px}.section-title h2{font-size:16px}.section-title p{font-size:9px}.quick-shop{gap:9px}.product{padding:11px;gap:6px}.product>img{width:55px;height:65px}.product h3{font-size:11px}.product p{font-size:8px}.owned{font-size:7px}.shop-grid{gap:10px}.shop-grid .product{min-height:190px}.tabs{gap:5px;flex-wrap:wrap}.tabs button{font-size:10px;padding:8px 13px}.reward-hero{padding:25px 12px}.reward-hero h2{font-size:24px}.days{gap:7px}.day{min-width:80px;font-size:11px;padding:10px}.rank-row{padding:14px;gap:10px}.rank-row .score{font-size:12px}.intro-card h2{font-size:18px}.intro-card p{font-size:12px}footer{font-size:7px;gap:10px}.machine{width:60px;height:65px;top:140px}}
/* Season 01: production, progression and longer sessions */
.sidebar{padding-top:24px}nav{gap:5px}nav button{padding:11px 14px}.farm-extra{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.farm-extra .buy{background:#f1efdf;color:#718058;font-size:10px}.farm-controls .crop-selector{gap:8px}.farm-controls #choose-crop{min-width:135px}.farm-controls #choose-crop small{display:block}.shop-tools{display:flex;align-items:center;gap:20px;margin-bottom:22px;color:#8b9279;font-size:11px}.shop-tools>input{flex:1;max-width:410px;background:#fffdf5;border:1px solid #dddcc7;border-radius:10px;padding:12px;font:inherit;color:var(--ink)}.shop-grid .product{min-height:240px}.shop-grid .product p{max-width:210px;line-height:1.5}.locked{opacity:.6}.text-button{background:none;font-size:10px;padding:8px;color:#88916f}.muted{display:block;font-size:9px;color:#9b9d87;margin-top:12px}.unit-card .green{display:block;padding:8px 18px;font-size:11px;margin:10px auto}.unit-status{display:block;color:#779347;font-size:11px}.ingredients{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.ingredients>span{padding:8px;border:1px solid #e5e2ce;border-radius:9px;background:#f8f6e8;min-width:65px;text-align:center}.ingredients img{display:block;width:36px;height:36px;object-fit:contain;margin:0 auto 3px}.ingredients b{font-size:11px}.ingredients small{display:block;font-size:8px;max-width:90px}.ingredients .missing b{color:#bf8060}.ingredients .enough b{color:#6b913e}.order-card{padding:25px 15px;border:1px solid var(--line);border-radius:15px;background:#fffdf5;text-align:center}.order-card h3{margin:8px 0 20px}.order-card .green{font-size:11px}.week-section{margin-top:30px}.chapter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.chapter{background:#fffdf3;border:1px solid #e1e2cc;border-radius:14px;padding:22px}.chapter h3{margin:10px 0;font-size:19px}.chapter p{font-size:11px}.chapter .green{font-size:11px;padding:10px 15px}.chapter.completed{background:#edf2df}.chapter-goal{display:flex;justify-content:space-between;font-size:10px;margin:10px 0 5px;color:#889274}.mini-progress{height:4px;background:#e6e8d5;border-radius:4px;overflow:hidden}.mini-progress i{height:100%;display:block;background:#9ebf65}.reward-hero{padding:30px}.reward-hero p{font-size:12px}.days{gap:8px}.day{min-width:82px;padding:13px 9px}.ready-box{padding:15px;border:1px solid #c9dc9d;background:#eff4df;border-radius:12px;margin:15px 0;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.ready-box span{font-size:12px}.ready-box img{height:32px;width:32px;object-fit:contain;vertical-align:middle}.queue-list{display:grid;gap:5px}.queue-list>div{display:flex;align-items:center;gap:10px;padding:8px;background:#f4f1df;border-radius:8px;font-size:12px}.queue-list img{width:30px;height:30px;object-fit:contain}.queue-list small{margin-left:auto;color:#9a9478;font-size:10px}.unit-title{display:flex;gap:20px;align-items:center}.unit-title>img{height:90px;width:95px;object-fit:contain}.unit-title h2{font-size:23px;margin:6px 0}.unit-title p{margin:5px 0;font-size:11px}.recipe-list{display:grid;gap:12px}.recipe-card{display:flex;align-items:center;gap:15px;padding:15px;border:1px solid #e3e3cf;border-radius:12px;background:#fffcf1}.recipe-card>img{width:54px;height:60px;object-fit:contain;flex-shrink:0}.recipe-card>div{flex:1}.recipe-card b{font-size:13px}.recipe-card small{display:block;font-size:10px;color:#9a9d7f}.recipe-card .ingredients{justify-content:flex-start;margin-top:10px}.recipe-card .ingredients>span{padding:5px;min-width:48px}.recipe-card .ingredients img{width:25px;height:25px}.recipe-card .ingredients small{max-width:65px;font-size:7px}.recipe-card .green{font-size:10px;padding:9px 12px;align-self:center}.recipe-card p{font-size:11px}.upgrade-box{border-top:1px solid var(--line);margin-top:25px;padding-top:10px}.upgrade-box p{font-size:11px}.inventory-item small{display:block;font-size:9px;color:#9b9d84}.inventory-item{gap:10px}.inventory-item>div{flex:1}.inventory-item b{font-size:12px}.inventory-item .buy{flex-shrink:0}.inventory-list{max-height:50vh;overflow:auto}.crop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.crop-option{background:#f4f1df;border:1px solid #e1ddc1;padding:15px 8px;border-radius:11px}.crop-option.selected{background:#e7eecd;border-color:#9db764}.crop-option img{width:50px;height:55px;object-fit:contain;display:block;margin:auto}.crop-option b,.crop-option small{display:block}.crop-option b{font-size:12px;margin:8px 0 3px}.crop-option small{font-size:9px;color:#8c9273}.route-options{display:flex;gap:10px;justify-content:center;margin-top:20px}.import-label{display:inline-block;font-size:11px;padding:10px;background:#ebe8d6;border-radius:8px;cursor:pointer;margin-top:8px}.import-label input{display:block;font-size:10px;max-width:220px;margin-top:8px}dialog{max-width:760px;max-height:90vh;overflow:auto}.intro-card .green,.intro-card .buy{margin:8px 6px 0 0}.order-preview h2{font-size:16px}.farm-map .machine span{font-size:8px}@media(max-width:1200px){.chapter-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){nav button{width:16.66%;padding:5px 0}nav span{font-size:7px!important}nav button{font-size:23px}.farm-controls .crop-selector{gap:4px}.farm-controls #choose-crop{min-width:100px}.farm-controls #plantall{font-size:8px;padding:5px}.shop-tools{flex-wrap:wrap;gap:10px}.shop-tools>input{width:100%;max-width:none;flex-basis:100%;padding:10px}.shop-grid .product{min-height:230px}.chapter-grid{grid-template-columns:1fr}.chapter{padding:20px}.chapter h3{font-size:18px}.day{min-width:75px}.reward-hero{padding:22px 12px}.recipe-card{gap:8px;padding:10px;flex-wrap:wrap}.recipe-card>img{width:35px;height:40px}.recipe-card>div{min-width:150px}.recipe-card .green{margin-left:auto}.recipe-card .ingredients small{font-size:7px}.recipe-card .ingredients>span{min-width:40px}.queue-list>div{font-size:10px}.queue-list small{font-size:8px}.unit-title{gap:10px}.unit-title h2{font-size:21px}.unit-title>img{width:65px}.inventory-item{padding:9px 0;gap:6px}.inventory-item .buy{padding:5px 7px;font-size:9px}.inventory-item b{font-size:11px}.crop-grid{grid-template-columns:repeat(2,1fr)}dialog{padding:22px 17px}.order-card{padding:20px 8px}.order-card h3{font-size:14px}.order-card .ingredients{gap:5px}.order-card .ingredients>span{min-width:50px;padding:5px}.route-options{flex-wrap:wrap}.farm-map .machine{width:55px;height:60px}.farm-map .machine:nth-child(n+4){top:285px!important}.farm-extra .buy{font-size:8px}.farm-extra{gap:5px}.unit-card .green{font-size:10px}.unit-card .unit-status{font-size:9px}.farm-controls .green{font-size:10px}}
/* Illustrated game navigation */
.sidebar nav{gap:7px}.sidebar nav button{position:relative;isolation:isolate;min-height:60px;padding:7px 12px;gap:12px;border:1px solid transparent;border-radius:13px;color:#80866b}.sidebar nav .nav-art{display:block;width:43px;height:43px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 2px 1px #72502b16);transition:transform .18s}.sidebar nav button>span{font-size:13px;font-weight:900;letter-spacing:-.15px}.sidebar nav button.active{border-color:#d0dcad;background:linear-gradient(#f0f5dc,#e5edcb);box-shadow:inset 0 1px #fffef1,0 2px 0 #cbd9a5;color:#526e31}.sidebar nav button:hover .nav-art{transform:translateY(-2px) rotate(-3deg)}.sidebar nav button.active .nav-art{transform:translateY(-2px) scale(1.08)}.sidebar nav em{position:absolute;top:6px;left:43px;min-width:16px;height:16px;padding:0 4px;display:grid;place-items:center;background:linear-gradient(#f99164,#d45d37);border:1px solid #b9522d;box-shadow:0 1px 1px #714b2c20;color:#fff4d5;font:900 9px/1 'Nunito',system-ui;border-radius:6px}.sidebar nav i{position:absolute;left:43px;top:9px;width:8px;height:8px;border:2px solid #fff2c9;background:#f38e45;box-shadow:0 1px 2px #70472450}.sidebar nav button:focus-visible{outline:3px solid #e7b74d;outline-offset:2px}@media(min-width:561px) and (max-width:900px){.sidebar nav button{padding:7px 3px}.sidebar nav .nav-art{width:43px;height:43px}.sidebar nav em{left:34px}.sidebar nav i{left:36px}}
@media(max-width:560px){.sidebar{height:calc(84px + env(safe-area-inset-bottom,0px));background:linear-gradient(#fffbed,#f1e9ce);border-top:2px solid #d6c99f;box-shadow:0 -4px 18px #6b72401a;border-radius:18px 18px 0 0;padding:0 5px env(safe-area-inset-bottom,0px);overflow:visible}.sidebar nav{height:82px;gap:1px;align-items:stretch}.sidebar nav button{width:auto;flex:1;min-width:0;min-height:0;gap:0;border:0;border-radius:12px;padding:4px 0 6px;margin:3px 0;background:transparent;justify-content:flex-end;transform:none}.sidebar nav button::before{content:'';position:absolute;z-index:-1;inset:4px 2px 1px;border-radius:12px;transition:background .2s}.sidebar nav .nav-art{width:48px;height:48px;max-width:100%;margin:0 auto 2px;object-fit:contain;filter:drop-shadow(0 2px 1px #704b2b20);transform:none}.sidebar nav button>span{display:block;font-size:9px!important;line-height:13px;letter-spacing:-.25px;color:#8b7b57;font-weight:900;text-shadow:0 1px #fff8dc}.sidebar nav button.active{border:0;background:none;box-shadow:none}.sidebar nav button.active::before{background:linear-gradient(#f5f2ce,#dde9ba);border:1px solid #c0ce95;box-shadow:inset 0 1px #fffdf0,0 2px 0 #becb94}.sidebar nav button.active::after{content:'';position:absolute;top:0;left:calc(50% - 9px);width:18px;height:3px;border-radius:3px;background:#80a246;box-shadow:0 1px #fff9df}.sidebar nav button.active .nav-art{transform:translateY(-5px) scale(1.1)}.sidebar nav button.active>span{color:#516d32}.sidebar nav button:hover .nav-art{transform:translateY(-2px)}.sidebar nav button.active:hover .nav-art{transform:translateY(-5px) scale(1.1)}.sidebar nav em{display:grid;left:auto;right:4px;top:4px;font-size:8px;min-width:15px;height:15px;border-radius:6px}.sidebar nav i{display:block;left:auto;right:6px;top:6px;width:9px;height:9px}.sidebar nav button:active .nav-art{transform:translateY(0) scale(.95)}main{padding-bottom:calc(98px + env(safe-area-inset-bottom,0px))}#toast{bottom:calc(100px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 30px);width:max-content;font-size:12px}dialog{max-height:85dvh}}
/* Cosmetic weather. All overlays pass pointer events through to the farm. */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.map-toolbar{position:relative;z-index:1}.map-weather{display:flex;align-items:center;gap:5px;max-width:205px}.map-weather #weather-icon{display:flex;width:17px;height:17px;flex-shrink:0;color:#a08d4e}.map-weather svg{width:100%;height:100%}.map-weather select{border:0;border-bottom:1px dashed #c7cda9;background:transparent;color:#7d8862;font:700 10px 'Nunito',system-ui;max-width:180px;padding:2px 0;cursor:pointer;outline-offset:4px}.farm-map{isolation:isolate}.weather-layer{position:absolute;inset:0;z-index:4;pointer-events:none;overflow:hidden;border-radius:inherit}.weather-layer>div{position:absolute;inset:0;opacity:0;transition:opacity 2.5s ease;pointer-events:none}.weather-tint{background:#526a89;mix-blend-mode:multiply}.sun-glow{background:radial-gradient(ellipse at 85% -10%,#fff3ad99,transparent 65%);mix-blend-mode:soft-light}.cloud-shadows i{position:absolute;top:calc(7% + var(--cloud)*25%);left:-70%;width:80%;height:40%;border-radius:50%;background:radial-gradient(ellipse,#365b5236 0,#365b5220 40%,transparent 70%);filter:blur(10px);animation:farm-cloud-drift calc(28s + var(--cloud)*7s) linear infinite;animation-delay:calc(var(--cloud)*-13s);will-change:transform}.rain-drops i{position:absolute;top:-35px;left:var(--x);height:var(--length);width:1.5px;border-radius:3px;background:linear-gradient(transparent,#e4f6ff);opacity:var(--alpha);animation:farm-rain var(--speed) linear infinite;animation-delay:var(--delay);will-change:transform}.wind-streaks i{position:absolute;top:var(--y);left:-45%;width:35%;height:2px;border-radius:50%;background:linear-gradient(90deg,transparent,#fffdeb90,transparent);animation:farm-wind 3s linear infinite;animation-delay:var(--delay)}.wind-leaves i{position:absolute;left:-12%;top:var(--y);width:12px;height:6px;background:linear-gradient(35deg,#a8b957,#e2bd68);border-radius:1px 80% 1px 80%;box-shadow:0 1px 1px #68843b44;animation:farm-leaf var(--speed) linear infinite;animation-delay:var(--delay);will-change:transform}.map-tip,.zoom{z-index:5}.farm-map[data-weather="sunny"] .sun-glow{opacity:.8}.farm-map[data-weather="cloudy"] .weather-tint{opacity:.12}.farm-map[data-weather="cloudy"] .cloud-shadows{opacity:.9}.farm-map[data-weather="rain"] .weather-tint{opacity:.28}.farm-map[data-weather="rain"] .cloud-shadows{opacity:.7}.farm-map[data-weather="rain"] .rain-drops{opacity:1}.farm-map[data-weather="wind"] .sun-glow{opacity:.25}.farm-map[data-weather="wind"] .cloud-shadows{opacity:.5}.farm-map[data-weather="wind"] .wind-streaks,.farm-map[data-weather="wind"] .wind-leaves{opacity:1}.farm-map[data-weather="wind"] .trees img{transform-origin:50% 90%;animation:farm-tree-sway 3.2s ease-in-out infinite alternate}.farm-map[data-weather="wind"] .trees img:nth-child(even){animation-delay:-1.5s;animation-duration:4.1s}.weather-layer>div:not(.sun-glow):not(.weather-tint)>i{animation-play-state:paused}.farm-map[data-weather="cloudy"] .cloud-shadows i,.farm-map[data-weather="rain"] .cloud-shadows i,.farm-map[data-weather="rain"] .rain-drops i,.farm-map[data-weather="wind"] .cloud-shadows i,.farm-map[data-weather="wind"] .wind-streaks i,.farm-map[data-weather="wind"] .wind-leaves i{animation-play-state:running}.farm-map.weather-paused .weather-layer i,.farm-map.weather-paused .trees img{animation-play-state:paused!important}@keyframes farm-cloud-drift{from{transform:translateX(0)}to{transform:translateX(240%)}}@keyframes farm-rain{from{transform:translate(0,-30px) rotate(15deg)}to{transform:translate(-100px,600px) rotate(15deg)}}@keyframes farm-wind{0%{transform:translateX(0) scaleX(.6);opacity:0}20%{opacity:.6}80%{opacity:.6}100%{transform:translateX(450%) scaleX(1);opacity:0}}@keyframes farm-leaf{0%{transform:translate(0,0) rotate(0);opacity:0}10%{opacity:.9}50%{transform:translate(450px,24px) rotate(var(--spin))}90%{opacity:.9}100%{transform:translate(1100px,-16px) rotate(540deg);opacity:0}}@keyframes farm-tree-sway{from{transform:rotate(-1.5deg)}to{transform:rotate(2.5deg)}}@media(max-width:560px){.map-weather{max-width:180px;gap:4px}.map-weather select{max-width:150px;font-size:9px}.map-weather #weather-icon{width:15px;height:15px}.wind-leaves i:nth-child(n+5),.rain-drops i:nth-child(n+25){display:none}}@media(prefers-reduced-motion:reduce){.weather-layer i,.farm-map[data-weather="wind"] .trees img{animation:none!important;will-change:auto}.weather-layer>div{transition:none}.farm-map[data-weather="rain"] .rain-drops{opacity:.55;background:repeating-linear-gradient(105deg,transparent 0 43px,#e4f6ff38 44px,transparent 45px 85px)}.farm-map[data-weather="wind"] .wind-streaks{opacity:.35;background:repeating-linear-gradient(0deg,transparent 0 55px,#fff7d52b 56px,transparent 57px 100px)}}
