:root{font-family:Trebuchet MS,Arial,sans-serif;color:#20364f;background:#d9f0ff;font-synthesis:none;--ink: #173650;--purple: #6847ad;--pink: #e8539a;--green: #4f9e5b;--gold: #ffc852}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 30% 10%,#fff9cd 0 10%,transparent 31%),linear-gradient(#bde8ff 0 42%,#b9e4a6 42%)}button,a{font:inherit}button{color:inherit}button:not(:disabled),a{cursor:pointer}button:focus-visible,a:focus-visible{outline:4px solid #ffe87a;outline-offset:2px}.loading,.fatal{min-height:100vh;display:grid;place-content:center;gap:12px;text-align:center;background:linear-gradient(145deg,#dff7ff,#fff2c8)}.loading span{font-size:72px;color:var(--pink);animation:bob 1s infinite alternate}.loading strong,.fatal h1{font:800 30px "Baloo 2"}.fatal a{color:#315a9b;font-weight:800}.brand-lockup{display:flex;align-items:center;gap:10px;flex:0 0 auto}.brand-badge{position:relative;display:grid;place-items:center;width:48px;height:48px;border:3px solid #fff3a2;border-radius:50% 45% 50% 42%;background:linear-gradient(145deg,#ff73b2,#a84db5);box-shadow:inset 0 3px #ffffff73,0 4px #563278;transform:rotate(-4deg)}.brand-badge i{position:absolute;color:#fff;font-style:normal;font-size:18px;text-shadow:0 2px #743a87}.brand-badge i:nth-child(1){transform:translate(-10px,-8px) rotate(4deg)}.brand-badge i:nth-child(2){transform:translate(10px,-6px) rotate(4deg)}.brand-badge i:nth-child(3){transform:translateY(10px) rotate(4deg)}.brand{display:flex;flex-direction:column;line-height:.9}.brand span,.eyebrow{font-size:10px;letter-spacing:.15em;font-weight:800;color:#75469e}.brand strong{font:800 27px "Baloo 2";color:#fff;text-shadow:0 2px 0 #5b358e}.wallet{display:flex;gap:8px;margin-left:auto}.wallet span,.wallet-lives{padding:7px 12px;border-radius:20px;color:#533a22;background:#fff6ca;border:2px solid #f1c963;font-weight:800;box-shadow:0 3px #c99443}.wallet-lives{font:inherit;font-weight:800;cursor:pointer}.map-top nav .map-back{background:#fff6ca;border-color:#f1c963;color:#533a22}.streak-note{display:flex;gap:10px;align-items:flex-start;margin:10px 0;padding:10px 12px;border-radius:14px;background:#fff3e6;border:1px solid #f4c995}.streak-note b{font-size:22px;line-height:1}.streak-note p{margin:0;font-size:14px;line-height:1.4}.lives-help p{margin:0 0 10px;line-height:1.45}.paper{border:2px solid #fff;border-radius:20px;background:#fffff5f0;box-shadow:0 7px #46714140,0 10px 24px #2347641f}.primary{border:0;border-radius:12px;background:linear-gradient(#f365ad,#d3428a);color:#fff;font-weight:800;box-shadow:0 4px #9b2f69}.big{width:100%;padding:12px}.stars{white-space:nowrap;color:#d7d0ba;letter-spacing:-1px}.stars .on{color:var(--gold);text-shadow:0 1px #ac7520}.map-shell,.game-shell{min-height:100vh;position:relative;overflow-x:hidden}.map-shell:before{content:"";position:fixed;inset:64px 0 0;z-index:-1;background:radial-gradient(ellipse at 70% 18%,rgba(255,255,220,.9) 0 8%,transparent 8.5%),radial-gradient(ellipse at 7% 75%,#66ad60 0 11%,transparent 11.5%),repeating-linear-gradient(12deg,transparent 0 52px,rgba(255,255,255,.08) 53px 55px),linear-gradient(#96d9fb 0 38%,#91ce75 38% 100%)}.map-top,.game-top{min-height:68px;display:flex;align-items:center;gap:24px;padding:8px clamp(14px,3vw,42px);background:linear-gradient(90deg,#753ca7,#bd4e9c 52%,#5e3d9f);border-bottom:4px solid #ffe58c;box-shadow:0 3px 16px #2c224c59;z-index:10;position:relative}.map-top nav{margin-left:auto;display:flex;align-items:center;gap:7px}.map-top nav button,.map-top nav a,.game-top>button{border:1px solid rgba(255,255,255,.35);padding:8px 11px;border-radius:12px;background:#ffffff26;color:#fff;text-decoration:none;font-weight:800}.map-top nav .attention{animation:pulse 1.4s infinite;background:#e65398}.map-layout{display:grid;grid-template-columns:minmax(220px,270px) minmax(560px,1fr) minmax(210px,260px);gap:18px;max-width:1480px;margin:auto;padding:22px;align-items:start}.welcome,.next-panel{padding:20px;position:sticky;top:90px}.welcome h1{font:800 31px/1 "Baloo 2";margin:7px 0;color:#4b3487}.welcome p{line-height:1.45}.daily-card,.event-card{display:grid;gap:8px;padding:13px;margin-top:15px;border-radius:14px;background:#fff2bd;border:1px dashed #d69c3a}.daily-card button,.resume{border:0;border-radius:9px;padding:9px;color:#fff;background:#5d9d55;font-weight:800;box-shadow:0 3px #35703f}.daily-card button:disabled{background:#aaa;box-shadow:none}.event-card{background:#f1e6ff;border-color:#9369bb}progress{width:100%;accent-color:#e6509b}.resume{width:100%;margin-top:15px;background:#7251ae}.house-ranking{display:grid;gap:10px;margin-top:18px;padding-top:15px;border-top:3px solid #eadcf2}.house-ranking>header{display:flex;align-items:center;gap:8px}.ranking-trophy{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:50%;background:#fff0a9;box-shadow:inset 0 0 0 2px #e5bd4c;font-size:20px}.house-ranking>header div{min-width:0}.house-ranking>header small{display:block;color:#a0407c;font-size:8px;letter-spacing:.12em;font-weight:900}.house-ranking>header h2{margin:0;color:#583b8e;font:800 20px/1 "Baloo 2"}.house-ranking>header button{display:grid;place-items:center;margin-left:auto;width:34px;height:34px;border:0;border-radius:50%;color:#fff;background:#e34d96;font:900 25px/1 sans-serif}.ranking-tabs{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:3px;border-radius:10px;background:#e9dfef}.ranking-tabs button{min-height:33px;border:0;border-radius:8px;color:#665571;background:transparent;font-size:11px;font-weight:900}.ranking-tabs button.active{color:#fff;background:#6947a4;box-shadow:0 2px #493077}.ranking-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;min-height:116px;padding-top:9px}.podium-player{grid-row:1;display:flex;flex-direction:column;align-items:center;min-width:0;text-align:center}.podium-player.rank-1{grid-column:2;align-self:start}.podium-player.rank-2{grid-column:1}.podium-player.rank-3{grid-column:3}.podium-medal{height:23px;font-size:19px}.ranking-avatar{display:grid;place-items:center;width:42px;height:42px;border:3px solid #fff;border-radius:50%;color:#fff;background:#7652ae;box-shadow:0 3px #493171;font-size:13px}.rank-1 .ranking-avatar{width:52px;height:52px;background:#e24f96;box-shadow:0 4px #9b326d,0 0 0 3px #ffe16d}.podium-player>strong{max-width:100%;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.podium-player>small{color:#704d86;font-size:9px;font-weight:900}.podium-player.is-current>strong{color:#b23578}.current-ranking{display:flex;align-items:center;gap:7px;width:100%;min-height:38px;padding:7px 9px;border:0;border-radius:10px;color:#4f376e;background:#f0e9f7;text-align:left}.current-ranking span{font-size:10px}.current-ranking strong{font-size:12px}.current-ranking b{margin-left:auto;color:#a23877;font-size:10px}.ranking-loading{min-height:80px;display:grid;place-items:center;color:#7a6683;font-size:12px;font-weight:800}.journey{position:relative;height:min(720px,calc(100vh - 112px));min-height:580px;border-radius:34px;border:6px solid rgba(255,255,255,.82);padding:18px 28px 22px;background:linear-gradient(#9cddfa 0 36%,#a7d97b 36% 100%);box-shadow:inset 0 0 0 3px #5a9c68,0 12px 32px #244d3640;overflow:hidden;isolation:isolate}.journey:before{content:"";position:absolute;z-index:-1;left:5%;right:4%;bottom:7%;height:64%;border:34px solid #edce8b;border-left-color:transparent;border-right-color:transparent;border-radius:46% 55% 42% 52%;transform:rotate(-5deg);box-shadow:inset 0 0 0 3px #d3a961,0 0 0 3px #f8e7ae;opacity:.95}.journey:after{content:"";position:absolute;z-index:-2;left:-8%;right:-6%;bottom:-16%;height:58%;border-radius:50% 50% 0 0;background:repeating-linear-gradient(98deg,transparent 0 38px,rgba(69,140,66,.16) 39px 42px),linear-gradient(145deg,#79bd62,#aad878)}.journey-title{position:relative;z-index:4;width:max-content;max-width:75%;margin:0 auto;padding:7px 22px 8px;border:2px solid rgba(255,255,255,.75);border-radius:18px;text-align:center;color:#294f3d;background:#ffffe0e0;box-shadow:0 4px #4d7e3f40}.journey-title h2{font:800 29px/1 "Baloo 2";margin:2px 0;color:#604193}.journey-title span{font-size:10px;letter-spacing:.12em;font-weight:900;color:#987020}.journey-title p{margin:0;font-size:12px;font-weight:800}.path{position:absolute;inset:0}.level-node{position:absolute;z-index:4;left:var(--path-x);top:var(--path-y);transform:translate(-50%,-50%);width:112px;border:0;background:transparent;display:grid;place-items:center;transition:transform .15s ease}.level-node:not(:disabled):hover{transform:translate(-50%,-54%) scale(1.05)}.level-marker{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;border:4px solid white;background:linear-gradient(#f6c55c,#e99739);box-shadow:0 5px #a86732,0 7px 14px #466938;color:#fff;font:800 23px "Baloo 2"}.level-node.complete .level-marker{background:linear-gradient(#e85ba5,#b53f91);box-shadow:0 5px #782c71,0 7px 14px #466938}.level-node.current .level-marker{animation:current 1.6s infinite;outline:5px solid rgba(255,241,112,.75)}.level-node:disabled .level-marker{width:52px;height:52px;filter:grayscale(.8);opacity:.78}.level-node .stars{display:inline-flex;justify-content:center;width:auto;height:auto;margin-top:3px;padding:1px 5px;border-radius:8px;background:#ffffebe0;font-size:12px;line-height:1}.level-node:disabled .stars{display:none}.level-node small{width:112px;margin-top:3px;padding:2px 5px;border-radius:7px;font-size:10px;font-weight:900;color:#31533d;background:#ffffebe0;text-shadow:0 1px white}.level-node:disabled small{opacity:.82}.scenery{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.sunshine{position:absolute;top:34px;right:1%;color:#ffd54a;font-size:75px;text-shadow:0 4px #e7a92c}.cloud{position:absolute;width:92px;height:27px;border-radius:50px;background:#ffffffd1;box-shadow:25px -14px #ffffffd1,55px 1px #ffffffd1}.cloud-one{top:61px;left:7%}.cloud-two{top:126px;right:19%;transform:scale(.7)}.map-house{position:absolute;right:4%;bottom:8%;width:118px;height:91px;border:4px solid #e9f1cf;border-radius:8px;background:#f49b65;box-shadow:inset 0 -12px #ad433e33,0 7px #39663447}.map-house:before{content:"";position:absolute;left:-13px;top:-47px;width:132px;height:74px;border:5px solid #fff0be;background:#744596;clip-path:polygon(50% 0,100% 64%,91% 100%,9% 100%,0 64%)}.map-house i{position:absolute;left:15px;top:30px;width:31px;height:31px;border:4px solid #fff0bd;background:#69bfe8}.map-house b{position:absolute;right:17px;bottom:0;width:31px;height:54px;border:4px solid #ffe3a5;background:#55a46a}.map-house small{position:absolute;left:-26px;bottom:-8px;width:34px;height:34px;border-radius:50%;background:#e9589e;box-shadow:21px 5px #f7c84b,-8px 17px #9a61be}.map-tree{position:absolute;width:24px;height:80px;background:#8a572d;border-radius:9px}.map-tree i,.map-tree b{position:absolute;width:74px;height:66px;left:-25px;top:-36px;border-radius:45%;background:#3b9855;box-shadow:inset 10px -8px #24713740,18px 13px #62b453,-18px 15px #55aa4c}.tree-one{left:4%;bottom:12%;transform:scale(1.15)}.tree-two{right:9%;top:32%;transform:scale(.72)}.flower-bed{position:absolute;left:1%;top:48%;padding:10px 13px;border-radius:50%;color:#fff6c2;background:#568f4e;letter-spacing:8px;text-shadow:12px 4px #ef65a6,-8px -4px #8a60c0;transform:rotate(-8deg)}.chapter-nav{position:absolute;z-index:6;left:50%;bottom:13px;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:6px 9px;border-radius:17px;background:#ffffebed;box-shadow:0 3px #37683647}.chapter-nav button{min-height:34px;border:0;border-radius:11px;padding:6px 11px;color:#fff;background:#7050a7;font-weight:800}.chapter-nav button:disabled{color:#777;background:#ddd8d0}.chapter-nav span{color:#72533a;font-weight:900;white-space:nowrap}.next-panel h2{font:800 33px/1 "Baloo 2";color:#e34d96;margin:8px 0 0}.next-panel h3{margin:3px 0 15px}.next-panel p b{display:inline-grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#f1d8ff}.next-panel>small{display:block;margin-top:12px;text-align:center;color:#507057}.game-shell{background:radial-gradient(circle at 50% -10%,#fff6b4 0 15%,transparent 40%),repeating-linear-gradient(20deg,transparent 0 70px,rgba(255,255,255,.06) 71px 74px),linear-gradient(#89d0ed 0 45%,#69ad68 45%)}.game-top{min-height:62px}.game-top-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.game-top-actions .wallet{margin-left:0}.game-help{min-height:43px;padding:0 14px;border:2px solid #fff1a4;border-radius:12px;color:#fff;background:#e04b94;box-shadow:0 3px #85306d;font:800 15px/1 "Baloo 2"}.game-help:hover{filter:brightness(1.12);transform:translateY(-1px)}.game-layout{display:grid;grid-template-columns:minmax(190px,240px) minmax(450px,700px) minmax(190px,240px);gap:14px;justify-content:center;align-items:start;padding:14px}.mission-panel,.tools-panel{padding:17px}.mission-panel h1{font:800 26px/1 "Baloo 2";margin:6px 0;color:#5b3f92}.mission-panel>.stars{font-size:24px}.mission-panel h3{margin-bottom:8px}.score-card{display:flex;justify-content:space-between;align-items:end;gap:8px;margin:9px 0;padding:8px 10px;border-radius:12px;color:#5d4383;background:#fff1b9}.score-card span{font-size:11px;font-weight:800}.score-card strong{font:800 20px "Baloo 2"}.level-challenge{display:grid;gap:2px;margin:8px 0;padding:8px 10px;border-left:4px solid #e34d96;border-radius:8px;color:#5d3d7e;background:#f2e8fa}.level-challenge.is-leading{border-color:#e0ad32;color:#684c16;background:#fff3bd}.level-challenge span{font-size:9px;font-weight:900;text-transform:uppercase}.level-challenge strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.level-challenge.is-first strong{overflow:visible;text-overflow:clip;white-space:normal}.goal{display:flex;gap:10px;padding:8px;margin:7px 0;align-items:center;border-radius:12px;background:#f4eaff}.goal>b{font-size:22px;color:#e54d95}.goal span{font-weight:800}.goal small{display:block;color:#775e7e}.moves{display:flex;justify-content:center;align-items:center;gap:8px;margin:14px 0 0;padding:8px;border-radius:14px;color:#fff;background:#e75598;box-shadow:0 4px #a53676}.moves strong{font:800 33px "Baloo 2"}.moves span{font-weight:800}.gravity-indicator{display:flex;align-items:center;gap:10px;margin:8px 0 0;padding:6px 10px;border-radius:14px;color:#3d2a6b;background:#ece4fb;box-shadow:0 3px #b9a6e3}.gravity-indicator b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#fff;background:#744ab8;font:800 22px "Baloo 2"}.gravity-indicator.is-up b{animation:gravity-nudge-up 1.4s ease-in-out infinite}.gravity-indicator.is-down b{animation:gravity-nudge-down 1.4s ease-in-out infinite}.gravity-indicator span{display:grid;font-weight:800;font-size:14px}.gravity-indicator small{font-weight:600;font-size:11px;opacity:.8}.board-stage{position:relative;display:grid;place-items:center;touch-action:none}.board-frame{width:min(100%,calc(100vh - 120px));aspect-ratio:1;padding:clamp(8px,1.5vw,16px);border-radius:7%;background:linear-gradient(145deg,#8155ad,#4e337e);border:5px solid #fff2ac;box-shadow:0 8px #38245e,0 12px 30px #1f2b4873,inset 0 0 0 3px #b683d0}.board{display:grid;grid-template-columns:repeat(var(--size),1fr);grid-template-rows:repeat(var(--size),1fr);width:100%;height:100%;gap:clamp(2px,.55vw,6px);padding:clamp(4px,.7vw,8px);border-radius:5%;background:repeating-linear-gradient(45deg,#53347a 0 16px,#5d3d84 17px 32px)}.tile{position:relative;min-width:0;min-height:0;padding:0;border:0;border-radius:25%;display:grid;place-items:center;color:#fff;text-shadow:0 2px 1px rgba(40,20,50,.4);box-shadow:inset 0 -5px #2d19322e,inset 0 3px #ffffff73,0 2px 2px #1f133259;transition:transform .14s ease,filter .14s ease,outline-color .14s ease;-webkit-user-select:none;user-select:none;touch-action:none;overflow:hidden}.tile:not(:disabled){cursor:grab}.tile:not(:disabled):active:not(.dragging){transform:scale(.94)}.tile.selected{transform:scale(.9);outline:4px solid #fff489;outline-offset:-2px;filter:brightness(1.13);z-index:3}.tile.selectable-neighbor{outline:3px dashed rgba(255,255,255,.92);outline-offset:-5px;animation:neighbor 1.1s ease-in-out infinite;z-index:2}.tile.dragging{z-index:8;cursor:grabbing;transform:translate(var(--drag-x),var(--drag-y)) scale(1.07);transition:none;filter:brightness(1.18) drop-shadow(0 7px 5px rgba(28,18,48,.4));outline:4px solid #fff489}.tile.drag-target{z-index:6;animation:none;transform:scale(.88);outline:4px solid #8dffc1;outline-offset:-2px;filter:brightness(1.25)}.tile.rejected{animation:piece-reject .24s ease-in-out;outline:4px solid #ffb4c5;z-index:5}.tile.flashing{z-index:7;animation:tile-flash .23s ease-in-out both;pointer-events:none}.tile.falling{z-index:4;animation:tile-fall .3s cubic-bezier(.2,.78,.32,1.12) var(--fall-delay) both;pointer-events:none}.tile.warping{z-index:4;animation:tile-warp .32s ease-out both;pointer-events:none}.board.is-dragging .tile:not(.dragging):not(.drag-target){filter:brightness(.78) saturate(.75)}.tile.hinted{animation:hint 1s infinite;z-index:3}.tile.terrain:before{content:"";position:absolute;inset:1px;border:3px dashed #d4b17b;border-radius:inherit}.piece-heart{background:linear-gradient(145deg,#ff758f,#d62b62)}.piece-house{background:linear-gradient(145deg,#74c5f6,#2471b8)}.piece-flower{background:linear-gradient(145deg,#c28aff,#7749b8)}.piece-paw{background:linear-gradient(145deg,#ffad62,#e15e32)}.piece-leaf{background:linear-gradient(145deg,#7edb73,#3b9d54)}.piece-sun{background:linear-gradient(145deg,#ffe56b,#e7a922)}.tile.drop{border:3px solid #fff3a6;color:#4d316f;background:linear-gradient(145deg,#fff8d5,#f4cb68);box-shadow:inset 0 -5px #8b5b2133,inset 0 3px #fff,0 2px 2px #1f133259;text-shadow:none}.tile.drop .piece-symbol{animation:basket-ready 1.5s ease-in-out infinite}.piece-symbol{font:800 clamp(17px,3.2vw,35px) "Baloo 2";line-height:1}.piece-paw .piece-symbol:before{content:"••";font-size:.32em;position:absolute;transform:translate(.35em,-.55em);letter-spacing:.15em}.special-mark{position:absolute;font-size:clamp(16px,2.4vw,28px);color:#fffbd1;text-shadow:0 0 6px white}.special-prism{background:conic-gradient(#f35,#fd5,#6c6,#4cf,#85f,#f35)}.special-line-h:after,.special-line-v:after{content:"";position:absolute;background:#fffc;border:1px solid white}.special-line-h:after{width:100%;height:12%}.special-line-v:after{height:100%;width:12%}.lock-mark{position:absolute;inset:5%;display:grid;place-items:center;border:3px solid #d4efff;border-radius:20%;color:#fff;font-size:22px}.obstacle-crate{background:linear-gradient(45deg,#9c5a2d,#d08b49);border-radius:14%}.crate{font-size:clamp(23px,3.5vw,38px)}.obstacle-crate small{position:absolute;right:4px;bottom:1px;width:18px;border-radius:50%;background:#fff0a2;color:#7a421c;text-shadow:none;font-weight:900}.game-message{width:fit-content;max-width:94%;min-height:30px;margin-top:5px;padding:5px 14px;border-radius:14px;font-weight:900;color:#fff;background:#28493ac7;box-shadow:0 2px #1e3a2a73;text-align:center;text-shadow:0 1px #29482d}.board-stage.invalid .board-frame{animation:shake .28s}.tutorial-callout{position:relative;z-index:8;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:4px 10px;align-items:center;width:min(590px,94%);margin-top:8px;padding:9px 11px;border:3px solid #ffde68;border-radius:16px;color:#3e3260;background:#fffdf0;box-shadow:0 4px #8f6a2d66,0 8px 20px #33245d33}.tutorial-callout span{grid-column:1 / -1;display:block;font-size:9px;letter-spacing:.12em;color:#9a4b91;font-weight:900}.tutorial-callout strong{font:800 18px "Baloo 2"}.tutorial-callout p{margin:0;font-size:12px}.tutorial-callout button{border:0;padding:7px 11px;border-radius:8px;background:#5b9d58;color:#fff;font-weight:800}.neighbor-helper{position:relative;width:90px;height:82px;margin:-8px auto 4px}.neighbor-hair{position:absolute;left:19px;top:2px;width:53px;height:56px;border-radius:48% 48% 38% 38%;background:#593e72;box-shadow:-7px 12px #593e72,7px 12px #593e72}.neighbor-face{position:absolute;left:26px;top:13px;width:39px;height:42px;border-radius:48% 48% 44% 44%;background:#f0b887}.neighbor-face i{position:absolute;top:17px;width:5px;height:6px;border-radius:50%;background:#3c3048}.neighbor-face i:first-child{left:9px}.neighbor-face i:nth-child(2){right:9px}.neighbor-face b{position:absolute;left:14px;top:29px;width:12px;height:5px;border-bottom:2px solid #a55361;border-radius:50%}.neighbor-body{position:absolute;left:16px;bottom:0;display:grid;place-items:center;width:60px;height:35px;border-radius:25px 25px 8px 8px;color:#ffe98a;background:#e64d96;font:900 20px "Baloo 2"}.tools-panel h2{margin:4px 0 9px;font:800 25px "Baloo 2";color:#583c8e}.booster-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.booster-grid button{position:relative;display:grid;place-items:center;min-height:76px;padding:5px;border:2px solid #ddcbed;border-radius:13px;background:#f8f1ff}.booster-grid button.active{border-color:#e34d96;background:#fff0bd;transform:translateY(-2px)}.booster-grid button:disabled{cursor:not-allowed;filter:grayscale(.7);opacity:.5}.booster-grid button b{font-size:22px}.booster-grid button span{font-size:10px;font-weight:800}.booster-grid button small{position:absolute;top:4px;right:5px;border-radius:8px;padding:1px 4px;color:#fff;background:#6849a1}.booster-help{min-height:52px;font-size:12px;color:#6f6177}.legend{padding:9px;border-radius:12px;background:#fff4c7}.legend h3{margin:0 0 6px;font-size:14px}.legend p{margin:5px 0;font-size:11px}.modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:15px;background:#231b3bb3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-card{position:relative;width:min(540px,100%);max-height:90vh;overflow:auto;border:4px solid #ffe48a;border-radius:22px;padding:24px;background:#fffdf2;box-shadow:0 10px #4d356d,0 18px 60px #211839}.modal-card.wide{width:min(840px,100%)}.modal-card h2{margin:0 0 10px;font:800 30px "Baloo 2";color:#603d92}.modal-close{position:absolute;right:13px;top:10px;border:0;font-size:27px;background:transparent}.leaderboard-modal{display:grid;gap:14px}.leaderboard-modal>p{margin:-4px 0 0;color:#6f6077}.ranking-list{display:grid}.ranking-list>div{display:grid;grid-template-columns:34px 43px minmax(0,1fr) auto;gap:9px;align-items:center;min-width:0;min-height:62px;padding:8px 5px;border-bottom:2px solid #eee3ef}.ranking-list>div.is-current{margin-inline:-6px;padding-inline:11px;border-radius:10px;color:#5a387e;background:#f2e7fb}.ranking-position{text-align:center;font-size:18px}.ranking-list .ranking-avatar{width:40px;height:40px}.ranking-list>div>span:nth-child(3){min-width:0}.ranking-list>div>span:nth-child(3) strong,.ranking-list>div>span:nth-child(3) small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ranking-list>div>span:nth-child(3) small{color:#786b7d;font-size:10px}.ranking-list>div>b:last-child{color:#a53979;white-space:nowrap;font-size:12px}.how-to-play{display:grid;gap:18px}.tutorial-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:4px;border-radius:12px;background:#e9deef}.tutorial-tabs button{min-height:42px;border:0;border-radius:9px;padding:7px 10px;color:#634c73;background:transparent;font-weight:900}.tutorial-tabs button.active{color:#fff;background:#65439b;box-shadow:0 3px #412a69}.tutorial-section{display:grid;gap:17px;animation:tutorial-panel .22s ease-out}.rule-lead{display:grid;gap:3px;padding:13px 16px;border-left:6px solid #e14b94;color:#45375b;background:#f5edf9}.rule-lead>b{color:#9a3474;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.rule-lead>strong{font:800 22px/1.15 "Baloo 2";color:#593c8d}.rule-lead>span{line-height:1.4}.tutorial-demo{display:grid;grid-template-columns:minmax(0,1fr) 230px;align-items:center;gap:22px;padding:18px 22px;border-radius:16px;color:#fff;background:linear-gradient(135deg,#65439b,#9b4f9c);box-shadow:inset 0 0 0 2px #fff3}.demo-copy span{font-size:10px;letter-spacing:.14em;font-weight:900;color:#ffe48a}.demo-copy strong{display:block;margin:4px 0;font:800 25px/1 "Baloo 2"}.demo-copy p{margin:0;line-height:1.4}.demo-copy small{display:block;margin-top:9px;color:#fff1a7;font-weight:800;line-height:1.35}.demo-board{--demo-shift: 63px;position:relative;display:grid;grid-template-columns:repeat(3,56px);grid-template-rows:repeat(3,56px);gap:7px;justify-content:center;padding:12px;border:3px solid #ffe58c;border-radius:16px;background:#49306f;box-shadow:inset 0 0 0 3px #7956a3}.demo-tile{position:relative;z-index:1;display:grid;place-items:center;border-radius:14px;color:#fff;font:900 29px/1 "Baloo 2";text-shadow:0 2px rgba(55,25,65,.4);box-shadow:inset 0 3px #ffffff59,0 4px #27163a59}.demo-heart{background:#dc4d7c}.demo-flower{background:#8f5ac7}.demo-leaf{background:#58ae61}.demo-sun{background:#edb933}.demo-tile.swap-down{z-index:3;animation:tutorial-swap-down 3.4s ease-in-out infinite}.demo-tile.swap-up{z-index:2;animation:tutorial-swap-up 3.4s ease-in-out infinite}.demo-tile.settle{animation:tutorial-demo-settle 3.4s ease-in-out infinite}.demo-tile.match{animation-name:tutorial-match;animation-duration:3.4s;animation-timing-function:ease-in-out;animation-iteration-count:infinite}.demo-tile.swap-down.match{animation-name:tutorial-swap-down-match}.demo-finger{position:absolute;z-index:4;left:50%;top:19px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:#543680;background:#fff6c7;box-shadow:0 3px #d2a94c;font:900 20px/1 sans-serif;transform:translate(-50%);animation:tutorial-finger 3.4s ease-in-out infinite}.direction-examples{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.direction-examples figure{display:flex;align-items:center;justify-content:center;gap:13px;min-width:0;margin:0;padding:9px;border-bottom:2px solid #eaddeb}.direction-examples figcaption{display:grid;gap:2px}.direction-examples figcaption b{color:#56398a}.direction-examples figcaption span{color:#49814f;font-size:12px;font-weight:900}.direction-examples figure:last-child figcaption span{color:#b43b56}.rule-pattern{position:relative;flex:0 0 auto;display:grid;grid-template-columns:repeat(5,14px);grid-template-rows:repeat(5,14px);gap:2px;padding:5px;border-radius:9px;background:#4e3474}.rule-pattern span{display:grid;place-items:center;border-radius:4px;color:transparent;background:#684c8a;font:900 11px/1 sans-serif}.rule-pattern span.active{color:#fff;background:#dc4d7c;box-shadow:inset 0 1px #ffffff73;animation:pattern-pulse 1.8s ease-in-out var(--pattern-delay) infinite}.rule-pattern.invalid span.active{filter:grayscale(.65);opacity:.68;animation:none}.rule-pattern.invalid>b{position:absolute;inset:50% auto auto 50%;z-index:2;display:grid;place-items:center;width:34px;height:34px;border:3px solid #fff;border-radius:50%;color:#fff;background:#c83f55;font:900 27px/1 sans-serif;transform:translate(-50%,-50%) rotate(-8deg)}.tutorial-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0;padding:0;list-style:none}.tutorial-steps li{display:grid;grid-template-columns:36px 1fr;gap:9px;align-items:start;min-width:0}.tutorial-steps li>b{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:#fff;background:#e04b94;font:900 19px "Baloo 2"}.tutorial-steps span{font-size:13px;line-height:1.35}.tutorial-steps strong{display:block;color:#593c8d;font-size:14px}.tutorial-note{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;padding:10px 14px;border-radius:12px;color:#59450f;background:#fff1b9;text-align:center}.basket-guide{align-items:center;color:#4d316f;background:#f0e8ff}.basket-guide>b{font-size:24px;animation:basket-guide-drop 1.8s ease-in-out infinite}.basket-guide strong{display:inline;color:#684098}.special-tutorial-grid,.booster-tutorial-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 20px}.special-tutorial-grid article,.booster-tutorial-grid article{display:flex;align-items:center;gap:14px;min-width:0;padding:13px 4px;border-bottom:2px solid #eaddeb}.special-tutorial-grid article>div,.booster-tutorial-grid article>div{min-width:0}.special-tutorial-grid article div>b{display:block;color:#a43d7a;font-size:11px;text-transform:uppercase}.special-tutorial-grid article div>strong,.booster-tutorial-grid article div>strong{display:block;color:#583b8d;font:800 18px/1.15 "Baloo 2"}.special-tutorial-grid article p,.booster-tutorial-grid article p{margin:3px 0 0;font-size:12px;line-height:1.35}.cascade-guide{display:grid;grid-template-columns:auto auto auto auto 1fr;align-items:center;gap:8px;padding:13px 16px;color:#fff;background:#39794e;border-radius:13px}.cascade-guide .cascade-piece{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#dc4d7c;box-shadow:inset 0 2px #ffffff59,0 3px #773a56;animation:cascade-pop 1.6s ease-in-out infinite}.cascade-guide>b{font:800 20px "Baloo 2";color:#fff19a}.cascade-guide p{grid-column:1 / -1;margin:2px 0 0;font-size:12px}.booster-tutorial-grid article>b{display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;border:3px solid #e2cbed;border-radius:13px;color:#51387f;background:#f5edfa;font-size:25px}.booster-tutorial-grid article div>span{display:block;margin-top:2px;color:#3f7248;font-size:12px;font-weight:900}.booster-demo{position:relative;display:grid;grid-template-columns:55px 55px 1fr;align-items:center;gap:9px;min-height:82px;padding:13px 16px;overflow:hidden;border-radius:13px;color:#503d66;background:#fff1b9}.booster-hammer{z-index:2;font-size:33px;transform-origin:right bottom;animation:hammer-hit 1.7s ease-in-out infinite}.booster-target{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;color:#fff;background:#58ae61;font-size:27px;box-shadow:inset 0 3px #ffffff59,0 4px #35713f;animation:hammer-target 1.7s ease-in-out infinite}.booster-demo div{min-width:0}.booster-demo div>b{color:#6a438f}.booster-demo p{margin:3px 0 0;font-size:12px;line-height:1.35}.tutorial-play{max-width:280px;margin:0 auto}.daily-week{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:15px 0}.daily-week div{display:grid;gap:4px;place-items:center;padding:11px 5px;border-radius:12px;background:#eee7f5}.daily-week .claimed{background:#d9efc9}.daily-week .next{outline:3px solid #f0b84b;background:#fff0bd}.store-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.store-grid article{text-align:center;padding:13px;border:2px solid #e0d1ed;border-radius:14px;background:#faf5ff}.store-grid article>b{font-size:30px}.store-grid article h3{margin:4px 0}.store-grid article p{min-height:58px;font-size:12px}.store-grid button,.milestones button,.actions button{padding:8px 12px;border:0;border-radius:9px;background:#6546a0;color:#fff;font-weight:800}.pre-booster{width:100%;display:grid;grid-template-columns:55px 1fr auto;align-items:center;gap:10px;margin:14px 0 20px;padding:12px;border:3px solid #dcc8ee;border-radius:14px;background:#f7efff;text-align:left}.pre-booster.active{border-color:#e34d96;background:#fff1bd}.pre-booster b{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;color:#fff;background:#754aa7;font-size:20px}.pre-booster span{font-weight:800}.pre-booster small{padding:4px 7px;border-radius:9px;color:#fff;background:#6849a1}.settings-list{display:grid;gap:9px}.settings-list label{display:flex;align-items:center;justify-content:space-between;padding:12px;border-radius:12px;background:#f5edfb;font-weight:800}.settings-list input{width:24px;height:24px;accent-color:#df478f}.milestones{display:grid;gap:9px}.milestones button{display:grid;grid-template-columns:65px 1fr 85px;align-items:center;text-align:left}.milestones button:disabled{color:#6b6371;background:#ded9e2}.result{text-align:center;display:grid;gap:12px}.result>.stars{font-size:50px}.result>strong{font:800 27px "Baloo 2"}.actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.actions .primary{background:#dd478d}.toast{position:fixed;z-index:70;left:50%;bottom:25px;transform:translate(-50%);padding:12px 22px;border-radius:14px;color:#fff;background:#3c7650;box-shadow:0 5px 20px #234;font-weight:800;animation:toast 3s forwards}@keyframes hint{50%{transform:scale(1.08);filter:brightness(1.3);outline:4px solid #fff37c}}@keyframes tutorial-panel{0%{opacity:0;transform:translateY(5px)}}@keyframes pattern-pulse{50%{filter:brightness(1.55);transform:scale(1.14)}}@keyframes cascade-pop{50%{filter:brightness(1.45);transform:translateY(-4px)}}@keyframes hammer-hit{0%,35%,75%,to{transform:rotate(-28deg) translateY(-5px)}52%,60%{transform:rotate(18deg) translate(8px,8px)}}@keyframes hammer-target{0%,48%,72%,to{opacity:1;transform:scale(1)}58%,66%{opacity:.15;transform:scale(.45);filter:brightness(2)}}@keyframes tile-flash{0%{filter:brightness(1)}45%{filter:brightness(2.1) saturate(1.35);outline:5px solid #fff6a3;transform:scale(1.12)}to{filter:brightness(1.6);opacity:.12;transform:scale(.55)}}@keyframes gravity-nudge-up{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes gravity-nudge-down{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}@keyframes tile-warp{0%{transform:scale(.2) rotate(-90deg);opacity:0;filter:drop-shadow(0 0 8px rgba(116,74,184,.9))}to{transform:scale(1) rotate(0);opacity:1;filter:none}}@keyframes tile-fall{0%{transform:translateY(var(--fall-from)) scale(.94);opacity:.35}78%{transform:translateY(3%) scale(1.03);opacity:1}to{transform:translateY(0) scale(1);opacity:1}}@keyframes tutorial-swap-down{0%,20%,78%,to{transform:translateY(0)}38%,68%{transform:translateY(var(--demo-shift))}}@keyframes tutorial-swap-up{0%,20%,78%,to{transform:translateY(0)}38%,68%{transform:translateY(calc(-1 * var(--demo-shift)))}}@keyframes tutorial-match{0%,42%,82%,to{filter:none;opacity:1}52%,64%{filter:brightness(1.7);outline:4px solid #fff28a;transform:scale(1.08);opacity:1}72%,78%{transform:scale(.45);opacity:0}}@keyframes tutorial-swap-down-match{0%,20%,82%,to{transform:translateY(0);filter:none;opacity:1}38%,45%{transform:translateY(var(--demo-shift))}52%,64%{transform:translateY(var(--demo-shift)) scale(1.08);filter:brightness(1.7);outline:4px solid #fff28a;opacity:1}72%,78%{transform:translateY(var(--demo-shift)) scale(.45);opacity:0}}@keyframes tutorial-demo-settle{0%,68%,84%,to{transform:translateY(0)}76%,80%{transform:translateY(var(--demo-shift))}}@keyframes tutorial-finger{0%,14%,80%,to{opacity:0;transform:translate(-50%,-5px)}22%{opacity:1;transform:translate(-50%)}40%,66%{opacity:1;transform:translate(-50%,var(--demo-shift))}74%{opacity:0;transform:translate(-50%,var(--demo-shift))}}@keyframes basket-ready{50%{transform:translateY(3px) scale(1.05)}}@keyframes basket-guide-drop{0%,20%,to{transform:translateY(-3px)}65%,80%{transform:translateY(4px)}}@keyframes neighbor{50%{transform:scale(.94);filter:brightness(1.18)}}@keyframes piece-reject{25%{transform:translate(-10%)}75%{transform:translate(10%)}}@keyframes current{50%{transform:translateY(-5px) scale(1.06);filter:brightness(1.12);box-shadow:0 9px #a86732,0 12px 24px #466938}}@keyframes shake{25%{transform:translate(-8px)}75%{transform:translate(8px)}}@keyframes pulse{50%{transform:scale(1.05);box-shadow:0 0 15px #fff}}@keyframes bob{to{transform:translateY(-10px) rotate(8deg)}}@keyframes toast{0%{opacity:0;transform:translate(-50%,15px)}10%,80%{opacity:1;transform:translate(-50%)}to{opacity:0}}@media(min-width:1051px)and (max-height:850px){.journey{height:calc(100dvh - 126px);min-height:520px}.welcome,.next-panel{padding:16px}.welcome h1{font-size:27px}.game-top{min-height:56px;padding-block:5px}.game-top .brand-badge{width:42px;height:42px}.game-top .brand strong{font-size:24px}.game-layout{grid-template-columns:minmax(170px,210px) minmax(420px,590px) minmax(180px,220px);gap:10px;padding:10px}.board-frame{width:min(100%,calc(100dvh - 145px))}.board-stage.has-tutorial .board-frame{width:min(100%,calc(100dvh - 225px))}.mission-panel,.tools-panel{padding:12px}.mission-panel h1{font-size:22px}.mission-panel>.stars{font-size:20px}.mission-panel h3{margin:8px 0 5px}.score-card,.goal{margin-block:5px;padding:6px 8px}.level-challenge{margin-block:5px;padding-block:5px}.moves{margin-top:8px;padding:5px}.moves strong{font-size:27px}.neighbor-helper{display:none}.tools-panel h2{margin-block:2px 6px;font-size:22px}.booster-grid button{min-height:62px}.booster-help{min-height:32px;margin-block:7px}.legend{padding:7px}.legend p{margin:3px 0;font-size:10px}}@media(max-width:1050px){.map-layout{grid-template-columns:220px 1fr}.next-panel{display:none}.game-layout{grid-template-columns:180px minmax(430px,1fr)}.tools-panel{grid-column:1 / -1;display:flex;align-items:center;gap:12px}.tools-panel .booster-grid{display:flex;flex:1}.tools-panel .booster-grid button{flex:1}.tools-panel .legend{display:none}}@media(max-width:720px){.map-top,.game-top{flex-wrap:wrap;gap:8px;padding:8px 10px}.map-top nav{order:3;width:100%;overflow-x:auto}.map-top nav button,.map-top nav a{white-space:nowrap;font-size:12px}.wallet{font-size:12px}.game-top .brand span{display:none}.game-top-actions{gap:7px}.game-help{min-height:38px;padding-inline:10px;font-size:13px}.game-top-actions .wallet{gap:5px}.game-top-actions .wallet span{padding:6px 8px}.map-layout,.game-layout{display:flex;flex-direction:column;padding:9px}.welcome{position:static;width:100%}.brand-badge{width:42px;height:42px}.brand strong{font-size:23px}.journey{width:100%;height:650px;min-height:650px;padding-inline:12px}.journey-title{max-width:86%;padding-inline:14px}.journey-title h2{font-size:24px}.level-node{width:78px}.level-marker{width:50px;height:50px;font-size:20px}.level-node:disabled .level-marker{width:46px;height:46px}.level-node small{width:92px;font-size:9px}.map-house{transform:scale(.72);transform-origin:right bottom}.tree-one{transform:scale(.85)}.chapter-nav{width:calc(100% - 24px);justify-content:space-between}.chapter-nav button{padding-inline:8px;font-size:12px}.game-layout{gap:8px}.mission-panel{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:5px;align-items:center}.mission-panel h1,.mission-panel>.stars,.mission-panel>h3,.mission-panel>p{display:none}.mission-panel .goal{margin:2px;padding:5px}.mission-panel .level-challenge{grid-column:1 / -1;margin:2px}.mission-panel .moves{grid-column:1 / -1;margin:2px;padding:3px}.mission-panel .moves strong{font-size:24px}.mission-panel .gravity-indicator{grid-column:1 / -1;margin:2px;padding:3px 8px}.mission-panel .gravity-indicator small{display:none}.board-stage,.board-frame{width:100%}.tools-panel{width:100%;padding:9px;display:block}.tools-panel>.eyebrow,.tools-panel h2,.booster-help{display:none}.neighbor-helper{display:none}.booster-grid button{min-height:55px}.piece-symbol{font-size:clamp(15px,7vw,31px)}.tile.selected,.tile.dragging,.tile.drag-target,.tile.rejected{outline-width:3px}.tutorial-callout{grid-template-columns:1fr auto;padding:8px 9px}.tutorial-callout span{grid-column:1 / -1}.tutorial-callout strong{font-size:18px}.tutorial-callout p{font-size:11px}.tutorial-callout button{grid-column:2;grid-row:2 / 4;padding-inline:9px}.modal-card.wide{padding:18px 14px}.tutorial-tabs button{min-height:48px;padding-inline:5px;font-size:11px;line-height:1.15}.rule-lead>strong{font-size:20px}.tutorial-demo{grid-template-columns:1fr;gap:14px;padding:15px;text-align:center}.demo-copy strong{font-size:22px}.demo-board{--demo-shift: 55px;grid-template-columns:repeat(3,48px);grid-template-rows:repeat(3,48px)}.demo-tile{font-size:25px}.tutorial-steps{grid-template-columns:1fr;gap:10px}.direction-examples{grid-template-columns:1fr;gap:3px}.direction-examples figure{justify-content:flex-start;padding-inline:20px}.special-tutorial-grid,.booster-tutorial-grid{grid-template-columns:1fr}.cascade-guide{grid-template-columns:auto auto auto auto 1fr}.booster-demo{grid-template-columns:45px 45px 1fr;padding-inline:11px}.booster-hammer{font-size:28px}.booster-target{width:42px;height:42px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.reduced-motion *,.reduced-motion *:before,.reduced-motion *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.tile .neighborhood-feature{position:absolute;right:2px;bottom:1px;z-index:4;font-size:clamp(9px,1.3vw,14px);filter:drop-shadow(0 1px 1px #fff)}.tile.has-water{box-shadow:inset 0 0 0 3px #43a5eb6b}.tile.flower-growth-2{box-shadow:inset 0 0 0 3px #ea5da16b}.tile.paw-path{background-image:radial-gradient(circle at 25% 25%,rgba(139,94,52,.16),transparent 45%)}.tile.has-portal{box-shadow:inset 0 0 0 3px #744ab88c,0 0 10px #744ab859}.tile.is-dark{filter:brightness(.62) saturate(.75)}.tile.is-morphing .piece-symbol{animation:symbol-morph 1.2s ease-in-out infinite alternate}.board-stage.chapter-1 .board-frame{border-color:#e78ab7}.board-stage.chapter-2 .board-frame{border-color:#d59a55}.board-stage.chapter-3 .board-frame{border-color:#816cc6}@keyframes symbol-morph{to{transform:rotate(12deg) scale(1.08)}}.streak-card,.coop-progress{display:grid;gap:6px;border:1px solid rgba(211,126,44,.28);border-radius:16px;padding:12px;background:linear-gradient(135deg,#fff8e8,#fff)}.streak-card span,.streak-card small{color:var(--muted)}.result-rich{display:grid;gap:14px}.stage-intro h3{margin:12px 0 4px;color:#603d92}.stage-intro-moves{margin:14px 0;text-align:center}.stage-intro-moves strong{display:block;font:800 40px "Baloo 2";color:#e54d95;line-height:1}.result-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.result-metrics span{display:grid;gap:2px;border-radius:12px;padding:10px 6px;background:#f4f0ff;text-align:center;font-size:12px}.result-metrics b{color:var(--ink);font-size:16px}.result-medals{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.result-medals span{border-radius:999px;padding:5px 9px;background:#fff1bf;color:#70520f;font-size:12px;font-weight:800;text-transform:capitalize}.restoration-grid,.social-members{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.restoration-grid article,.social-members article{display:grid;align-content:start;gap:7px;border:1px solid #dfd6ee;border-radius:14px;padding:12px;background:#fff}.restoration-grid article.restored{background:#edf9ef;border-color:#91c59a}.restoration-grid h3,.restoration-grid p{margin:0}.social-members article button{width:100%}.empty-mode{border:1px dashed #cfc4df;border-radius:12px;padding:14px;color:var(--muted);text-align:center}.preserve-streak{display:flex;align-items:flex-start;gap:8px;margin:10px 0;color:var(--muted);font-size:13px}@media(max-width:700px){.result-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.restoration-grid,.social-members{grid-template-columns:1fr}.tutorial-tabs{overflow-x:auto;justify-content:flex-start}.tutorial-tabs button{flex:0 0 auto}}.map-more,.map-more-menu{display:contents}.map-more-toggle,.map-more-backdrop,.play-now{display:none}@media(max-width:1050px){.play-now{display:grid;gap:6px;width:100%;grid-column:1 / -1;order:-1;justify-items:center;padding:10px 12px}.play-now-buttons{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:8px;width:100%;max-width:460px}.play-now button{min-height:42px;padding:8px 10px;border-radius:11px;font-size:14px;line-height:1.15}.play-now .play-now-secondary{border:2px solid #d8c6ee;background:#fff;color:#5b3d92;font-weight:800}.play-now small{text-align:center;color:#6b7f8f;font-size:12px}.welcome>.resume{display:none}}@media(max-width:720px){.play-now{order:1}.journey{order:2;height:560px;min-height:560px}.welcome{order:3;display:flex;flex-direction:column}.welcome>.eyebrow{order:1}.welcome>h1{order:2;margin-bottom:4px}.welcome>p{display:none}.welcome>.house-ranking{order:3;margin-top:8px}.welcome>.daily-card{order:4}.welcome>.event-card{order:5}.welcome>.streak-card{order:6;margin-top:15px}.map-top nav{overflow:visible}.map-more{display:block;position:relative}.map-more-toggle{display:inline-flex;align-items:center}.map-more-menu{display:none;position:absolute;right:0;top:calc(100% + 8px);z-index:30;min-width:195px;padding:6px;border-radius:14px;border:1px solid rgba(255,255,255,.32);background:#5e3d9f;box-shadow:0 12px 28px #1e123673}.map-more-menu.open{display:grid;gap:5px}.map-more-menu button,.map-more-menu a{display:block;width:100%;text-align:left}.map-more-backdrop{display:block;position:fixed;inset:0;z-index:20;padding:0;border:0;background:transparent}}@keyframes score-pop{0%{transform:scale(1)}40%{transform:scale(1.16);color:#e34d96}to{transform:scale(1)}}@keyframes goal-pop{0%{transform:scale(1)}45%{transform:scale(1.22);color:#2f8c4f}to{transform:scale(1)}}.score-card strong{display:inline-block;animation:score-pop .42s ease-out}.goal small{display:inline-block;animation:goal-pop .38s ease-out}.reduced-motion .score-card strong,.reduced-motion .goal small,.reduced-motion .tile.flashing,.reduced-motion .tile.falling,.reduced-motion .tile.warping,.reduced-motion .gravity-indicator b{animation:none}
