*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#1d3529;color:#eee7c6;font-family:ui-monospace,'Courier New',monospace;overscroll-behavior:none}button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible{outline:2px solid #f0cd7c;outline-offset:3px}#game{position:absolute;inset:0;width:100%;height:100%;display:block;image-rendering:pixelated;touch-action:none;outline:none}.hud{position:fixed;z-index:2;pointer-events:none}.top{left:25px;right:25px;top:max(20px,env(safe-area-inset-top));display:flex;justify-content:space-between;align-items:start;gap:12px}.hud button,.resources{pointer-events:auto}.avatar{display:flex;align-items:center;gap:12px;padding:7px 14px 7px 7px;background:#193627ed;border:1px solid #68865b;box-shadow:3px 4px 0 #0c211bb0;color:#f5dfaa;text-align:left}.avatar img{width:45px;height:45px;object-fit:cover;border:1px solid #a3ae75}.avatar span{font-size:11px;font-weight:bold;letter-spacing:1px}.avatar small{display:block;font-size:8px;color:#a6bd8c;margin-top:7px;letter-spacing:1.5px}.resources{display:flex;align-items:center;gap:22px;background:#193627ef;border:1px solid #668459;padding:13px 15px;box-shadow:3px 4px 0 #0c211bb0;font-size:15px}.resources small{font-size:8px;color:#95ae7e;margin-left:5px}.coin,.star{color:#edca74}.resources button{border:0;border-left:1px solid #557048;color:#b6c898;background:none;padding-left:14px;font-size:23px;line-height:1}.quest{position:fixed;left:25px;top:105px;z-index:2;background:#1c3827de;border:1px solid #607f50;border-left:3px solid #d2b56c;color:#f3dfae;box-shadow:3px 4px 0 #142a1c70;padding:13px 18px;text-align:left;max-width:260px}.quest>span{font-size:8px;color:#bba86b;letter-spacing:1.5px;display:block}.quest b{font-size:11px;font-weight:400;display:block;line-height:1.6;margin:7px 0}.quest small{font-size:8px;color:#91aa7c}.minimap{position:fixed;right:25px;bottom:25px;padding:5px;background:#1b3629dd;border:1px solid #6b8757;z-index:2;box-shadow:3px 4px 0 #0c211ba0}.minimap canvas{width:150px;height:105px;display:block;image-rendering:pixelated}.minimap span{font-size:8px;display:block;text-align:center;color:#a2b68a;padding:4px 0 0}.toolbar{position:fixed;z-index:3;left:50%;transform:translateX(-50%);bottom:max(25px,env(safe-area-inset-bottom));display:flex;gap:7px;background:#142c21d9;padding:7px;border:1px solid #70875b;box-shadow:3px 4px 0 #0c211ba0}.toolbar button{width:55px;height:53px;background:#304d33;color:#ecdcaa;border:1px solid #617c4c;border-bottom:3px solid #18311f;font-size:21px;position:relative}.toolbar button:hover{background:#496641}.toolbar small{display:block;font-size:7px;margin-top:4px;letter-spacing:1px}.toolbar .action{background:#d5b66e;border-color:#ecd59a;border-bottom-color:#977c44;color:#263e29;font-weight:bold}.toolbar i{width:5px;height:5px;background:#efd080;position:absolute;right:6px;top:5px;border-radius:50%}.prompt{position:fixed;z-index:2;bottom:113px;left:50%;transform:translateX(-50%);color:#f4e4b5;background:#183324e8;border:1px solid #79945d;padding:10px 18px;box-shadow:2px 3px 0 #142b1d8c;font-size:11px;pointer-events:none;text-align:center;max-width:80%;line-height:1.5}.desktop-hint{position:fixed;left:25px;bottom:25px;font-size:8px;color:#e6d7a3;background:#1b3525b0;padding:8px}.desktop-hint span{color:#9bb68a;margin:0 12px 0 5px}.dpad{display:none}dialog{background:#f3edda;color:#30452e;border:4px solid #3b5939;padding:30px;box-shadow:5px 5px 0 #183022,0 30px 120px #0005;width:470px;max-width:93%;max-height:84dvh}dialog::backdrop{background:#10291caa;backdrop-filter:blur(4px)}#close{position:absolute;right:10px;top:6px;background:none;border:0;font-size:25px;color:#738267}.eyebrow{font-size:9px;color:#86906c;letter-spacing:1.7px}dialog h2{font-size:23px;letter-spacing:-1px;margin:14px 0}dialog p{font-size:12px;line-height:1.9;color:#728064}.choice{width:100%;display:flex;align-items:center;gap:12px;padding:15px 12px;background:#e5e7cf;border:1px solid #bac5a0;border-bottom:3px solid #9eac86;color:#355133;text-align:left;margin:10px 0}.choice .icon{font-size:25px}.choice b{display:block;font-size:12px}.choice small{display:block;font-size:9px;margin-top:6px;color:#80906b}.choice .price{margin-left:auto;font-size:11px;color:#9b803b;white-space:nowrap}.choice:disabled{opacity:.45;cursor:not-allowed}.choice:hover:not(:disabled){background:#dce3c5}.info-row{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px dashed #c8ceb4;font-size:11px}.task-row{padding:13px 0;border-bottom:1px dashed #c8ceb4}.task-row b{font-size:12px}.task-row p{margin:7px 0}.task-row button{background:#345539;color:#f0dfa2;border:0;border-bottom:3px solid #1d3724;padding:8px 12px;font-size:10px}.task-row button:disabled{opacity:.4}#toast{position:fixed;top:24%;left:50%;transform:translate(-50%,-200px);opacity:0;transition:.2s;background:#183627;color:#f7e1a2;border:2px solid #a4b781;box-shadow:3px 3px 0 #102417;padding:14px 20px;z-index:20;font-size:12px;max-width:90%;text-align:center}#toast.show{transform:translate(-50%,0);opacity:1}.intro{position:fixed;inset:0;z-index:10;display:flex;align-items:flex-end;justify-content:center;padding:0 6% 7%;overflow:hidden;background:linear-gradient(0deg,#0a2019f5,#142b2480)}.intro[hidden]{display:none}.intro-shade{position:absolute;inset:0;background:radial-gradient(ellipse at 25% 50%,#bba56515,transparent 60%);backdrop-filter:blur(3px)}.narrator-wrap{position:relative;width:43%;max-width:540px;align-self:flex-end;z-index:1;flex-shrink:0;margin-right:-25px;margin-bottom:-10px}.narrator{width:100%;display:block;border-radius:8px;image-rendering:pixelated;mask-image:linear-gradient(to bottom,#000 80%,transparent 99%);filter:drop-shadow(0 0 40px #d0ad4d20)}.dialogue{position:relative;z-index:2;background:#163425f5;border:1px solid #a39760;border-bottom:4px solid #796b3e;box-shadow:8px 8px 0 #071d16aa;padding:30px 34px;width:55%;max-width:600px;min-height:280px}.speaker{font-size:13px;letter-spacing:2px;color:#e5c47d;font-weight:bold}.speaker span{display:block;font-size:7px;color:#87a477;letter-spacing:2px;margin-top:7px}.dialogue h1{font-size:27px;line-height:1.3;font-weight:500;letter-spacing:-.7px;margin:25px 0 14px}.dialogue p{font-size:13px;line-height:1.9;color:#bacbab;min-height:75px;margin:0}.dialogue-bottom{display:flex;align-items:center;gap:15px;margin-top:30px}#dots{display:flex;gap:6px;margin-right:auto}#dots i{width:6px;height:6px;background:#4c6946}#dots i.on{background:#d9bf7b}#nextIntro{background:#d7b66b;color:#233b29;border:1px solid #e9ce8d;border-bottom:3px solid #987c42;padding:11px 16px;font-size:11px;font-weight:bold}#skipIntro{background:none;color:#8ba67a;border:0;font-size:10px}.intro-logo{position:absolute;top:8%;left:8%;color:#efdaa4;font-size:18px;letter-spacing:4px}.intro-logo small{display:block;font-size:8px;letter-spacing:3px;margin-top:12px;color:#94aa82}@media(max-width:900px){.desktop-hint{display:none}.minimap{right:16px;bottom:20px}.minimap canvas{width:105px;height:74px}.toolbar{left:25px;transform:none}.prompt{left:25px;transform:none;max-width:65%;font-size:10px}.intro{padding:0 4% 7%}.dialogue{padding:25px;min-height:300px}.dialogue h1{font-size:23px}}@media(pointer:coarse){.dpad{display:grid}}@media(max-width:600px){.top{left:12px;right:12px;top:max(12px,env(safe-area-inset-top));gap:6px}.avatar{padding:4px;gap:7px}.avatar img{width:34px;height:34px}.avatar span{font-size:8px;letter-spacing:.3px;padding-right:4px}.avatar small{font-size:6px;margin-top:5px;letter-spacing:.6px}.resources{gap:10px;font-size:11px;padding:10px 8px}.resources small{display:none}.resources button{font-size:20px;padding-left:8px}.resources>span:nth-child(2){display:none}.quest{left:12px;top:75px;padding:9px 12px;max-width:195px}.quest>span{font-size:6px}.quest b{font-size:9px;margin:5px 0}.quest small{display:none}.minimap{right:12px;top:76px;bottom:auto}.minimap canvas{width:83px;height:58px}.minimap span{font-size:6px}.toolbar{bottom:max(16px,env(safe-area-inset-bottom));left:auto;right:12px;padding:5px;gap:4px}.toolbar button{width:39px;height:43px;font-size:19px}.toolbar small{font-size:5px;letter-spacing:.3px}.toolbar button:first-child,.toolbar button:nth-child(2){display:none}.toolbar .action{width:51px}.prompt{bottom:90px;left:50%;transform:translateX(-50%);width:max-content;max-width:90%;font-size:9px;padding:8px 12px}.dpad{display:grid;position:fixed;z-index:3;bottom:max(16px,env(safe-area-inset-bottom));left:13px;grid-template-columns:33px 33px 33px;grid-template-rows:30px 30px 30px;gap:2px}.dpad button{background:#26492fdd;border:1px solid #71895a;border-bottom:3px solid #132b1c;color:#e1d298;font-size:13px;touch-action:none;user-select:none}.dpad button[data-dir=up]{grid-column:2}.dpad button[data-dir=left]{grid-column:1;grid-row:2}.dpad span{grid-column:2;grid-row:2;display:grid;place-items:center;color:#8fa778;background:#22422a99}.dpad button[data-dir=right]{grid-column:3;grid-row:2}.dpad button[data-dir=down]{grid-column:2;grid-row:3}.intro{display:block;padding:0}.intro-logo{top:6%;left:7%;font-size:15px}.narrator-wrap{position:absolute;width:75%;max-width:370px;left:50%;transform:translateX(-50%);top:13%;margin:0}.dialogue{position:absolute;bottom:max(20px,env(safe-area-inset-bottom));left:5%;width:90%;max-width:none;padding:22px;min-height:260px}.speaker{font-size:11px}.speaker span{font-size:6px}.dialogue h1{font-size:21px;margin:18px 0 10px}.dialogue p{font-size:11px;min-height:65px}.dialogue-bottom{margin-top:20px}#nextIntro{font-size:10px;padding:10px 12px}dialog{padding:24px}#toast{top:25%;font-size:10px}}
/* Vivid garden HUD: energy, wallet and always-visible map. */
.top{top:max(16px,env(safe-area-inset-top))}.avatar,.resources{background:#103f30f2;border-color:#73bb78;box-shadow:3px 4px 0 #0c211bb0}.resources{gap:16px}.resources button.balance-chip{border:0;padding:0 14px 0 0;border-right:1px solid #578767;color:#ac9eff;font-size:13px;line-height:1.4}.balance-chip small{font-size:7px;color:#c4b6f3}.energy-hud{position:fixed;z-index:3;left:25px;top:92px;width:205px;padding:12px 32px 10px 13px;background:#123f2df0;border:1px solid #7fbf70;box-shadow:3px 4px 0 #0c211b80;color:#f4edb8;text-align:left}.energy-hud>div:first-child{display:flex;justify-content:space-between;font-size:10px;gap:7px}.energy-hud>div:first-child span{color:#fbd55d}.energy-track{height:9px;background:#092e23;border:1px solid #65864f;margin-top:8px;padding:1px}.energy-track i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#70c63a,#cae960);transition:width .3s;box-shadow:0 0 8px #a4dd5630}.energy-hud small{font-size:7px;color:#94bd89;display:block;margin-top:6px}.energy-plus{position:absolute;right:9px;top:26px;color:#ffe293;font-size:20px}.energy-hud.low .energy-track i{background:#ee9653}.quest{top:183px;max-width:205px;background:#164c32e8;border-color:#7eb871}.minimap{width:190px;background:#124830f5;border:2px solid #88c17b;box-shadow:4px 4px 0 #123326b0;padding:8px}.minimap canvas{width:170px;height:119px}.map-title{font-size:8px;letter-spacing:.8px;color:#eff1b1;margin-bottom:8px}.map-title b{float:right;color:#b6d993}.map-legend{display:flex;justify-content:space-between;margin-top:7px}.map-legend span{font-size:6px;color:#c5e3a3;padding:0}.map-legend span:first-child{color:#ffed67}.map-legend span:last-child{color:#edc58f}.minimap>span{margin-top:3px}.energy-summary{display:flex;align-items:center;justify-content:space-between;background:#dce7c5;border:1px solid #adc28b;padding:17px;margin:16px 0}.energy-summary b{font-size:23px;color:#568b35}.energy-summary span{font-size:10px;color:#6f8356}.energy-table{font-size:11px;border:1px solid #c0cba8}.energy-table>div{display:grid;grid-template-columns:1.5fr 1fr 1fr;padding:11px 13px;border-bottom:1px solid #d1d7bf}.energy-table>div:first-child{background:#dee5ca;font-size:9px;color:#6e8356}.energy-table>div:last-child{border:0}.demo-notice{padding:12px;background:#e6dfed;border:1px solid #c7b9d1;margin-top:16px}.demo-notice>b{font-size:8px;letter-spacing:1px;color:#897197}.demo-notice p{font-size:10px;margin:6px 0 0;color:#7d6e89}.toolbar{background:#0e3827ef;border-color:#8bc66d}.toolbar button{background:#24643f;border-color:#79ac5b;color:#f8e5a2}.toolbar button:hover{background:#388252}.toolbar .action{background:#f6c859;border-color:#ffedaa;color:#29412b}.prompt{background:#103d28ef;border-color:#9ec878;color:#fff0b7}.dialogue{background:#0d3c2df5}.speaker{color:#ffe09a}
@media(max-width:900px){.minimap{width:150px}.minimap canvas{width:130px;height:91px}.map-title{font-size:7px}.resources{gap:10px}}
@media(max-width:600px){.top{top:max(10px,env(safe-area-inset-top));left:10px;right:10px;flex-wrap:wrap}.resources{gap:8px;padding:8px 7px}.resources button.balance-chip{font-size:10px;padding-right:7px}.balance-chip small{display:block!important;font-size:5px!important;margin:2px 0 0!important}.resources .star{display:none}.avatar img{width:31px;height:31px}.avatar span{font-size:7px}.avatar small{font-size:5px}.energy-hud{top:72px;left:10px;width:165px;padding:9px 26px 8px 10px}.energy-hud>div:first-child{font-size:8px}.energy-track{height:8px;margin-top:6px}.energy-hud small{font-size:6px;margin-top:4px}.energy-plus{font-size:16px;right:8px;top:21px}.quest{top:151px;left:10px;max-width:165px;padding:8px 10px}.quest b{font-size:8px}.minimap{width:118px;top:72px;right:10px;padding:6px}.minimap canvas{width:102px;height:71px}.map-title{font-size:6px;letter-spacing:0;margin-bottom:5px}.map-legend{margin-top:5px}.map-legend span{font-size:5px}.minimap>span{font-size:5px}.toolbar button{width:34px}.toolbar .action{width:43px}.toolbar small{font-size:5px}.prompt{bottom:117px}.energy-summary{padding:12px}.energy-summary b{font-size:19px}}
/* Wallet connection stays separate from the game's test-token balance. */
.resources button.wallet-chip{padding:7px 9px;border:1px solid #8bc68a;background:#245e40;color:#ffe6a3;font-size:9px;white-space:nowrap;line-height:1.4}.resources button.wallet-chip.connected{color:#bdedab}.wallet-connected{background:#dce7cd;border:1px solid #adc295;padding:15px;margin:16px 0}.wallet-connected>span,.wallet-note>b{display:block;font-size:9px;letter-spacing:1px;color:#577748}.wallet-connected code{display:block;overflow-wrap:anywhere;font-size:12px;margin:10px 0;line-height:1.7}.wallet-connected small{font-size:10px;color:#657959}.wallet-note{border-top:1px solid #c1cbae;padding-top:15px;margin-top:18px}.wallet-note p{font-size:11px;margin-bottom:0}.wallet-message{background:#e8dfbc;padding:12px;border-left:3px solid #a58d45;font-size:11px;line-height:1.7}dialog .wallet-message{color:#6d603e}@media(max-width:900px){.resources{gap:8px}.resources button.wallet-chip{font-size:8px;padding:6px}}@media(max-width:600px){.resources button.wallet-chip{font-size:7px;padding:6px 5px}.resources{gap:5px}.resources button.balance-chip{font-size:9px}.resources{flex-wrap:wrap;justify-content:flex-end;max-width:225px}.resources .coin{font-size:9px}.wallet-connected code{font-size:10px}.energy-hud,.minimap{top:98px}.quest{top:177px}}
/* Real wallet balances and in-game Seeds have distinct counters. */
.resources{gap:14px;padding:10px 13px;align-items:center}.resources .stat-chip{display:flex;align-items:center;gap:9px;text-align:left;min-width:0}.resources .stat-chip>span:last-child{min-width:0}.resources .stat-chip b{display:block;font-size:14px;line-height:1.3;font-variant-numeric:tabular-nums;white-space:nowrap;max-width:190px;overflow:hidden;text-overflow:ellipsis}.resources .stat-chip small{display:block;font-size:7px;margin:4px 0 0;color:#a4c393;white-space:nowrap}.resources button.balance-chip{padding:0 14px;border:0;border-left:1px solid #547b53;border-right:1px solid #547b53;color:#f5d893;background:none}.token-logo{display:block;width:34px;height:34px;object-fit:cover;border-radius:50%;border:1px solid #e3bf62;flex-shrink:0;image-rendering:auto}.stat-icon{font-size:21px}.balance-chip em{font-size:7px;color:#a6bb99;font-style:normal;display:block;margin-top:4px;white-space:nowrap}.resources .harvest-stat b,.resources .star b{font-size:12px}.resources .wallet-chip{flex-shrink:0}.resources .coin{color:#eadb99}@media(max-width:1100px){.resources .harvest-stat,.resources .star{display:none}.resources{gap:10px}.resources .stat-chip b{font-size:12px;max-width:140px}}@media(max-width:600px){.top{display:flex;flex-direction:column;gap:8px}.resources{display:grid;grid-template-columns:1fr 1.4fr;width:100%;max-width:none;padding:9px 10px;gap:0}.resources .stat-chip{display:flex!important;gap:8px}.resources .harvest-stat,.resources .star{display:none!important}.resources .stat-chip small{display:block!important;font-size:6px!important;margin:3px 0 0!important}.resources .stat-chip b{font-size:12px;max-width:155px}.resources button.balance-chip{padding:0 0 0 12px;border-right:0}.token-logo{width:31px;height:31px}.resources button.wallet-chip{position:absolute;top:5px;right:0;font-size:8px;padding:9px}.resources #fullscreen{display:none}.balance-chip em{font-size:6px;max-width:155px;overflow:hidden;text-overflow:ellipsis}.energy-hud,.minimap{top:137px}.quest{top:217px}.stat-icon{font-size:20px}}@media(max-width:360px){.resources .stat-chip b{max-width:125px;font-size:11px}.resources .stat-chip small{font-size:5px!important}.avatar span{font-size:6px}}
.login-screen{position:fixed;inset:0;z-index:9;display:grid;place-items:center;background:#0b231b;overflow:auto;padding:40px 20px}.login-screen[hidden]{display:none}.login-art{position:absolute;inset:0;background:linear-gradient(90deg,#09291a85,#071b1695),url('assets/garden.png') center/cover;filter:blur(2px);opacity:.8}.login-card{position:relative;width:460px;max-width:100%;padding:35px 42px;background:#123c2eed;border:1px solid #9aa86b;box-shadow:10px 10px 0 #061f1780;text-align:center;color:#f4e8b6}.login-logo{width:88px;height:88px;border-radius:50%;border:2px solid #ddbb65;box-shadow:0 0 45px #d9b65022}.login-card .eyebrow{font-size:7px;letter-spacing:2px;color:#b4c68d;margin-top:25px}.login-card h1{font-family:Georgia,serif;font-size:43px;font-weight:normal;letter-spacing:-1.5px;color:#f8dfa0;margin:12px 0}.login-tagline{font-size:12px;line-height:1.8;color:#b9c8aa;margin:10px 0 27px}.login-card label{display:block;text-align:left;font-size:8px;letter-spacing:1.5px;color:#acc48c;margin-bottom:8px}.login-card input{width:100%;background:#0c2e23;color:#eedfaa;border:1px solid #5a7b51;padding:13px 10px;font-family:inherit;font-size:10px;text-align:center;outline:none}.login-card input::placeholder{color:#90a47e}.login-card button{width:100%;margin-top:12px;padding:14px;border:1px solid #729559;font-size:11px}.login-connect{background:#204f35;color:#e6e9bf}.login-enter{background:#e4c77b;color:#24422b;border-bottom:4px solid #a88744!important;font-weight:bold}.login-card button:disabled{opacity:.45;cursor:not-allowed}.login-card #loginStatus{color:#b9cca9;font-size:10px;min-height:36px;line-height:1.8;margin:16px 0 0}.login-card #resumeGame{color:#e4cc87;background:none;border:0;border-top:1px solid #517044;font-size:10px;line-height:1.6}.login-footer{display:block;font-size:6px;letter-spacing:1.8px;color:#7f9d73;margin-top:25px}.save-status{position:fixed;bottom:25px;left:25px;color:#b8d5a6;z-index:4;font-size:9px;background:#153d2cdd;border:1px solid #658750;padding:8px 12px}.save-status[hidden]{display:none}.save-error{color:#efcb7f}.desktop-hint{bottom:65px}.resources #logoutButton{font-size:8px;padding:7px;border:0;border-right:1px solid #547b53;border-radius:0;background:none;color:#a9c797}.login-screen~#toast{z-index:20}@media(max-width:600px){.login-screen{padding:20px}.login-card{padding:25px}.login-logo{width:72px;height:72px}.login-card h1{font-size:37px}.login-card .eyebrow{font-size:6px}.login-tagline{font-size:11px}.save-status{bottom:114px;left:10px;font-size:7px;padding:5px}.resources #logoutButton{position:absolute;right:110px;top:5px;padding:9px;font-size:7px}.resources button.wallet-chip:not(#logoutButton){right:0}.login-card input{font-size:9px}}

.roof-switch{position:fixed;right:22px;top:242px;z-index:3;background:#214c3e;color:#ffe6a6;border:1px solid #c9b66c;border-radius:12px;padding:12px 17px;font-size:11px;font-weight:800;box-shadow:0 5px 20px #142e3350}@media(max-width:600px){.roof-switch{right:12px;top:260px;font-size:9px;padding:10px}}@media(prefers-reduced-motion:reduce){}

#game{image-rendering:auto}.roof-summary{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0;padding:16px;background:#f0e6cb;border-radius:12px;color:#405545}.roof-summary span{font-size:10px;flex:1;min-width:85px}.roof-summary b{display:block;margin-top:7px;font-size:16px}.upgrade-choice small{line-height:1.5;max-width:300px}.upgrade-choice .price{white-space:nowrap}.minimap .map-legend{display:none}
/* Native-resolution type and a calmer, readable game interface. */
html,body,button,input{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}body{font-size:14px;-webkit-font-smoothing:antialiased}button{letter-spacing:0!important}.avatar span{font-size:13px}.avatar small{font-size:10px;letter-spacing:.5px}.resources .stat-chip small{font-size:9px}.resources .stat-chip b{font-size:16px}.resources{gap:10px;border-radius:14px}.avatar,.energy-hud,.quest,.minimap,.toolbar,.prompt{border-radius:12px;box-shadow:0 5px 16px #102e2825}.eyebrow{font-size:11px;letter-spacing:1.2px}.quest b{font-size:13px}.quest small{font-size:10px}.prompt{font-size:13px;max-width:min(720px,85vw);line-height:1.5}.toolbar button{border-radius:8px}.toolbar small{font-size:10px}.minimap .map-title{font-size:10px}.minimap>span{font-size:10px}.energy-hud>div:first-child{font-size:12px}.energy-hud small{font-size:10px}.resources button.wallet-chip{font-size:11px}.resources #logoutButton{font-size:10px}dialog{width:570px;border:1px solid #80977e;border-radius:20px;padding:30px;box-shadow:0 30px 100px #09221b60}dialog h2{font-size:26px;letter-spacing:-.7px;line-height:1.2}dialog p{font-size:14px;line-height:1.65;color:#526550}.choice{border-radius:12px;border:1px solid #c4cbb5;background:#e8ecdc;padding:16px}.choice b{font-size:14px}.choice small{font-size:12px;color:#5e725b;line-height:1.45}.choice .price{font-size:13px;color:#7d672e}.choice:disabled{opacity:.58}.info-row{font-size:14px}.task-row b{font-size:15px}.task-row button{font-size:13px;border-radius:8px}.roof-summary span{font-size:11px}.roof-summary b{font-size:18px}.dialogue p{font-size:16px}.dialogue h1{font-size:29px}.speaker span{font-size:10px}#nextIntro,#skipIntro{font-size:14px}.narrator{image-rendering:auto}.dialogue{border-radius:18px}.login-tagline{font-size:15px}.login-card label{font-size:11px}.login-card input{font-size:13px}.login-card button{font-size:14px;border-radius:10px}.login-card #loginStatus{font-size:13px}.login-card .eyebrow{font-size:10px}.login-footer{font-size:9px}.login-card{border-radius:22px}.save-status{font-size:12px}#toast{font-size:14px;border-radius:12px}.desktop-hint{font-size:11px}.tool-readout{position:fixed;top:170px;left:25px;z-index:3;background:#164831ee;border:1px solid #8cba81;border-radius:9px;padding:8px 10px;font-size:12px;color:#e0ebcc}.quest{top:218px}.roof-switch{font-size:12px}.penny-tip{position:fixed;left:50%;bottom:140px;transform:translateX(-50%);z-index:7;width:min(660px,94vw);display:flex;gap:20px;align-items:center;background:#143e31f5;border:1px solid #b7b77a;border-radius:20px;padding:22px;box-shadow:0 18px 70px #0c291e55}.penny-tip[hidden]{display:none}.penny-tip>img{width:100px;height:130px;object-fit:cover;border-radius:12px}.penny-tip small,.penny-inline small{font-size:10px;letter-spacing:1.3px;color:#c9c38f}.penny-tip h2{font-size:22px;margin:7px 0;color:#f6e1ad}.penny-tip p{font-size:14px;line-height:1.6;color:#d3e1c8;margin:9px 0}.penny-tip button{background:#e0c278;border:0;border-radius:8px;color:#244434;padding:10px 15px;font-size:13px;font-weight:650;margin-top:7px}.penny-inline{display:flex;gap:14px;align-items:center;padding:15px;background:#e3ead7;border:1px solid #becfaf;border-radius:14px;margin-bottom:22px}.penny-inline img{width:66px;height:82px;object-fit:cover;border-radius:10px}.penny-inline small{color:#6c7e56}.penny-inline h3{font-size:16px;margin:5px 0}.penny-inline p{font-size:13px;margin:5px 0;line-height:1.5}.shop-tab{border:1px solid #8aa681;border-radius:10px;padding:11px 14px;background:#dce7d1;color:#34593c;font-size:13px;width:100%;text-align:left}.bag-heading{display:flex;justify-content:space-between;align-items:center;gap:18px}.bag-heading>span{white-space:nowrap;color:#6d7f5d;font-size:12px}#modal:has(.slot-grid){width:800px}.bag-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:20px;margin-top:22px}.slot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.bag-slot{position:relative;aspect-ratio:1;border:1px solid #aeba9e;background:linear-gradient(145deg,#f5f3e5,#dfe6ce);border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 3px #ffffff45;color:#314e39;padding:8px}.bag-slot.selected{border:2px solid #728a4b;background:#ecedcd;box-shadow:0 0 0 3px #a3b67830}.slot-icon{font-size:32px}.slot-kind{position:absolute;top:7px;left:8px;font-size:8px;color:#6d7e60;letter-spacing:.4px}.slot-count{position:absolute;right:8px;bottom:8px;font-size:14px}.bag-slot.empty{opacity:.53}.bag-slot.vacant{background:#d6decc88;border-style:dashed;box-shadow:none;color:#a4b19a;font-size:20px}.slot-meter{position:absolute;bottom:5px;left:7px;right:24px;height:4px;border-radius:4px;background:#a9b49b;overflow:hidden}.slot-meter i{display:block;height:100%;background:#5f9e7e}.item-detail{background:#e2e9d7;border:1px solid #c5d0b7;border-radius:14px;padding:22px}.detail-icon{font-size:47px;display:block;margin-bottom:13px}.item-detail small{font-size:10px;color:#7b8b69;letter-spacing:1px}.item-detail h3{font-size:20px;margin:7px 0}.item-detail p{font-size:13px}.item-detail>b{font-size:13px}.bag-wallet{margin:20px 0 10px;padding:15px 0;border-top:1px solid #c3cfb5;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:14px}.bag-wallet>span{display:flex;gap:7px;align-items:center}.bag-wallet img{width:25px;height:25px;border-radius:50%}.bag-wallet small{font-size:9px;color:#76865d}.shop-balance{color:#7e692e!important}.collected-chip{border-left:1px solid #547b53;padding-left:10px}.resources .collected-chip .token-logo{width:27px;height:27px}.resources .collected-chip small{max-width:110px;white-space:normal}.balance-chip em{font-size:9px}.roof-summary{font-size:13px}.intro-logo small{font-size:11px}.login-art{filter:none}.wallet-connected code{font-size:14px}.wallet-note p{font-size:13px}.wallet-note>b{font-size:11px}.wallet-message{font-size:13px}
@media(max-width:1100px){.resources .collected-chip small{font-size:8px}.resources .stat-chip b{font-size:14px}.resources{gap:7px}.avatar span{font-size:11px}.resources .collected-chip{display:flex!important}.resources .collected-chip .token-logo{display:none}.resources .harvest-stat,.resources .star{display:none}}
@media(max-width:600px){.resources{grid-template-columns:1fr 1fr 1.3fr;border-radius:12px}.resources .stat-chip b{font-size:13px;max-width:90px}.resources .stat-chip small{font-size:8px!important;white-space:normal}.resources .stat-chip{gap:5px}.resources .token-logo,.resources .stat-icon{display:none}.resources button.balance-chip{padding-left:7px}.resources .collected-chip{padding-left:7px}.avatar span{font-size:10px}.avatar small{font-size:8px}.resources button.wallet-chip{font-size:10px}.resources #logoutButton{font-size:9px;right:128px}.energy-hud,.minimap{top:155px}.energy-hud{width:175px}.energy-hud>div:first-child{font-size:10px}.energy-hud small{font-size:9px}.tool-readout{left:10px;top:229px;font-size:10px}.quest{top:266px;max-width:175px}.quest b{font-size:11px}.minimap .map-title{font-size:8px}.roof-switch{top:310px;font-size:10px}.prompt{font-size:11px;padding:8px 12px;bottom:117px}.toolbar small{font-size:8px}.penny-tip{bottom:123px;padding:16px;gap:12px}.penny-tip>img{width:65px;height:100px}.penny-tip h2{font-size:18px}.penny-tip p{font-size:12px}.penny-tip small{font-size:8px}.bag-layout{grid-template-columns:1fr;gap:12px}.item-detail{padding:15px;min-height:140px}.detail-icon{float:left;margin-right:16px;margin-bottom:20px}.item-detail h3{font-size:18px}.slot-icon{font-size:28px}.slot-kind{font-size:8px}.bag-heading{display:block}.bag-heading h2{font-size:24px}.bag-wallet{font-size:12px}.penny-inline{padding:12px;gap:10px}.penny-inline img{width:45px;height:65px}.penny-inline p{font-size:12px}.penny-inline h3{font-size:15px}.dialogue p{font-size:14px}.dialogue h1{font-size:23px}.speaker span{font-size:9px}.login-card .eyebrow{font-size:9px}.login-tagline{font-size:14px}.login-card #loginStatus{font-size:12px}.login-card input{font-size:12px}}

.slot-icon svg{width:45px;height:45px;display:block}.detail-icon svg{width:68px;height:68px;display:block}

/* Gardener progression is separate from the roof's construction level. */
.level-hud{position:fixed;z-index:2;left:25px;top:218px;width:205px;border:1px solid #738f70;border-radius:12px;background:#18382fed;color:#f5e7b8;padding:11px 13px;text-align:left;box-shadow:0 5px 18px #15302b25;font:inherit}.level-hud>span:first-child{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.6px}.level-hud b{color:#f3d38c;font-size:14px}.xp-track{display:block;height:5px;background:#102d27;border-radius:5px;margin:8px 0;overflow:hidden}.xp-track i{height:100%;display:block;background:#d6bc78;border-radius:5px}.level-hud small{font-size:9px;color:#c6d9bc}.economy-summary{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:14px;background:#e0e8d7;border-radius:10px;font-size:12px}.crop-unlock{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #c4d0ba}.crop-unlock .icon{font-size:27px}.crop-unlock>div{flex:1}.crop-unlock small{display:block;font-size:11px;line-height:1.7;color:#65765f;margin-top:4px}.crop-unlock strong{font-size:9px;white-space:nowrap;color:#58734c}.crop-unlock.locked{opacity:.65}.economy-note{border-left:3px solid #ba9959;padding:9px 12px;background:#eae4d0}.choice small{line-height:1.6}
@media(max-width:700px){.level-hud{left:10px;top:266px;width:175px;padding:9px 11px}.level-hud>span:first-child{font-size:9px}.level-hud small{font-size:8px}.crop-unlock{gap:8px}.crop-unlock strong{font-size:8px}}

.quest{top:303px}@media(max-width:600px){.quest{top:345px}}

.vip-status{padding:11px 13px;border:1px solid #789c76;border-radius:9px;background:#244c3d;color:#efe2b2!important;font-size:12px!important;line-height:1.6!important}

.rewards-button{position:fixed;left:25px;top:390px;z-index:3;background:#1b4837;color:#eddb9f;border:1px solid #83a277;border-radius:9px;padding:11px;font-size:11px}.reward-address{overflow-wrap:anywhere}.reward-address code{font-size:11px}.reward-event{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #c5d0b9;padding:12px 0;font-size:12px}.reward-event small{display:block;color:#74846a;font-size:10px;margin-top:5px}.reward-event b{white-space:nowrap;color:#536b3f}details{padding:12px;background:#e2e7d2;border-radius:8px;font-size:12px}summary{cursor:pointer}@media(max-width:600px){.rewards-button{left:10px;top:437px;font-size:9px;padding:9px}}

/* Neighbourhood mini jobs: farming Seeds rewards, shared with the server rules. */
.mini-npc{display:flex;align-items:center;gap:14px;margin-bottom:18px}.mini-npc h2{margin:4px 0}.mini-portrait{display:grid;place-items:center;width:64px;height:64px;flex-shrink:0;border-radius:50%;background:#dbe4c7;border:2px solid #a1b28b;font-size:32px}.mini-dialogue{margin:0 0 16px;padding:16px 18px;border-left:3px solid #849d69;background:#e5ebd8;border-radius:0 12px 12px 0;font-size:14px}.mini-dialogue p{margin:8px 0 0!important}.mini-reward-note,.mini-reset{font-size:11px!important;line-height:1.6;color:#617455}.mini-reward-note{padding:10px 12px;background:#eee6c9;border-radius:8px;margin-bottom:18px}.mini-job{border:1px solid #bdcbb0;border-radius:13px;background:#f4f4e7;padding:16px;margin:12px 0}.mini-job.ready{border-color:#a88d43;background:#faf0ce}.mini-job.done{background:#e6ecda}.mini-job.locked{opacity:.7}.mini-job h3{font-size:16px;margin:12px 0 8px}.mini-job p{font-size:12px;line-height:1.6}.mini-job-top,.mini-job-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.mini-job-top>span{font-size:9px;letter-spacing:1px;color:#667958}.mini-job-top>strong{font-size:12px;color:#567044}.mini-job-bottom{margin-top:15px}.mini-job-bottom small{font-size:11px;color:#677858}.mini-job button,.mini-journal-npc button{border:1px solid #81956c;border-radius:8px;padding:10px 13px;background:#2e5540;color:#fff5d7;font:inherit;font-size:11px;cursor:pointer}.mini-job button:disabled{opacity:.5;cursor:default}.mini-progress{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:12px;font-size:11px;color:#51664b}.mini-progress>i{grid-column:1/-1;height:5px;border-radius:5px;background:#d9e0cb;overflow:hidden}.mini-progress em{display:block;height:100%;background:#80995c;border-radius:5px}.mini-active{font-size:9px;letter-spacing:.7px;color:#667b55}.mini-job .mini-find{display:block;margin-top:12px;background:transparent;color:#426146}.mini-distance{color:#8d6842;font-size:11px!important}.mini-summary{display:flex;flex-wrap:wrap;gap:12px;background:#dfe8d0;padding:14px;border-radius:10px;font-size:12px}.mini-summary b{font-size:18px;margin-right:5px}.mini-journal{margin-bottom:26px;padding-bottom:22px;border-bottom:1px solid #b9c8a9}.mini-journal-npc{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 10px}.mini-journal-npc>div{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.mini-journal-npc small{font-size:10px;color:#647657}.mini-shop-link{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;width:100%;margin:0 0 20px;padding:14px;border:1px solid #a0b486;border-radius:11px;background:#dce7cb;color:#335639;font:inherit;text-align:left;cursor:pointer;font-size:12px}.mini-shop-link b{font-size:10px}.mini-job button:focus-visible,.mini-shop-link:focus-visible,.mini-journal-npc button:focus-visible{outline:3px solid #b49a4c;outline-offset:3px}@media(max-width:600px){.mini-job{padding:13px}.mini-job-bottom button{width:100%}.mini-npc .eyebrow{font-size:9px}.mini-portrait{width:50px;height:50px;font-size:25px}.mini-dialogue{padding:13px}.mini-summary{gap:10px;font-size:11px}}

.sky-map{position:relative;height:255px;overflow:hidden;border:1px solid #a7bdac;border-radius:18px;margin:20px 0;background:radial-gradient(ellipse at 20% 20%,#eaf0d9 0,transparent 35%),linear-gradient(140deg,#a4c7c8,#dce4c7)}.sky-map svg{position:absolute;width:100%;height:100%;inset:0}.sky-map-pin{position:absolute;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:5px;width:110px;padding:9px 5px;border:0;background:transparent;color:#274e40;cursor:pointer}.sky-map-pin>span{display:grid;place-items:center;width:47px;height:43px;border:2px solid #7d9b81;background:#f3edce;border-radius:11px;box-shadow:0 5px 0 #749381;font-size:25px}.sky-map-pin.current>span{border-color:#a48645;box-shadow:0 5px 0 #9a7f43;background:#ffebae}.sky-map-pin small{font-size:8px;font-weight:800;letter-spacing:.7px;white-space:nowrap}.sky-map-pin i{font-size:7px;font-style:normal;color:#665630}.sky-map-caption{position:absolute;bottom:12px;left:16px;font-size:8px;letter-spacing:2px;color:#5d8277}.roof-destinations{display:grid;grid-template-columns:1fr 1fr;gap:11px}.roof-destination{display:flex;align-items:flex-start;gap:11px;padding:15px;border:1px solid #b5c8a6;border-radius:13px;background:#f2f3e5;text-align:left;color:#305441;font:inherit;cursor:pointer}.roof-destination.here{background:#e2ead3;border-color:#90aa7c}.roof-icon{font-size:26px}.roof-destination>span:nth-child(2){flex:1}.roof-destination b{display:block;font-size:13px}.roof-destination small{display:block;font-size:11px;line-height:1.6;margin-top:6px;color:#61755c}.roof-destination em{display:block;font-size:10px;font-style:normal;margin-top:7px;color:#7f7452}.roof-destination strong{display:block;font-size:9px;margin-top:8px;color:#507344}.roof-go{font-size:8px;white-space:nowrap;margin-top:3px}.roof-destination:focus-visible,.sky-map-pin:focus-visible{outline:3px solid #b49a4c;outline-offset:3px}@media(max-width:650px){.roof-destinations{grid-template-columns:1fr}.sky-map{height:255px}.sky-map-pin{width:85px}.sky-map-pin small{font-size:7px;letter-spacing:.2px}.sky-map-pin>span{width:40px;height:37px;font-size:22px}.roof-destination{padding:13px}}

/* Branded rooftop transition. */
.roof-loader{position:fixed;inset:0;z-index:100;display:grid;place-items:center;box-sizing:border-box;padding:32px 20px;background:radial-gradient(ellipse at 50% 42%,#234b3c 0%,#122e25 48%,#0b211c 100%);color:#f5e7bf;isolation:isolate}.roof-loader[hidden]{display:none}.roof-loader-card{width:min(100%,400px);text-align:center}.loader-wordmark{display:block;font-size:11px;font-weight:700;letter-spacing:4px;color:#c6d3b9;margin-bottom:36px}.loader-emblem{position:relative;display:grid;place-items:center;width:192px;height:192px;margin:0 auto 32px}.loader-emblem:before{content:"";position:absolute;inset:0;border:1px solid #c6b87826;border-radius:50%;box-shadow:0 0 70px #c8b67412}.loader-emblem img{display:block;width:144px;height:144px;object-fit:contain;border-radius:50%;box-shadow:0 12px 40px #051a1566}.loader-ring{position:absolute;inset:0;border:3px solid #c8d6bc19;border-top-color:#e5ca80;border-right-color:#90ac79;border-radius:50%;animation:ppgnLoaderSpin 1.15s linear infinite;box-sizing:border-box}.roof-loader h2{font-size:23px;font-weight:600;letter-spacing:-.3px;margin:0 0 12px;line-height:1.3}.roof-loader p{font-size:13px;line-height:1.6;color:#b8c9ae;margin:0}.loader-caption{display:block;font-size:8px;letter-spacing:2.5px;color:#7e9b85;margin-top:48px}@keyframes ppgnLoaderSpin{to{transform:rotate(360deg)}}@media(max-width:600px){.loader-emblem{width:168px;height:168px;margin-bottom:28px}.loader-emblem img{width:126px;height:126px}.loader-wordmark{font-size:10px;letter-spacing:3px;margin-bottom:30px}.roof-loader h2{font-size:21px}.loader-caption{margin-top:36px}}@media(prefers-reduced-motion:reduce){.loader-ring{animation:none;border-top-color:#e5ca80;border-right-color:#e5ca80}}

.purchase-product{display:flex;align-items:center;gap:17px;padding:18px;background:#e3ead5;border:1px solid #b5c7a7;border-radius:13px;margin:18px 0}.purchase-product>span{font-size:40px}.purchase-product h3{margin:0;font-size:18px}.purchase-product p{font-size:12px;line-height:1.7}.purchase-product strong{font-size:13px;color:#486b42}.purchase-notice{padding:12px 14px;background:#eee5c9;border-left:3px solid #baa269;border-radius:0 8px 8px 0;font-size:12px!important;line-height:1.7}.purchase-order{padding:16px;border:1px solid #a8bf98;background:#f1f3e3;border-radius:12px;margin:20px 0}.purchase-order h3{font-size:16px}.purchase-help{font-size:11px!important;line-height:1.7;color:#738368}@media(max-width:600px){.purchase-product{padding:14px;gap:12px}.purchase-product h3{font-size:16px}.purchase-order{padding:12px}.purchase-order .choice{font-size:12px}}

.preview-login{border-top:1px solid #647e6238;margin-top:18px;padding-top:18px}.preview-login p{font-size:12px;line-height:1.5;color:#65745f}.preview-login input{text-transform:uppercase;font-family:monospace;letter-spacing:.03em} .login-screen{overflow-y:auto} .login-card{margin-block:24px} .login-screen .preview-login button{margin-top:8px}

.telegram-profile{margin:18px 0;padding:16px;border:1px solid #5a7b51;border-radius:14px;background:#0c2e2370}.telegram-profile p{font-size:12px;line-height:1.5;color:#b9c8aa;margin:8px 0 0}.telegram-profile button{margin-top:10px}.telegram-profile input{width:100%}

.telegram-profile input:focus-visible{outline:2px solid #e4c77b;outline-offset:2px}.login-screen{align-items:start}

#gameIssue{width:100%;padding:12px;font:inherit;font-size:14px;border:1px solid #a5b799;border-radius:10px;background:#f6f6ec;color:#26452e;resize:vertical}#sendGameIssue{margin-top:15px}
