:root{font-family:'Microsoft YaHei','PingFang SC',sans-serif;color:#385d3c;background:#e2efc4;font-synthesis:none;--green:#4e893f;--cream:#fffbed}*{box-sizing:border-box}body{margin:0;min-height:100dvh}button,input{font:inherit}button{cursor:pointer;color:inherit;-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #b76de0;outline-offset:3px}button:disabled{cursor:default;opacity:.48;filter:saturate(.35)}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-defs{position:absolute;width:0;height:0}.forest-world{position:fixed;inset:0;z-index:-3;background:#dae8ad url('assets/forest.png') center/cover no-repeat;filter:saturate(1.25)}.sunlight{position:fixed;inset:0;z-index:-2;background:linear-gradient(180deg,#fffde340,#eaffc510 70%,#b0d67722);pointer-events:none}.floating-leaves{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:-1}.floating-leaves i{position:absolute;color:#fff4a5;left:8%;top:15%;font-size:23px;animation:float 7s ease-in-out infinite}.floating-leaves i:nth-child(2){left:88%;top:52%;animation-delay:-3s}.floating-leaves i:nth-child(3){left:77%;top:12%;font-size:14px;animation-delay:-5s}.topbar{max-width:1450px;margin:auto;padding:0 48px;height:82px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:2.4px}.brand b{font-weight:900}.brand small{display:block;font-size:9px;letter-spacing:1.6px;margin-top:6px;opacity:.65}.brand-mark{display:grid;place-items:center;background:#628e43;color:#fff9d7;width:37px;height:37px;border-radius:13px 13px 13px 3px;box-shadow:inset 0 1px 1px #ffffff80,0 3px 0 #3c6e3520}.brand-mark svg{width:24px;height:24px}.top-actions{display:flex;align-items:center;gap:13px}.save-label{font-size:10px;color:#66815d;margin-right:14px}.save-label i,.play-bottom i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#79ad5c;margin-right:5px}.round{width:37px;height:37px;background:#fffcedc9;border:1px solid #fffbe7;border-radius:14px;display:grid;place-items:center;box-shadow:0 3px 0 #4e74331a}.round svg{width:19px;height:19px}.star-bank{display:flex;align-items:center;gap:9px;background:#fffcedc9;border:1px solid #fffbe7;border-radius:22px;padding:7px 16px;box-shadow:0 3px 0 #4e74331a}.star-bank svg{width:20px;height:20px;fill:#f7c950;stroke:#d69a32}.star-bank b{font:800 17px Arial;color:#946d2b}.star-bank span{font-size:10px;color:#9a8e67}.game-layout{display:grid;grid-template-columns:224px minmax(0,500px) 224px;gap:38px;max-width:1064px;padding:0 20px;margin:0 auto;align-items:start}.left-rail{padding-top:97px}.map-card{border:2px solid #fff9e4;border-radius:26px;background:linear-gradient(135deg,#fffbeded,#fff9e2c9);box-shadow:0 6px 0 #6f913726,0 15px 40px #5e6c2910;padding:25px 22px 0;overflow:hidden}.eyebrow{font:700 8px Arial;letter-spacing:1.8px;color:#9caa79}.map-card h2{font-size:17px;letter-spacing:1px;margin:11px 0 9px}.map-card>p{font-size:10px;color:#9a9c73;margin:0}.level-map{height:337px;position:relative;margin-top:10px;background:radial-gradient(ellipse at 40% 30%,#d8eab670,transparent 65%)}.level-map:before{content:'';position:absolute;left:30%;top:10%;width:43%;height:79%;border:3px dashed #c8d4a0;border-radius:45% 30% 45% 30%;transform:rotate(-11deg)}.map-node{position:absolute;display:flex;flex-direction:column;align-items:center;gap:2px;z-index:1}.map-node button{width:47px;height:47px;border:3px solid #fff5da;border-radius:50%;background:linear-gradient(#e1e5c9,#c9cfaa);box-shadow:0 4px 0 #aab38c;color:#a1ad87;font:800 17px Arial}.map-node.current button{width:58px;height:58px;background:linear-gradient(#ffc964,#f4a53c);color:#fff9e7;box-shadow:0 5px 0 #c88731,0 0 0 6px #f9dd8280;text-shadow:0 2px #c48530}.map-node.done button{background:linear-gradient(#a6d575,#7db74f);box-shadow:0 4px 0 #5f9141;color:white}.map-node small{color:#edb348;letter-spacing:1px;font:11px Arial;min-height:13px}.map-node.current:after{content:'你在这里';position:absolute;top:15px;left:69px;white-space:nowrap;font-size:9px;color:#b78d45;background:#fff5d5;border-radius:8px;padding:4px 7px}.map-floor{border-top:1px dashed #d9dcb9;padding:15px 0;color:#9da27b;font-size:9px;display:flex;justify-content:space-between}.map-floor span{color:#97b969}.little-card{margin-top:22px;display:flex;gap:12px;padding:17px 10px;background:#f7f8dd70;border:1px solid #ffffff70;border-radius:18px}.little-sun{font-size:31px;color:#dfb65b}.little-card b{font-size:11px;color:#69814b}.little-card p{font-size:9px;line-height:1.9;color:#859270;margin:7px 0 0}.game-heading{text-align:center;margin:5px 0 18px}.chapter-tag{font-size:9px;letter-spacing:3px;color:#698c4b}.chapter-tag span{color:#b2bd78;padding:0 10px}.game-heading h1{display:inline-block;position:relative;font-weight:1000;font-size:58px;letter-spacing:5px;line-height:1.2;margin:8px 0 3px;color:#fff9d9;-webkit-text-stroke:1px #598145;paint-order:stroke fill;text-shadow:0 4px 0 #4c7d36,2px 0 #4c7d36,-2px 0 #4c7d36,0 -2px #4c7d36,0 8px 0 #c1ce89,0 11px 20px #57783720}.game-heading h1 span{color:#ffda6a}.game-heading h1 i{font-style:normal;font-size:40px;position:absolute;right:-32px;top:-11px;color:#6e9b49;text-shadow:0 2px #e9ecbc;-webkit-text-stroke:0}.game-heading p{font-size:10px;color:#729156;letter-spacing:4px;margin:6px 0 0}.level-banner{position:relative;display:flex;align-items:center;justify-content:center;gap:13px;margin:0 0 13px}.level-banner>div{background:linear-gradient(#bc8a54,#a97143);border:2px solid #ead09e;box-shadow:inset 0 1px #ebc594,0 3px 0 #82593133;border-radius:11px;color:#fff4d7;padding:9px 24px;display:flex;gap:12px;font-size:11px}.level-banner b{font-size:12px}.banner-leaf{font-size:23px;color:#86a85a}.reverse{transform:scaleX(-1)}.pause{position:absolute;right:1px;top:1px;background:#fffae2;border:2px solid #fffdf1;border-radius:12px;width:35px;height:35px;box-shadow:0 3px #72894733;color:#829a5b;display:grid;place-items:center}.pause svg{width:16px;height:16px;stroke-width:3}.game-hud{display:flex;background:linear-gradient(120deg,#fffdf2,#fff8dd);border:2px solid #fffef0;border-radius:22px;padding:13px 18px;gap:20px;box-shadow:0 5px 0 #687b3c1a;min-height:100px}.moves-box{width:85px;text-align:center;border-right:1px dashed #dedfc0;padding-right:16px;flex-shrink:0}.moves-box>span{display:block;color:#9c9874;font-size:10px}.moves-box strong{display:block;font:900 39px/1.25 Arial;color:#ed9b38;text-shadow:0 2px #ffe3a5}.moves-box small{display:block;font-size:7px;white-space:nowrap;color:#b2a480}.moves-box.low strong{color:#e46f60;animation:pulse 1s infinite}.goals-box{flex:1;min-width:0}.goals-label{display:flex;justify-content:space-between;font-size:10px;margin:1px 0 7px}.goals-label b{font-size:11px}.goals-label>span{font-size:8px;color:#a8ab85}.goals{display:flex;gap:12px;align-items:center;justify-content:space-around}.goal{display:flex;align-items:center;gap:5px}.goal .animal{width:41px;height:39px}.goal strong{font:800 17px Arial;color:#7b8b57;white-space:nowrap}.goal small{font:10px Arial;color:#b4b698}.goal.done strong{color:#73a24a}.goal.done svg{width:18px;height:18px;color:#78a848}.goal-ice{display:grid;place-items:center;background:#c8eff6;border:2px solid #f5ffff;color:#69b2d4;width:31px;height:33px;border-radius:9px;font-size:21px;margin-right:3px;box-shadow:0 2px #acd5e2}.score-row{display:flex;align-items:center;justify-content:space-between;padding:14px 7px 11px}.score-label{font-size:9px;color:#7c9460}.score-label b{font:800 16px Arial;color:#6c8748;margin-left:8px}.star-progress{display:flex;align-items:center;gap:8px;width:48%}.star-track{height:7px;border-radius:10px;background:#c8d8a1;box-shadow:inset 0 1px 2px #7c986130;flex:1;overflow:hidden}.star-track i{height:100%;display:block;background:linear-gradient(90deg,#eeb946,#ffd86c);width:0;transition:width .3s}.star-progress>span{font-size:17px;color:#a8be82;white-space:nowrap;letter-spacing:2px}.star-progress>span .earned{color:#f7bc43;text-shadow:0 1px #bd8e2c}.board-shell{position:relative;padding:12px;border-radius:26px;border:3px solid #f8e4aa;background:linear-gradient(135deg,#a8cb73,#83af55);box-shadow:inset 0 0 0 2px #638c3b,0 7px 0 #658d3f,0 10px 0 #e4d6a6,0 15px 30px #4e682b30;isolation:isolate}.board-trim{position:absolute;inset:5px;border:1px solid #e1eac36b;border-radius:20px;pointer-events:none}.board{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px;padding:6px;border-radius:17px;background:#537c44;border:2px solid #d0dda1;box-shadow:inset 0 3px 10px #244c3e66;touch-action:none;position:relative;overflow:hidden;direction:ltr}.cell{position:relative;aspect-ratio:1;border:1px solid #ffffff65;background:linear-gradient(145deg,#f6d690,#efbb72);padding:2px;display:grid;place-items:center;border-radius:12px;box-shadow:inset 0 2px 1px #ffffff70,0 2px 1px #233e3b40;transition:filter .12s,transform .15s;user-select:none;min-width:0;touch-action:none}.cell[data-type='1']{background:linear-gradient(145deg,#ffecd5,#e9caaa)}.cell[data-type='2']{background:linear-gradient(145deg,#ecc59a,#c89464)}.cell[data-type='3']{background:linear-gradient(145deg,#cae58d,#97c15e)}.cell[data-type='4']{background:linear-gradient(145deg,#ffec9c,#eec65e)}.cell[data-type='5']{background:linear-gradient(145deg,#e2d5f4,#ba9ed5)}.cell:after{content:'';position:absolute;inset:3px;border-radius:9px;border-top:1px solid #ffffff50;pointer-events:none}.cell:hover{filter:brightness(1.09);z-index:2}.cell.selected{outline:3px solid #fffbc1;outline-offset:-1px;transform:scale(1.08);z-index:4;box-shadow:0 0 16px #ffdb6d}.cell.hinted{z-index:3;animation:hint 1s infinite}.cell.clearing{animation:pop .29s both;pointer-events:none}.cell.dropping{animation:drop .3s cubic-bezier(.25,.7,.4,1) both}.cell.invalid{animation:shake .3s}.cell.iced{background:linear-gradient(135deg,#c6f5ffa8,#7dc5e5d6);border-color:#e4fbff;box-shadow:inset 0 0 0 2px #e5fcffc9,0 2px 0 #64a8c2}.cell.iced:before{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:10px;background:linear-gradient(125deg,transparent 15%,#faffff7a 17%,transparent 24%,transparent 67%,#edffff91 68%,transparent 72%);border:1px solid #eaffff}.animal{display:block;width:100%;height:100%;background-image:url('assets/animals.png');background-size:400% 300%;background-position:var(--x) var(--y);background-repeat:no-repeat;pointer-events:none;filter:drop-shadow(0 2px 1px #654f3020)}.cell .animal{width:105%;height:105%}.power-badge{position:absolute;bottom:0;right:0;z-index:3;color:#fff4bd;background:#d49a28;border:1px solid #fff8c0;border-radius:5px;font:bold 15px/16px Arial;width:20px;box-shadow:0 1px 3px #67471450}.cell.special-bomb{background:linear-gradient(#e8b2ed,#c77dd0)}.cell.special-rainbow{background:conic-gradient(#ffa4ba,#ffe88a,#adeda0,#8ddaf3,#cb9feb,#ffa4ba);box-shadow:inset 0 0 8px #fffbc9}.rainbow-orb{font-size:32px;line-height:1;color:#fffbe3;text-shadow:0 1px 3px #ae7a8d,0 0 10px #fff;animation:rainbow 4s linear infinite}.effects{position:absolute;inset:0;pointer-events:none;z-index:6;overflow:hidden;border-radius:24px}.spark{position:absolute;left:var(--px);top:var(--py);color:var(--color);font-size:20px;text-shadow:0 0 6px #ffffcf;animation:spark .65s ease-out both}.combo{position:absolute;inset:35% 0 auto;pointer-events:none;text-align:center;font-size:40px;font-weight:1000;font-style:italic;color:#fff6ca;text-shadow:0 3px #e29037,2px 0 #e29037,-2px 0 #e29037,0 -2px #e29037,0 6px 20px #67532a50;z-index:9;opacity:0}.combo.show{animation:combo .85s both}.combo small{display:block;font-size:14px;color:#fffce6;margin-top:5px;letter-spacing:3px;font-style:normal}.guide-hand{position:absolute;left:var(--hx);top:var(--hy);z-index:10;font-size:42px;line-height:1;pointer-events:none;filter:drop-shadow(0 2px 2px #4b633c80);animation:swipe 1.8s ease-in-out infinite}.board-tip{text-align:center;font-size:10px;color:#7f945e;margin:20px 0 12px;min-height:15px;line-height:1.6}.board-tip span{color:#b6bd72;margin-right:4px}.tool-tray{display:flex;justify-content:center;gap:40px;padding:8px 12px 13px;border-radius:22px;background:#fff9e5a6;border:1px solid #ffffe9ad;box-shadow:0 4px 0 #7a944020}.tool{border:0;background:none;display:flex;position:relative;align-items:center;flex-direction:column;gap:8px;font-size:10px;color:#657e4c;padding:3px 8px;min-width:70px}.tool-icon{position:relative;width:47px;height:47px;border:2px solid #fff7d5;border-radius:16px;display:grid;place-items:center;box-shadow:inset 0 2px 1px #ffffff60,0 4px 0 #a0ad6e55;transition:transform .2s}.tool:hover .tool-icon{transform:translateY(-3px) rotate(-4deg)}.tool-icon svg{width:26px;height:26px;stroke-width:1.8}.hint .tool-icon{background:linear-gradient(#ffe59a,#f4c95d);color:#ab8531}.shuffle .tool-icon{background:linear-gradient(#b7e6c2,#8ac5a3);color:#4c8f72}.hammer .tool-icon{background:linear-gradient(#e5c9f3,#c3a0df);color:#8b65b0}.tool-icon b{position:absolute;right:-7px;top:-5px;border:2px solid #fff9dd;background:#f7f3dc;color:#7d8a5d;font:700 10px/17px Arial;border-radius:50%;width:21px;height:21px;box-shadow:0 2px #576e3820}.tool small{position:absolute;right:0;bottom:3px;font:8px Arial;border:1px solid #bfc9a0;color:#a1ad81;border-radius:4px;padding:2px 3px}.tool.active .tool-icon{outline:3px solid #fff5bd;box-shadow:0 0 15px #d3a1ff}.play-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:15px;color:#879c6b;font-size:8px;gap:8px}.play-bottom button{background:none;border:0;display:flex;align-items:center;gap:4px;font-size:9px;color:#819361;padding:3px}.play-bottom button svg{width:12px;height:12px}.right-rail{padding-top:85px}.buddy{position:relative;display:flex;align-items:center;flex-direction:column;margin-bottom:30px}.speech{background:#fffbebed;border:2px solid #fffef3;border-radius:20px 20px 20px 5px;font-size:11px;line-height:1.9;letter-spacing:.3px;padding:13px 19px;margin-bottom:12px;transform:rotate(2deg);box-shadow:0 4px 0 #91a25a20;color:#8c8f62}.mascot{width:150px;height:143px;z-index:1;animation:float 4s ease-in-out infinite}.buddy-name{font-size:8px;color:#9aa370;margin-top:8px;z-index:1}.buddy-ground{position:absolute;bottom:9px;width:126px;height:19px;border-radius:50%;background:#9fb86c38;filter:blur(3px)}.recipe-card{background:linear-gradient(135deg,#fffbeded,#fff9e2cc);border:2px solid #ffffec;border-radius:24px;padding:22px 19px;box-shadow:0 5px 0 #6f91371a}.recipe-card h3{font-size:16px;margin:9px 0 21px}.recipe{position:relative;padding-bottom:14px;margin-bottom:14px;border-bottom:1px dashed #dfe1c5}.mini-tiles{font:14px Arial;letter-spacing:2px;color:#dfb25d;display:block;margin-bottom:7px}.mini-tiles.five{color:#bd9bd6;font-size:12px}.mini-tiles.cross{color:#8fba76;font:bold 13px Arial;letter-spacing:4px}.recipe b{font-size:10px;color:#7d8e5f}.recipe p{font-size:8px;color:#a3ab87;line-height:1.8;margin:4px 0 0;max-width:145px}.recipe-badge{position:absolute;right:0;top:0;display:grid;place-items:center;width:25px;height:25px;border-radius:8px;border:1px solid #fff3c4;background:#f5d781;color:#b49245;font-size:20px}.rainbow-badge{background:conic-gradient(#f3aabc,#f9e395,#bce3a3,#addef1,#d3b5e7,#f3aabc);color:#fffbe1}.bomb-badge{background:#d5b4e5;color:#9664b2}.text-link{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;background:none;font-size:10px;color:#839960;padding:1px 0}.text-link svg{width:15px;height:15px}.right-note{text-align:center;font-size:9px;line-height:2;color:#8a9d6b;margin:20px 0}.page-footer{display:flex;justify-content:center;gap:20px;align-items:center;margin:29px auto 20px;font-size:8px;color:#8b9e6b}.page-footer button{border:0;background:none;font-size:8px;padding:0;color:inherit}.page-footer #mobile-map{display:none}.page-footer a{opacity:.7}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,15px);background:#355838ed;color:#fff8dd;border:1px solid #fbffcb66;box-shadow:0 5px 30px #36573225;border-radius:14px;padding:12px 22px;font-size:12px;z-index:100;opacity:0;pointer-events:none;transition:.2s;max-width:90vw;width:max-content}.toast.visible{opacity:1;transform:translate(-50%,0)}dialog{border:3px solid #fff9d9;border-radius:29px;background:linear-gradient(135deg,#fffef3,#f7f0d8);color:#4d6d43;box-shadow:0 8px 0 #698c4e66,0 25px 100px #27402c55;padding:30px;max-width:calc(100vw - 28px);width:420px;max-height:90dvh;overflow:auto}dialog::backdrop{background:#29472f66;backdrop-filter:blur(5px)}.modal-close{position:absolute;right:13px;top:13px;width:30px;height:30px;box-shadow:none;color:#92a376;background:#e9edcc80;border:0;z-index:1}.modal-close svg{width:15px;height:15px}.modal-eyebrow{text-align:center;display:block;font-size:9px;letter-spacing:2px;color:#a5ac80;margin:0 0 10px}dialog h2{text-align:center;font-size:25px;margin:15px 0 12px}dialog p{font-size:12px;line-height:1.9;color:#91a078}.modal-animal{width:100px;height:95px;margin:10px auto}.result-stars{text-align:center;font-size:44px;letter-spacing:10px;color:#efb544;text-shadow:0 3px #cc9634;margin:16px 0}.result-score{text-align:center;font:900 42px Arial;color:#6e974f;margin:12px 0}.result-sub{text-align:center}.primary,.secondary{display:block;width:100%;border:2px solid #fff3c8;border-radius:15px;padding:12px 15px;font-weight:700;font-size:13px;background:linear-gradient(#a6d66a,#7fb54f);color:#fffce3;box-shadow:0 4px #63913d;margin:16px 0 10px;text-shadow:0 1px #719c49}.secondary{background:#eeefd8;color:#91a074;border-color:#fafae9;box-shadow:0 3px #d2d9b4;text-shadow:none;font-size:11px;margin-top:13px}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:18px 0;font-size:12px}.setting-row input[type=checkbox]{accent-color:#7cae50;width:20px;height:20px}.volume{display:block;font-size:11px;margin:20px 0;color:#87986b}.volume input{display:block;width:100%;accent-color:#86b456;margin-top:10px}.track-picker{display:flex;gap:7px;margin:14px 0}.track-picker button{flex:1;padding:12px 5px;border:1px solid #dfe3bf;background:#f4f4e1;border-radius:12px;color:#8a9c72;font-size:10px;line-height:1.8}.track-picker button.active{border-color:#94bd69;background:#e8efcf;color:#668b43;box-shadow:inset 0 0 0 1px #b2cc87}.audio-state{text-align:center;color:#a5ad89;font-size:9px!important}.help-list{padding-left:20px;font-size:11px;line-height:2.1;color:#83956d}.help-list li{margin-bottom:9px}.map-dialog-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:25px 0}.map-dialog-grid button{border:2px solid #faffdf;border-radius:14px;background:#c4d5a3;color:#fffce5;box-shadow:0 3px #94af75;height:54px;font-weight:700}.map-dialog-grid button.current{background:#f1ba54;box-shadow:0 3px #cea049}.map-dialog-grid button small{display:block;font:9px Arial;letter-spacing:2px}.board-shell.hammer-mode .cell{cursor:crosshair}.board-shell.busy .cell{cursor:wait}.reduced-motion *,.reduced-motion *:before,.reduced-motion *:after{animation:none!important;transition:none!important}
@keyframes float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-7px) rotate(1deg)}}@keyframes pulse{50%{transform:scale(1.07)}}@keyframes hint{0%,100%{box-shadow:inset 0 0 0 2px #fffec4,0 0 5px #fff9aa;transform:scale(1)}50%{box-shadow:inset 0 0 0 3px #ffffe4,0 0 18px #fff9aa;transform:scale(1.07)}}@keyframes pop{0%{transform:scale(1);opacity:1}35%{transform:scale(1.2);filter:brightness(1.4)}100%{transform:scale(.1) rotate(12deg);opacity:0}}@keyframes drop{from{transform:translateY(var(--fall,-45px));opacity:.6}to{transform:translateY(0);opacity:1}}@keyframes shake{25%,75%{transform:translateX(-4px)}50%{transform:translateX(4px)}}@keyframes spark{from{transform:translate(-50%,-50%) scale(.2);opacity:1}to{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(.4) rotate(70deg);opacity:0}}@keyframes combo{0%{opacity:0;transform:scale(.4) rotate(-7deg)}20%,65%{opacity:1;transform:scale(1) rotate(-5deg)}100%{opacity:0;transform:translateY(-25px) scale(1.1)}}@keyframes swipe{0%,20%{transform:translate(0,0) rotate(-15deg);opacity:0}30%{opacity:1}75%{transform:translate(var(--sx),var(--sy)) rotate(-5deg);opacity:1}100%{transform:translate(var(--sx),var(--sy)) rotate(-5deg);opacity:0}}@keyframes rainbow{50%{filter:hue-rotate(120deg)}}
@media(min-width:1500px){.game-layout{padding-top:20px}.topbar{height:95px}.game-heading{margin-bottom:24px}.left-rail{padding-top:110px}.right-rail{padding-top:100px}}
@media(max-width:1100px){.game-layout{gap:23px;grid-template-columns:190px minmax(0,470px) 190px;max-width:936px}.map-card{padding:23px 16px 0}.map-card h2{font-size:15px}.recipe-card{padding:20px 15px}.topbar{padding-inline:30px}.game-heading h1{font-size:54px}.tool-tray{gap:30px}.cell{border-radius:10px}}
@media(max-width:920px){.game-layout{grid-template-columns:175px minmax(0,480px);max-width:720px;gap:28px}.right-rail{display:none}.topbar{height:75px}.map-node.current:after{left:62px;font-size:8px}.map-card{padding:20px 12px 0}.map-card h2{font-size:14px}.map-card .eyebrow{font-size:7px;letter-spacing:1px}.level-map{height:330px}}
@media(max-width:680px){.topbar{height:65px;padding:0 18px}.brand{font-size:9px;letter-spacing:1.5px;gap:8px}.brand small{font-size:7px;letter-spacing:1px}.brand-mark{width:31px;height:31px;border-radius:11px 11px 11px 2px}.brand-mark svg{width:20px;height:20px}.top-actions{gap:7px}.round{width:32px;height:32px;border-radius:12px}.round svg{width:16px;height:16px}.star-bank{padding:6px 10px;gap:5px}.star-bank svg{width:16px;height:16px}.star-bank b{font-size:14px}.star-bank span,.save-label{display:none}.game-layout{display:block;max-width:510px;padding:0 17px}.left-rail{display:none}.game-heading{margin:3px 0 14px}.game-heading h1{font-size:47px;margin:7px 0 4px;letter-spacing:4px}.game-heading h1 i{font-size:31px;right:-23px;top:-7px}.chapter-tag{font-size:8px;letter-spacing:2px}.game-heading p{font-size:9px;letter-spacing:3px}.level-banner{margin-bottom:12px}.level-banner>div{padding:7px 23px;font-size:10px;border-radius:10px}.level-banner b{font-size:11px}.pause{width:31px;height:31px}.game-hud{padding:12px 13px;gap:12px;min-height:90px;border-radius:20px}.moves-box{width:73px;padding-right:12px}.moves-box strong{font-size:34px}.moves-box small{font-size:6px}.goals{gap:5px}.goal .animal{width:34px;height:33px}.goal strong{font-size:15px}.goal small{font-size:9px}.goals-label{font-size:9px}.goals-label>span{font-size:7px}.goals-label b{font-size:10px}.goal-ice{width:24px;height:28px;font-size:17px}.score-row{padding:13px 5px 10px}.score-label{font-size:8px}.score-label b{font-size:15px}.star-progress>span{font-size:16px;letter-spacing:1px}.board-shell{padding:8px;border-radius:22px;border-width:3px}.board{gap:3px;padding:5px;border-radius:14px}.cell{border-radius:9px;padding:1px}.cell:after{border-radius:6px;inset:2px}.board-tip{font-size:9px;margin-top:19px;margin-bottom:9px}.tool-tray{gap:34px;padding:7px 10px 12px;border-radius:19px}.tool{font-size:9px;min-width:59px;padding:3px 6px;gap:8px}.tool-icon{width:43px;height:43px;border-radius:14px}.tool-icon svg{width:24px;height:24px}.tool-icon b{width:20px;height:20px;line-height:16px}.tool small{display:none}.play-bottom{margin-top:14px;font-size:7px}.play-bottom button{font-size:8px}.page-footer{flex-wrap:wrap;font-size:7px;gap:15px;margin:23px 15px 15px}.page-footer button{font-size:7px}.page-footer #mobile-map{display:block}.page-footer>span{flex-basis:100%;text-align:center}.power-badge{width:16px;font-size:12px;line-height:13px}.rainbow-orb{font-size:27px}.combo{font-size:34px}.forest-world{background-image:url('assets/forest-mobile.png')}}
@media(max-width:360px){.topbar{padding:0 12px}.top-actions{gap:5px}.brand{letter-spacing:1px;font-size:8px}.game-layout{padding:0 12px}.game-heading h1{font-size:43px}.game-hud{gap:8px;padding:11px 9px}.moves-box{width:64px;padding-right:8px}.goal .animal{width:29px;height:29px}.goal strong{font-size:13px}.goals-label>span{display:none}.goal{gap:2px}.goal-ice{width:22px;height:26px}.tool-tray{gap:27px}.board{gap:2px}.cell{border-radius:7px}.power-badge{font-size:10px;width:13px;line-height:11px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* Power animals retain their face, with strong, distinct effect markings. */
.cell[class*="special-"] .animal{position:relative;z-index:1;filter:drop-shadow(0 0 4px #fff9c3)}
.power-aura{position:absolute;inset:2px;border-radius:9px;pointer-events:none;z-index:2}
.special-row .power-aura{background:repeating-linear-gradient(0deg,transparent 0 9%,#fffce080 10% 14%,transparent 15% 25%);box-shadow:inset 0 0 0 2px #fff2a5}
.special-column .power-aura{background:repeating-linear-gradient(90deg,transparent 0 9%,#fffce080 10% 14%,transparent 15% 25%);box-shadow:inset 0 0 0 2px #fff2a5}
.special-bomb .power-aura{inset:1px;border:2px dashed #fff0a3;box-shadow:inset 0 0 12px #eb7cf780,0 0 8px #edb0e4;animation:pulse 1.6s infinite}
.special-rainbow .power-aura{inset:0;border:3px solid transparent;background:linear-gradient(transparent,transparent) padding-box,conic-gradient(#ffb3d2,#fff294,#b9ffa4,#a4eaff,#e7b2ff,#ffb3d2) border-box;opacity:.7;animation:rainbow 3s linear infinite}
.special-rainbow .power-badge{background:linear-gradient(135deg,#eda0ce,#a9b9e9);color:#fff;border-color:#fff}
.map-pagination{display:flex;gap:10px}.map-pagination button{flex:1;margin:0}
.cell.special-rainbow .power-aura{background:none;border-color:#fff9cb;box-shadow:inset 0 0 6px #fff,0 0 9px #e0b5ff;opacity:1}
