:root{font-family:'Trebuchet MS',system-ui,sans-serif;color:#294437;background:#d9e7d7;font-synthesis:none;font-size:16px}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at top,#e8f1de,#bcd5c5);min-height:100vh}button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid #e59e38;outline-offset:3px}button:disabled{cursor:default}[hidden]{display:none!important}.game{max-width:540px;margin:auto;background:#f6f5e9;box-shadow:0 0 80px #224f3730;min-height:100vh;padding-bottom:env(safe-area-inset-bottom);position:relative}header{padding:12px 18px;background:linear-gradient(125deg,#143f32,#26664a);color:white}.brand{display:flex;align-items:center;gap:9px}.brand h1{font-family:Georgia,serif;font-size:28px;font-weight:normal;letter-spacing:-1px;margin:0}.eyebrow{display:block;font-size:9px;letter-spacing:2.3px;color:#d9ddb4;margin-top:2px}.round{border:1px solid #ffffff25;border-radius:50%;width:34px;height:34px;background:#ffffff0b;color:inherit;font-weight:bold;flex-shrink:0}.brand #sound{margin-left:auto;opacity:.5}.brand #sound.enabled{opacity:1;color:#f5d583}.stats{display:flex;gap:8px;margin-top:12px}.stat{display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid #f4efd32b;border-radius:11px;background:#103e2e;flex:1;padding:8px 3px;white-space:nowrap;color:white}.stat strong{font-size:19px;font-variant-numeric:tabular-nums}.stat small{font-size:12px;color:#d4ddbc}.stat-symbol{color:#f2d67d;font-size:24px}.coin-symbol{font-size:23px;color:#edbd57;text-shadow:0 1px 0 #aa6e1c}.energy-symbol{font-size:29px;line-height:20px;color:#eaca65}.garden{height:125px;position:relative;background:#759d54 url('garden.png') center 56%/cover;isolation:isolate;overflow:hidden}.garden:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#163629c4,transparent 95%);z-index:-1}.garden-caption{color:#fff9e3;padding:17px 19px;max-width:330px;position:relative;z-index:1}.pill{font-size:9px;letter-spacing:1.4px;font-weight:bold;color:#eeebbc}.garden h2{font-family:Georgia,serif;font-size:26px;font-weight:normal;line-height:1.2;margin:5px 0 10px;text-shadow:0 2px 10px #153e35}.xp{height:5px;border-radius:8px;background:#ffffff40;width:175px;overflow:hidden}.xp span{height:100%;display:block;background:linear-gradient(90deg,#acd47d,#f8d775);width:0;transition:width .35s}.garden small{font-size:11px;display:block;margin-top:5px}.garden-upgrade{position:absolute;right:16px;bottom:18px;background:#f6edd9eb;border:1px solid #fff7cf;border-radius:12px;color:#365638;font-size:11px;font-weight:bold;padding:7px 10px;box-shadow:0 3px 10px #25422c30}.garden-upgrade span{display:block;font-size:25px;line-height:24px}.garden-glow{pointer-events:none;position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,#ffffc021 50%,transparent 65%);animation:gardenLight 12s ease-in-out infinite}.event-banner{margin:10px 14px 0;display:flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid #ecd393;border-radius:12px;background:linear-gradient(90deg,#fff3c7,#f4e6a2);box-shadow:0 2px 0 #e7dba9;color:#725d25}.event-banner>span{font-size:28px}.event-banner>div{flex:1}.event-banner b{display:block;font-size:14px}.event-banner small{font-size:11px;display:block;margin-top:3px}.event-banner>strong{font-size:14px;font-variant-numeric:tabular-nums}.requests{padding:13px 14px 8px}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px;gap:8px}.section-title h2{font-family:Georgia,serif;font-size:17px;margin:0;font-weight:normal}.section-title>span{font-size:11px;color:#7b856d}.orders{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.order{padding:8px;border-radius:12px;background:#fffdf4;border:1px solid #e0dec9;box-shadow:0 3px 0 #e7e4d3}.order-header{font-size:11px;display:flex;gap:4px;align-items:center;color:#65755c;white-space:nowrap}.avatar{width:19px;height:19px;border-radius:50%;display:grid;place-items:center;background:#dfe7d0;font:12px Georgia,serif;color:#476248}.order:nth-child(2) .avatar{background:#ebdfcf;color:#986839}.order:nth-child(3) .avatar{background:#e9dce0;color:#996375}.order-wants{display:flex;align-items:center;justify-content:center;gap:3px;margin:2px 0}.order-wants img{width:48px;height:48px;object-fit:contain;filter:drop-shadow(0 2px 1px #543c2115)}.order-wants small{font-size:12px}.reward{font-size:11px;color:#967234;text-align:center;margin-bottom:5px}.order button{width:100%;border:0;border-radius:7px;padding:7px 1px;background:#e9eadb;color:#6f7860;font-weight:bold;font-size:12px;min-height:30px}.order button.ready{background:linear-gradient(#498355,#326741);color:#fff8df;box-shadow:0 2px 0 #234e32}.order.ready-order{border-color:#a5bc82}.play{padding:8px 11px 0}.play .section-title{padding:0 3px}.board-tools{display:flex;align-items:center;gap:5px}.text-button{border:0;background:none;color:#526f4c;font-size:12px;padding:5px}.board-wrap{position:relative}.board{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;background:#b8a078;border:5px solid #d9bf91;border-radius:15px;padding:5px;box-shadow:0 4px 0 #a9926f,0 9px 15px #594a2920;touch-action:none;user-select:none}.cell{aspect-ratio:1;border:1px solid #ffffff70;border-radius:8px;background:#eee7d0;position:relative;padding:0;display:flex;align-items:center;justify-content:center;min-width:0;box-shadow:inset 0 -2px 0 #dacfb1;isolation:isolate;overflow:visible}.cell:nth-child(2n){background:#e7e1c7}.cell.empty:after{content:'·';color:#b5af90;font-size:20px}.cell img{position:relative;width:96%;height:96%;object-fit:contain;pointer-events:none;filter:drop-shadow(0 2px 1px #5b491d22);transition:transform .14s;z-index:1}.cell:hover img{transform:scale(1.09)}.cell .rank{position:absolute;bottom:1px;right:2px;font-size:9px;color:#786845;font-weight:bold;border-radius:4px;background:#fff9e9df;padding:0 2px;z-index:2;line-height:12px}.cell .family{position:absolute;left:2px;bottom:2px;width:5px;height:5px;border-radius:50%;background:var(--family);z-index:2;box-shadow:0 0 0 1px #fff8}.cell.generator{background:linear-gradient(135deg,#dfebc8,#b5c990);border-color:#f5f7d0;box-shadow:inset 0 -2px 0 #92a872}.cell.generator img{width:99%;height:99%}.cell .bolt{position:absolute;left:1px;top:0;font-size:16px;line-height:17px;color:#b88921;font-weight:bold;z-index:2;text-shadow:0 1px white}.cell .tier{position:absolute;right:2px;bottom:1px;font-size:9px;color:#3c6236;z-index:2;font-weight:bold;background:#e8f0d8dc;padding:0 2px;border-radius:4px}.cell[data-rarity="rare"]{background:radial-gradient(#fffae4,#dfd3a7);border-color:#e6c967}.cell[data-rarity="legendary"]{background:radial-gradient(#fbf0bf,#cec491);box-shadow:inset 0 0 9px #ffe673;border-color:#f7dd77}.cell.selected{outline:3px solid #ebb646;outline-offset:-3px;background:#fff1bc}.cell.pair{animation:pulse .65s alternate 4}.cell.drop-target{outline:3px solid #54a066;outline-offset:-3px}.cell.merged img{animation:pop .42s}.cell.generated img{animation:appear .35s}.drag-ghost{position:fixed;pointer-events:none;width:72px;height:72px;object-fit:contain;z-index:100;transform:translate(-50%,-50%);filter:drop-shadow(0 7px 5px #29402060)}.item-info{display:flex;align-items:center;gap:8px;padding:13px 3px 9px;min-height:74px}.item-info>div:first-child{width:48px;flex-shrink:0}.item-info img{width:48px;height:48px;object-fit:contain}.item-description{flex:1;min-width:0}.item-info strong{font-size:13px}.item-info p{font-size:11px;line-height:1.35;color:#718062;margin:4px 0 0}.item-info>button{border:1px solid #cbd8bf;border-radius:8px;padding:7px 6px;background:#fffdf3;color:#4e6646;font-size:11px;max-width:93px;line-height:1.3}.quest-strip{margin:0 14px 10px;border:1px solid #e5d4a8;background:linear-gradient(110deg,#f4ecd7,#fbf7e8);border-radius:12px;overflow:hidden}.quest-strip>button{display:flex;align-items:center;gap:9px;padding:10px;width:100%;border:0;background:none;text-align:left;color:#685d3d}.quest-emblem{font-size:30px;line-height:30px;color:#a58b45}.quest-strip b{font-size:12px;display:block}.quest-strip small{font-size:11px;display:block;margin-top:3px}.quest-strip #quest-count{margin-left:auto;font-size:13px;font-weight:bold}.quest-strip #quest-dot{border-radius:50%;background:#b59039;color:white;font-weight:bold;padding:2px 7px}.bottom-nav{display:flex;justify-content:space-around;align-items:center;border-top:1px solid #dddcc5;margin:0 14px;padding:8px 0 2px}.bottom-nav button{border:0;background:none;color:#687656;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;min-width:65px;min-height:45px}.bottom-nav button span{font-size:24px;color:#486346;line-height:25px}.offline{display:flex;justify-content:center;gap:12px;color:#8b907a;font-size:9px;padding:5px 8px 10px;margin:0;flex-wrap:wrap}#combo{font-size:12px;font-weight:bold;color:#a17928;background:#f1e5bd;border-radius:8px;padding:4px 7px}#float-layer{position:absolute;inset:0;pointer-events:none;overflow:visible}.floating{position:absolute;font-weight:bold;font-size:14px;color:#24623d;text-shadow:0 1px 0 #fff,0 0 4px #fff;animation:floatUp 1.15s forwards;white-space:nowrap;z-index:5}.burst-ring{position:absolute;width:60px;height:60px;border:3px solid #efcc6c;border-radius:50%;pointer-events:none;animation:ringOut .55s forwards;z-index:4}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);max-width:90vw;width:max-content;border-radius:13px;background:#163f30;color:#fffbe7;padding:12px 18px;z-index:120;opacity:0;transition:.2s;pointer-events:none;font-size:14px;box-shadow:0 8px 30px #153d2e40}#toast.show{opacity:1;transform:translate(-50%,0)}dialog{border:1px solid #f1e4c5;border-radius:22px;padding:22px;max-width:480px;width:92%;max-height:85dvh;color:#294437;background:#faf8eb;box-shadow:0 20px 80px #19392a60}dialog::backdrop{background:#173b2bc0;backdrop-filter:blur(5px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}.dialog-head h2{font:24px Georgia,serif;margin:0}.dialog-head .round{background:#e8eddb;border-color:#dbe3cd}dialog p,dialog li{font-size:15px;line-height:1.55}dialog ol{padding-left:22px}.notice{background:#e9eedc;padding:12px;border-radius:12px;font-size:13px;line-height:1.5}.chain{padding:12px 0;border-top:1px solid #dfe6d4}.chain h3{margin:0 0 10px;font-size:15px}.chain-items{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.plant-entry{text-align:center;border-radius:10px;background:#eeecda;padding:5px 3px;position:relative}.plant-entry img{width:100%;height:66px;object-fit:contain}.plant-entry small{display:block;font-size:10px;color:#6b775f;margin-top:3px;min-height:24px}.plant-entry.locked img{filter:grayscale(1);opacity:.22}.plant-entry.locked:after{content:'?';position:absolute;top:25px;left:0;right:0;color:#78805f;font-size:23px;font-family:Georgia,serif}.plant-entry .plant-level{display:block;font-size:9px;color:#a08f62}.upgrade-card{display:flex;align-items:center;gap:10px;background:#efeddc;border:1px solid #e0dcc1;border-radius:13px;padding:11px;margin:10px 0}.upgrade-card img{width:65px;height:65px;object-fit:contain}.upgrade-card>div{flex:1}.upgrade-card b{font-size:14px}.upgrade-card p{font-size:12px;line-height:1.4;margin:4px 0}.upgrade-card button,.claim-button{border:0;background:#3a704b;color:#fff9de;border-radius:8px;padding:9px 10px;font-size:12px;white-space:nowrap}.upgrade-card button:disabled,.claim-button:disabled{background:#d8dcc6;color:#7b8566}.upgrade-card.garden-card{display:block;background:linear-gradient(100deg,#e4ecd6,#f2ecd3)}.garden-card h3{font:20px Georgia,serif;margin:0 0 5px}.garden-card button{margin-top:6px}.quest-card{padding:13px;border:1px solid #dfdcc2;border-radius:12px;background:#f1efdf;margin:10px 0}.quest-card h3{font-size:15px;margin:0 0 6px}.quest-card p{font-size:12px;margin:4px 0}.quest-meter{height:5px;background:#d9dec6;border-radius:5px;margin:10px 0;overflow:hidden}.quest-meter span{height:100%;display:block;background:#7f9d5b}.quest-card .quest-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px}.history-item{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #e2e2cf}.history-item>span{font-size:22px;color:#ad9150}.history-item b{display:block;font-size:13px}.history-item small{display:block;font-size:11px;color:#869077;margin-top:4px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:16px}.metrics>div{text-align:center;padding:12px 3px;background:#e8ecd8;border-radius:10px}.metrics b{display:block;font-size:22px;color:#507147}.metrics small{font-size:10px;color:#7e896a}.celebration{position:fixed;left:50%;top:20%;transform:translateX(-50%);width:min(330px,86vw);padding:22px 22px 20px;text-align:center;z-index:115;background:linear-gradient(140deg,#fffbeeef,#f2e9c9f5);border:1px solid #fff9d6;border-radius:24px;box-shadow:0 20px 90px #273e3155,0 0 50px #ffe49c33;animation:celebrateIn .45s;pointer-events:none;color:#485638;overflow:hidden}.celebration>div,.celebration>span,.celebration>strong,.celebration>p{position:relative}.celebration #celebration-art{height:112px;display:grid;place-items:center;font-size:65px;color:#bfa050;text-shadow:0 3px 0 #e4d8ac}.celebration img{height:120px;width:150px;object-fit:contain;filter:drop-shadow(0 7px 4px #ae8e4133)}.celebration .celebration-halo{position:absolute;width:300px;height:300px;top:-60px;left:15px;background:repeating-conic-gradient(#e9d48b30 0deg 15deg,transparent 15deg 30deg);border-radius:50%;animation:spin 20s linear infinite;mask-image:radial-gradient(black,transparent 70%)}#celebration-kicker{display:block;letter-spacing:2px;font-size:10px;color:#9c854c;margin:8px 0}#celebration-title{display:block;font:25px Georgia,serif}#celebration-detail{font-size:13px;line-height:1.5;margin:9px 0 0;color:#7a7758}#celebration-close{position:absolute;right:12px;top:10px;border:0;background:#e6dfc6c0;color:#8e8262;border-radius:50%;width:27px;height:27px;pointer-events:auto}.celebration.leaving{animation:celebrateOut .25s forwards}#particles{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:116}.level-track{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.level-track span{display:grid;place-items:center;aspect-ratio:1;border-radius:50%;background:#e4e6d2;color:#9da48b;font-size:14px}.level-track .reached{background:#608459;color:white}.level-track .current{box-shadow:0 0 0 3px #d7bd75}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;margin-top:12px}.settings-row input{width:20px;height:20px;accent-color:#48734c}@keyframes pulse{to{background:#fae29b;transform:scale(.93)}}@keyframes pop{40%{transform:scale(1.32) rotate(-7deg)}70%{transform:scale(.93) rotate(3deg)}}@keyframes appear{from{transform:scale(.2);opacity:0}70%{transform:scale(1.15)}}@keyframes floatUp{0%{opacity:0;transform:translate(-50%,0)}20%{opacity:1}100%{opacity:0;transform:translate(-50%,-60px)}}@keyframes ringOut{from{opacity:1;transform:translate(-50%,-50%) scale(.2)}to{opacity:0;transform:translate(-50%,-50%) scale(1.6)}}@keyframes celebrateIn{from{opacity:0;transform:translate(-50%,20px) scale(.8)}to{opacity:1;transform:translate(-50%,0) scale(1)}}@keyframes celebrateOut{to{opacity:0;transform:translate(-50%,-20px) scale(.95)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes gardenLight{0%,100%{transform:translateX(-50%);opacity:0}40%,60%{opacity:1}80%{transform:translateX(60%);opacity:0}}@media(min-width:800px){.game{margin:24px auto;border-radius:24px;overflow:hidden;min-height:0}body{padding-bottom:24px}.cell img{width:100%;height:100%}.garden{height:150px}.garden-caption{padding-top:25px}.requests{padding-top:16px}.item-info p{font-size:13px}.item-info strong{font-size:15px}}@media(max-width:360px){header{padding:10px 12px}.stats{gap:5px}.stat{gap:3px}.stat strong{font-size:17px}.stat small{font-size:10px}.requests{padding-left:9px;padding-right:9px}.play{padding-left:6px;padding-right:6px}.board{gap:3px;padding:3px;border-width:4px}.order{padding:6px}.order-header{font-size:10px}.order-wants img{width:42px;height:42px}.reward{font-size:10px}.garden h2{font-size:23px}.garden-upgrade{right:12px}.chain-items{grid-template-columns:repeat(3,1fr)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}#particles{display:none}}body.reduced-motion *,body.reduced-motion *:before{animation:none!important;transition:none!important}body.reduced-motion #particles{display:none}
#sync-status{font:inherit;border:0;background:none;color:#527557;cursor:pointer;padding:0}.more-menu{display:grid;gap:9px}.more-menu button{background:#e7ecd8;color:#36573d;text-align:left;border:1px solid #d9dfc6;border-radius:10px;padding:13px;font-size:15px}.restore-label{display:block;font-size:13px;margin:16px 0 8px}.restore-label input{display:block;width:100%;border:1px solid #ccd8bd;background:#fffef6;padding:10px;border-radius:8px;margin-top:6px;font-size:14px}.world-card{padding:16px;margin:12px 0;border:1px solid #dbd4b8;border-radius:14px;background:#eaedd8}.world-card h3{font:21px Georgia,serif;margin:0}.world-card p{font-size:13px}.world-card.halloween{background:#f2e2c4;border-color:#dab979}.world-card.mikulas{background:#f0dddd;border-color:#dab4b1}.world-card.christmas{background:#dcebe2;border-color:#bdd3c5}.world-card.tropical,.world-card.zen,.world-card.desert{background-size:cover;background-position:center;position:relative;isolation:isolate;overflow:hidden;color:white}.world-card.tropical{background-image:url('assets/tropical-garden.jpg')}.world-card.zen{background-image:url('assets/zen-garden.jpg')}.world-card.desert{background-image:url('assets/desert-garden.jpg')}.world-card.tropical:before,.world-card.zen:before,.world-card.desert:before{content:'';position:absolute;inset:0;background:#102a24a0;z-index:-1}body[data-world="halloween"] header{background:linear-gradient(125deg,#422e32,#6c4635)}body[data-world="halloween"] .board{background:#887143;border-color:#bb884b}body[data-world="halloween"] .garden:before{background:linear-gradient(90deg,#43283dde,#5d442955)}body[data-world="mikulas"] header{background:linear-gradient(125deg,#6a292b,#924342)}body[data-world="christmas"] header{background:linear-gradient(125deg,#214c43,#426f58)}body[data-world="mikulas"] .board,body[data-world="christmas"] .board{background:#a4ada7;border-color:#d5ded2}body[data-world="zen"] header{background:linear-gradient(125deg,#3f4a45,#6a7963)}body[data-world="desert"] header{background:linear-gradient(125deg,#755139,#a06b47)}.bottom-nav button{min-width:60px}.event-banner small{font-size:12px}.item-info p{font-size:12px}.plant-entry small{font-size:12px}.order-header,.order button,.text-button{font-size:12px}

body[data-growth="blooming"] .board{border-color:#ccbb83;box-shadow:0 4px 0 #a29861,0 8px 18px #5c713b30}body[data-growth="blooming"] header{background:linear-gradient(125deg,#205b3a,#4b7a49)}body[data-growth="master"] .board{border-color:#d6bb6b;box-shadow:0 4px 0 #a78744,0 0 0 1px #e6d099,0 8px 28px #b6933b35}body[data-growth="master"] .game{background:linear-gradient(120deg,#fffbea,#eeefd9)}body[data-growth="master"] header{background:linear-gradient(125deg,#174b38,#5b743f)}body[data-growth="master"] .brand h1{color:#ffeab2}body[data-growth="master"] .order{border-color:#daca99}.growth-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:10px 0}.growth-preview img{width:100%;height:65px;object-fit:cover;border-radius:8px}.growth-preview small{display:block;text-align:center;font-size:11px;margin-top:4px}
body.account-locked .game{display:none}#account-gate{min-height:100dvh;padding:32px 18px;display:grid;place-items:center;background:linear-gradient(#153f3266,#123b32dc),url('assets/growth-master.jpg') center/cover}.account-card{width:100%;max-width:400px;background:#fffdf0f5;padding:30px 25px;border:1px solid #ecddab;border-radius:24px;box-shadow:0 18px 70px #0f302b55}.account-card h1{font:30px/1.1 Georgia,serif;color:#214b39;margin:10px 0}.account-card p{font-size:14px;line-height:1.5}.account-kicker{font-size:10px!important;letter-spacing:2px;color:#6c7b4d}.account-card label{display:block;font-size:13px;font-weight:bold;margin:14px 0}.account-card input{display:block;width:100%;font:16px system-ui;padding:12px;margin-top:6px;border:1px solid #c7d3b8;border-radius:9px;background:#fffffa;color:#244a35}.account-submit{width:100%;border:0;border-radius:10px;padding:14px;background:#24583d;color:#fff6d9;font-weight:bold}.account-submit:disabled{opacity:.5}.account-switch{display:block;margin:17px auto;background:none;border:0;color:#436744;text-decoration:underline}.account-card>small{display:block;text-align:center;color:#75816a;font-size:11px}#account-error{color:#a33e2e}.eyebrow{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#milestone-video{display:block;width:155px;height:155px;object-fit:cover;border-radius:50%;margin:0 auto 8px;border:2px solid #e6c35c;box-shadow:0 0 28px #e6c35c55}#milestone-video:not([hidden])~#celebration-art{display:none}
/* Phone play stays inside the visible screen; details open above the board. */
.mobile-panels{display:none}.mobile-item-art{text-align:center}.mobile-item-art img{width:110px;height:110px;object-fit:contain}
@media(max-width:799px),(max-height:500px){
 body:not(.account-locked){height:100dvh;min-height:0;overflow:hidden;padding:0}
 .game{height:100dvh;min-height:0;max-width:540px;margin:0 auto;border-radius:0;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);overflow:hidden}
 header{padding:5px 10px;display:flex;align-items:center;gap:8px;flex:none;height:54px}
 .brand{gap:5px;min-width:0}.brand>img{width:25px;height:25px}.brand h1{font-size:20px}.brand .eyebrow,.brand .round{display:none}
 .stats{margin:0 0 0 auto;gap:4px;flex:1;max-width:310px}.stat{padding:5px 3px;gap:3px;height:38px}.stat strong{font-size:16px}.stat small{font-size:10px}.stat-symbol,.coin-symbol{font-size:18px}.energy-symbol{font-size:23px}
 .garden{height:59px;flex:none}.garden-caption{padding:5px 12px;max-width:75%}.garden h2{font-size:19px;margin:2px 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.garden .pill{font-size:8px}.garden small{display:none}.xp{width:150px;height:4px}.garden-upgrade{right:10px;bottom:8px;padding:7px;font-size:11px;min-height:40px}.garden-upgrade span{display:none}
 .requests,.quest-strip,.play>.item-info,.event-banner{display:none}
 .mobile-panels{display:flex;flex:none;gap:5px;padding:5px 9px;height:49px}.mobile-panels button{min-width:0;flex:1;border:1px solid #d4ddc4;border-radius:10px;background:#e9efda;color:#355c3d;font-size:12px;min-height:39px;padding:4px}.mobile-panels button>span:last-child{margin-left:3px}.mobile-panels #mobile-events{flex:0 0 40px;font-size:21px}.mobile-panels .has-reward,#orders-ready:not(:empty){background:#f7df99;color:#674b18;border-radius:6px}#orders-ready:not(:empty){padding:2px 4px}
 .play{flex:1;min-height:0;padding:0 8px 6px;display:flex;flex-direction:column}.play .section-title{height:30px;flex:none;margin:0 0 4px}.play .section-title h2{font-size:16px}.text-button{min-height:30px}
 .board-wrap{flex:1;min-height:0;container-type:size}.board{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(100cqw,calc(100cqh * 7 / 9));aspect-ratio:7 / 9;gap:3px;padding:4px;border-width:4px;grid-template-rows:repeat(9,minmax(0,1fr))}.cell{aspect-ratio:auto;min-height:0}.cell img{min-height:0}.cell .rank,.cell .tier{font-size:8px;line-height:10px}
 .bottom-nav{height:52px;flex:none;margin:0 8px;padding:3px 0}.bottom-nav button{min-height:44px;font-size:10px;gap:1px}.bottom-nav button span{font-size:23px;line-height:24px}
 .offline{height:20px;flex:none;padding:0 8px;align-items:center;font-size:9px;overflow:hidden;white-space:nowrap}.offline>#offline{display:none}#sync-status{min-height:20px}
 dialog{position:fixed;inset:auto 0 0;margin:0 auto;width:100%;max-width:540px;max-height:85dvh;border-radius:22px 22px 0 0;padding:16px 16px max(16px,env(safe-area-inset-bottom));overflow:auto;overscroll-behavior:contain}.dialog-head{position:sticky;top:-16px;background:#faf8eb;padding:8px 0;z-index:2;margin-bottom:10px}.dialog-head .round{width:44px;height:44px}.dialog-head h2{font-size:22px}#orders-sheet .orders{grid-template-columns:1fr}#orders-sheet .order{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5px}#orders-sheet .order button{min-height:44px}#orders-sheet .order-wants{grid-column:2;grid-row:1 / 3}#orders-sheet .order-wants img{width:64px;height:64px}#orders-sheet .reward{text-align:left}
 .celebration{top:12%;max-height:75dvh;overflow:auto}#toast{bottom:76px;font-size:12px;padding:9px 12px}
}
@media(max-height:500px) and (orientation:landscape){
 .game{max-width:900px;padding-left:190px}.game>header{position:absolute;left:0;top:0;width:190px;height:100px;display:block}.brand{height:35px}.stats{margin:6px 0 0}.game>.garden{position:absolute;left:0;top:100px;width:190px;height:80px}.garden-caption{max-width:100%;padding:6px}.garden-upgrade{bottom:0;min-height:28px;font-size:10px}.garden h2{font-size:16px}.game>.mobile-panels{position:absolute;left:0;top:180px;width:190px;flex-wrap:wrap;height:auto}.mobile-panels button{flex:1 0 42%}.mobile-panels #mobile-events{flex:1 0 42%}.bottom-nav{height:45px}.offline{height:16px}
}
/* Garden upgrades refine the material without changing tile locations. */
body[data-board-style="1"] .board{border-color:#c6b28a;background:#a69a7a}body[data-board-style="1"] .cell:not(.generator){border-color:#fff9e4;background-color:#eee9d7}
body[data-board-style="2"] .board{border-color:#c8c7ac;background:#989d80;box-shadow:0 3px 0 #767e66,0 7px 16px #465c3624}body[data-board-style="2"] .cell:not(.generator){border-color:#ffffed;background-color:#e9ecd9;border-radius:10px}
body[data-board-style="3"] .board{border-color:#b4c5b4;background:#809786;box-shadow:0 3px 0 #607b67,0 7px 16px #365c4724}body[data-board-style="3"] .cell:not(.generator){background-color:#e5eddf;border-color:#fafff4;box-shadow:inset 0 -2px 0 #c9d7c3}
body[data-board-style="4"] .board{border-color:#cabc83;background:#849384;box-shadow:0 3px 0 #92855a,0 0 0 1px #e9db9d,0 8px 20px #80702b25}body[data-board-style="4"] .cell:not(.generator){background-color:#eff0df;border-color:#ffffec;box-shadow:inset 0 -2px 0 #d9dcc3;border-radius:10px}
.mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mini-card{position:relative;padding:10px 8px;border:2px solid #dce2c9;border-radius:13px;background:#f1f0df;color:#36563d;min-height:110px}.mini-card.chosen{border-color:#678d53;background:#e2edcc}.mini-card b,.mini-card small{display:block}.mini-card b{font-size:13px}.mini-card small{font-size:11px;margin-top:4px}.mini-card>strong{position:absolute;top:5px;right:7px;background:#47703d;color:white;border-radius:50%;width:22px;height:22px;line-height:22px}.mini-pepper,.mini-produce{font-size:34px;display:block;margin-bottom:5px}.mini-actions{display:flex;gap:8px;align-items:center;margin:14px 0}.mini-actions button{min-height:44px}.mini-status{font-size:12px!important;color:#7b6340}.mini-guide{border:1px solid #d9dfc9;border-radius:10px;padding:12px;margin:12px 0}.mini-guide summary{cursor:pointer}.mini-guide p{font-size:12px}.mini-guide a{color:#35683d}
.bottom-nav #water-open small{font:inherit;max-width:67px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bottom-nav .needs-care{color:#a34e29!important}.bottom-nav .needs-care span{color:#bd7135}.weather-card{text-align:center;padding:14px;background:linear-gradient(#dcebd9,#f4eed3);border-radius:15px}.weather-card>span{font-size:44px}.weather-card h3{margin:7px 0}.more-menu button:disabled{opacity:.55;cursor:default}body[data-weather="heat"] .garden-glow,body[data-weather="drought"] .garden-glow{background:#efb84c28}body[data-weather="storm"] .garden-glow{background:repeating-linear-gradient(110deg,transparent 0 18px,#cce8ff55 19px 20px);animation:rainFall 1s linear infinite}body[data-weather="hail"] .garden-glow{background:radial-gradient(circle,#edf6ffb0 1px,transparent 3px) 0 0/19px 27px;animation:rainFall .7s linear infinite}@keyframes rainFall{to{background-position:15px 54px}}
.mobile-panels .needs-care{border-color:#bf783c;background:#f4dfad;color:#74461d}.quest-card>.claim-button+.claim-button{margin:8px 0 0 5px}
/* Phone panels use the space above the old bottom sheet. */
@media(max-width:799px),(max-height:500px){
 dialog{max-height:calc(100dvh - 8px);border-radius:16px 16px 0 0;padding:12px 12px max(12px,env(safe-area-inset-bottom))}
 .dialog-head{top:-12px;padding:4px 0;margin-bottom:8px}
 #dialog[data-view="worlds"]{height:calc(100dvh - 8px)}
 #dialog[data-view="worlds"] #dialog-content>p{font-size:12px;line-height:1.4;margin:0 0 8px}
 #dialog[data-view="worlds"] .world-card{padding:10px 12px;margin:6px 0;border-radius:12px;min-height:96px}
 #dialog[data-view="worlds"] .world-card h3{font-size:19px;line-height:1.15}
 #dialog[data-view="worlds"] .world-card p{font-size:11px;line-height:1.35;margin:5px 0}
 #dialog[data-view="worlds"] .world-card .claim-button{min-height:40px;padding:8px 12px}
 #dialog[data-view="worlds"] .world-card:first-of-type{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:64px}
}
