@font-face{font-family:Forum;src:url(/fonts/forum.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Rubik;src:url(/fonts/rubik-cyrillic.woff2)format("woff2");font-weight:300 900;font-display:swap;unicode-range:U+4??,U+2116}@font-face{font-family:Rubik;src:url(/fonts/rubik-latin.woff2)format("woff2");font-weight:300 900;font-display:swap;unicode-range:U+??,U+2000-206F,U+2190-21BB}:root{--bg:#10241d;--bg-soft:#17322a;--card:#1e4034;--card-2:#255043;--line:#bee8ce29;--text:#eaf6ec;--muted:#a9c9b6;--gold:#f4cf73;--rose:#ef7f97;--good:#7fd6a2;--bad:#f08f8f;--head-inset:18px;--radius:16px}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);-webkit-text-size-adjust:100%;overscroll-behavior:none;margin:0;font-family:Rubik,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:16px}body{background:radial-gradient(120% 70% at 50% -10%, #7ec4a038, transparent 62%), radial-gradient(90% 60% at 50% 110%, #2354448c, transparent 60%), var(--bg)}#app{height:100%}h1,h2,h3{letter-spacing:.01em;margin:0;font-family:Forum,Rubik,serif;font-weight:400}h1{font-size:1.4rem}h2{font-size:1.15rem}button{font:inherit;color:inherit;cursor:pointer}a{color:var(--gold)}img{image-rendering:pixelated}.screen{max-width:620px;height:100%;padding:calc(var(--head-inset)) 12px 12px;flex-direction:column;gap:10px;margin:0 auto;display:flex}.screen.center{text-align:center;justify-content:center;align-items:center;gap:12px}.page-head{gap:6px;display:grid}.head-row,.level-head{align-items:center;gap:8px;min-height:44px;display:flex}.head-tools{flex:none;gap:6px;display:flex}.page-title,.level-title{flex:auto;min-width:0}.page-title small,.level-title small{color:var(--muted);font-size:.76rem;display:block}.page-title small,.page-title h1,.level-title small,.level-title h1{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.page-title h1,.level-title h1{font-size:1.2rem;line-height:1.15}.round{border:1px solid var(--line);background:var(--card);border-radius:50%;flex:0 0 40px;place-items:center;width:40px;height:40px;font-size:1.2rem;line-height:1;display:grid}.round.ghost{background:0 0;border-color:#0000}.round.small{flex-basis:34px;width:34px;height:34px;font-size:1rem}.round:active{transform:scale(.94)}.wallet{scrollbar-width:none;justify-content:flex-end;gap:5px;display:flex;overflow-x:auto}.wallet::-webkit-scrollbar{display:none}.pill{border:1px solid var(--line);font-variant-numeric:tabular-nums;white-space:nowrap;background:#0b1c1699;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:.78rem;display:inline-flex}.ic{flex:0 0 13px;width:13px;height:13px;display:inline-block}.ic-coin{background:linear-gradient(160deg,#ffe08a,#d99a26);border-radius:50%;box-shadow:inset 0 0 0 2px #0000002e}.ic-gem{clip-path:polygon(50% 0,100% 45%,50% 100%,0 45%);background:linear-gradient(160deg,#b6e6ff,#6aa8e6)}.ic-star{background:var(--gold);clip-path:polygon(50% 0,62% 36%,100% 38%,70% 60%,80% 96%,50% 74%,20% 96%,30% 60%,0 38%,38% 36%)}.ic-life{background:var(--rose);clip-path:polygon(50% 100%,8% 52%,8% 24%,28% 8%,50% 24%,72% 8%,92% 24%,92% 52%)}.ic-shot{background:linear-gradient(160deg,#cdeed8,#74b894);border-radius:50% 50% 46% 46%}.scroll{-webkit-overflow-scrolling:touch;flex:auto;min-height:0;padding-right:2px;overflow-y:auto}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:10px;padding:12px}.card h2{border-bottom:1px solid var(--line);margin-bottom:8px;padding-bottom:7px}.note{color:var(--muted);margin:6px 0 0;font-size:.86rem;line-height:1.45}.note.good{color:var(--good)}.note.small{font-size:.76rem}.lives{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.hearts{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.hearts small{color:var(--muted);margin-left:6px;font-size:.76rem}.heart{opacity:.28}.heart.on{opacity:1}.heart .ic,.heart{width:15px;height:15px;display:inline-block}.lives-actions{gap:6px;display:flex}.chip{border:1px solid var(--line);background:var(--card-2);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:5px 11px;font-size:.82rem;display:inline-flex}.chip.good{background:linear-gradient(160deg,#3f8f68,#2c6b4d);border-color:#0000}.chip.buy{color:#23180a;background:linear-gradient(160deg,#d9a63f,#b7802a);border-color:#0000;font-weight:600}.chip:active{transform:scale(.96)}.zone{border-radius:var(--radius);border:1px solid var(--line);background:linear-gradient(160deg,#965c7480,#3820308c);margin-bottom:12px;padding:10px 10px 12px}.zone.dim{opacity:.5}.zone[data-zone-mood=pond]{background:linear-gradient(160deg,#2c707c80,#14343880)}.zone[data-zone-mood=glass]{background:linear-gradient(160deg,#7a924280,#22381e80)}.zone[data-zone-mood=grotto]{background:linear-gradient(160deg,#4e605880,#1e2e2a80)}.zone[data-zone-mood=terrace]{background:linear-gradient(160deg,#3a528080,#16223a80)}.zone[data-zone-mood=gazebo]{background:linear-gradient(160deg,#56846e8c,#1e3e3480)}.zone header{align-items:center;gap:9px;margin-bottom:9px;display:flex}.zone-mark{object-fit:contain;height:34px;image-rendering:pixelated;filter:drop-shadow(0 2px 1px #0006);flex:0 0 34px}.zone-name{flex:auto;min-width:0}.zone-name h2{font-size:1.05rem}.zone header small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.74rem;display:block;overflow:hidden}.zone-score{font-variant-numeric:tabular-nums;background:#09181380;border-radius:999px;flex:none;align-items:center;gap:3px;padding:3px 9px;font-size:.78rem;display:inline-flex}.zone-score i{color:var(--muted);font-style:normal}.nodes{grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:7px;display:grid}.node{background:linear-gradient(170deg,#10261e8c,#0a1a15a6);border:1px solid #bee8ce33;border-radius:50% 50% 46% 46%;justify-items:center;gap:3px;min-height:58px;padding:7px 4px 5px;display:grid;box-shadow:inset 0 -2px #00000040}.node b{font-family:Forum,serif;font-size:1.1rem}.node.done{background:linear-gradient(170deg,#48a074,#2b6b4e);border-color:#d6f6e066;box-shadow:inset 0 -2px #0003,0 0 12px #60c89440}.node.now{outline:2px solid var(--gold);outline-offset:1px;animation:2.2s ease-in-out infinite pulse}.node.locked{opacity:.35}.node .mini{gap:2px;display:flex}.node .mini .star{width:9px;height:9px}@keyframes pulse{0%,to{box-shadow:inset 0 -2px #0003,0 0 #f4cf7300}50%{box-shadow:inset 0 -2px #0003,0 0 14px #f4cf7380}}.star{opacity:.24;width:22px;height:22px;display:inline-block}.star.on{opacity:1}.star .ic,.mini .star .ic{width:100%;height:100%}.tabbar{gap:6px;padding-top:2px;display:flex}.tabbar button{border:1px solid var(--line);background:var(--card);white-space:nowrap;text-overflow:ellipsis;border-radius:13px;flex:1 1 0;min-width:0;padding:11px 6px;font-size:.86rem;overflow:hidden}.tabbar button.primary{background:linear-gradient(160deg,#47a074,#2f7355);border-color:#0000;flex:1.35 1 0;font-weight:600}.tabbar button:active{transform:translateY(1px)}.zone-tabs{gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.tab{border:1px solid var(--line);background:var(--card);white-space:nowrap;border-radius:12px;gap:1px;padding:7px 10px;font-size:.8rem;display:grid}.tab small{color:var(--muted);font-size:.7rem}.tab.on{background:linear-gradient(160deg,#47a074,#2f7355);border-color:#0000}.tab:disabled{opacity:.45}.scene{border-radius:var(--radius);border:1px solid var(--line);height:210px;image-rendering:pixelated;background:linear-gradient(#8f5474 0%,#c07d8c 38%,#0000 38%),linear-gradient(#0000 38%,#e88aa64d 38%),url(/assets/garden/tile-grass.png) 0 38%/44px 44px,#4a7050;flex:none;position:relative;overflow:hidden}.scene:before{content:"";background:#b4e8be59;height:3px;position:absolute;top:38%;left:0;right:0}.scene .prop{filter:drop-shadow(0 3px 2px #00000059);width:54px;height:auto;position:absolute;transform:translate(-50%,-85%)}.scene .prop.ghost{opacity:.34;filter:grayscale()brightness(.35)}.scene:after{content:"";pointer-events:none;background:radial-gradient(120% 80% at 50% 6%,#ffd6e84d,#0000 58%),linear-gradient(#26121e4d,#081a1200 34%,#081a1273);position:absolute;top:0;bottom:0;left:0;right:0}.scene[data-zone-scene=pond]{background:linear-gradient(#2b5a58 0%,#2f6a63 40%,#0000 40%),url(/assets/garden/tile-water.png) 0 40%/44px 44px,#2c6874}.scene[data-zone-scene=glass]{background:linear-gradient(#6a7a3c 0%,#7d8a4a 36%,#0000 36%),url(/assets/garden/tile-grass.png) 0 36%/44px 44px,#478a55}.scene[data-zone-scene=glass]:after{background:radial-gradient(120% 80% at 50% 4%,#fffac666,#0000 58%),linear-gradient(#1e220c3d,#081a1200 34%,#081a126b)}.scene[data-zone-scene=grotto]{background:linear-gradient(#2b3f3c 0%,#35514a 42%,#0000 42%),url(/assets/garden/tile-stone.png) 0 42%/44px 44px,#48584f}.scene[data-zone-scene=terrace]{background:linear-gradient(#1d2f4a 0%,#24405a 40%,#0000 40%),url(/assets/garden/tile-grass.png) 0 40%/44px 44px,#27563f}.scene[data-zone-scene=terrace]:after{background:radial-gradient(60% 40% at 78% 12%,#c4deff59,#0000 60%),linear-gradient(#0a12226b,#0a122214 40%,#0a122280)}.scene[data-zone-scene=gazebo]{background:linear-gradient(#2f5e58 0%,#396c58 38%,#0000 38%),url(/assets/garden/tile-grass.png) 0 38%/44px 44px,#37764e}.deeds{gap:7px;margin:0;padding:0;list-style:none;display:grid}.deed{background:var(--card);border:1px solid var(--line);border-radius:13px;align-items:center;gap:10px;padding:8px 10px;display:flex}.deed>div{flex:auto;min-width:0}.deed b{font-size:.92rem;font-weight:500;display:block}.deed small{color:var(--muted);font-size:.76rem}.deed.done{opacity:.72}.done-mark{color:var(--good);font-size:.78rem}.goods{gap:8px;margin:0;padding:0;list-style:none;display:grid}.goods li{background:linear-gradient(160deg,#3068528c,#18382c8c);border:1px solid #bee8ce1a;border-radius:12px;align-items:center;gap:10px;padding:8px 10px;display:flex}.good-art{image-rendering:pixelated;background:radial-gradient(circle at 50% 35%,#fff6cd29,#09181380);border-radius:11px;flex:none;padding:3px;box-shadow:inset 0 0 0 1px #bee8ce24}.goods li>div{flex:auto;min-width:0}.goods b{font-size:.92rem;font-weight:500;display:block}.goods small{color:var(--muted);font-size:.76rem;display:block}.have{color:var(--muted);white-space:nowrap;font-size:.78rem}.wide-button{background:linear-gradient(160deg,#47a074,#2f7355);border:none;border-radius:13px;width:100%;margin-top:10px;padding:12px;font-weight:600;display:block}.wide-button.ghost{background:var(--card-2);border:1px solid var(--line);font-weight:400}.wide-button:active{transform:translateY(1px)}.row-buttons{gap:8px;display:flex}.row-buttons .wide-button{flex:1 1 0}.leaders{counter-reset:place;gap:6px;margin:0;padding:0;list-style:none;display:grid}.leaders li{background:var(--card);border:1px solid var(--line);border-radius:12px;align-items:center;gap:10px;padding:8px 10px;display:flex}.leaders li.top{background:linear-gradient(160deg,#2f6b52,#214c3c)}.leaders li.empty{color:var(--muted);justify-content:center;font-size:.86rem}.leaders b{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-weight:500;overflow:hidden}.place{width:26px;color:var(--muted);font-variant-numeric:tabular-nums}.score{font-variant-numeric:tabular-nums;align-items:center;gap:4px;display:inline-flex}.mark{color:var(--gold);font-size:.72rem}.screen.level{gap:8px;padding-left:5px;padding-right:5px}.screen.level .level-head,.screen.level .goal,.screen.level .boosters{margin:0 5px}.counters{gap:5px;display:flex}.counters .pill b{font-variant-numeric:tabular-nums}.goal{text-align:center;color:var(--gold);border:1px solid var(--line);background:#0b1c1680;border-radius:999px;margin:0;padding:6px 12px;font-size:.9rem}.field{flex:auto;min-height:0;display:flex;overflow:hidden}.board{touch-action:none;margin:0 auto;display:block}.boosters{gap:6px;display:flex}.booster{border:1px solid var(--line);background:linear-gradient(170deg,#30685299,#143026b3);border-radius:12px;flex:1 1 0;justify-items:center;gap:1px;min-width:0;padding:6px 4px 5px;font-size:.7rem;display:grid}.booster img{image-rendering:pixelated}.booster .bname{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.booster .bcount{color:var(--muted);font-size:.72rem}.booster.on{outline:2px solid var(--gold)}.booster.empty{opacity:.5}.overlay{z-index:20;background:#06100db8;place-items:center;padding:18px;animation:.16s ease-out fade;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.overlay.closing{opacity:0;transition:opacity .15s ease-in}.sheet{background:var(--bg-soft);border:1px solid var(--line);border-radius:20px;width:100%;max-width:420px;max-height:84vh;padding:18px;overflow-y:auto}.sheet.wide{max-width:560px}.sheet h2{margin-bottom:8px}.row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:9px 0;display:flex}.row input{accent-color:#47a074;width:22px;height:22px}.rules{color:var(--muted);margin:0;padding-left:20px;font-size:.88rem;line-height:1.5}.rules li{margin-bottom:6px}.result-stars{justify-content:center;gap:8px;margin:10px 0;display:flex}.result-stars .star{width:42px;height:42px}.result-score{text-align:center;margin:0;font-family:Forum,serif;font-size:1.5rem}.toast{border:1px solid var(--line);z-index:30;text-align:center;background:#081612f0;border-radius:999px;max-width:90vw;padding:9px 16px;font-size:.86rem;animation:.16s ease-out fade;position:fixed;bottom:88px;left:50%;transform:translate(-50%)}.toast-good{border-color:#7fd6a299}.toast-bad{border-color:#f08f8f99}@keyframes fade{0%{opacity:0}to{opacity:1}}@media (min-width:720px){.screen{padding-top:18px}.scene{height:300px}.scene .prop{width:74px}}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}
