/* Maths play: lively interaction with exact visible quantities. */
.levelCard{box-shadow:0 5px 16px #75608008;transition:border-color .18s,background .18s}
.levelCard.active{border-color:var(--level);background:linear-gradient(110deg,#fff,#fff8f4);box-shadow:0 5px 18px #9a778813}
.levelCard .levelCheck{background:var(--level)}.levelCard strong{font-size:21px;letter-spacing:-.035em}
.playBoard{padding:0;overflow:hidden;background:linear-gradient(160deg,#fffaf0,#fffefd);border:2px solid #f0d4a4;border-radius:25px;box-shadow:0 8px 22px #b0905810}
.shopBoardHeader{display:flex;align-items:center;gap:12px;min-height:82px;padding:20px 20px 16px;background:repeating-linear-gradient(90deg,#ffeed5 0 26px,#fff7e7 26px 52px);border-bottom:1px solid #efdcc0}
.shopBuddy{width:44px;height:44px;display:grid;place-items:center;background:#fff;border-radius:16px;font-size:29px;box-shadow:0 3px 0 #dfc4a044}
.shopBoardHeader small{display:block;font-size:11px;color:#9f7b58;font-weight:750;letter-spacing:.03em}
.shopBoardHeader strong{display:block;font-size:20px;color:#7f583d;line-height:1.5}
.shopSpark{margin-left:auto;color:#e5a64f;font-size:29px}.shopBoardContent{padding:20px}
.fruitBtn{border:1.5px solid #eed6ba;border-radius:18px;background:linear-gradient(#fff,#fff8e9);box-shadow:0 4px 0 #e8d5ba;min-height:74px;padding:7px;transition:transform .15s,background .15s,border-color .15s}
.fruitBtn .fruitSvg{filter:drop-shadow(0 3px 2px #85572a16);height:62px;max-width:62px}
.fruitBtn:hover{border-color:#dcad78}.fruitBtn:active{transform:translateY(3px) scale(.97);box-shadow:0 1px 0 #e8d5ba}
.fruitBtn.ghost{opacity:.22;box-shadow:none}.fruitBtn.counted{background:#edf8e9;border-color:#88b88d;box-shadow:0 4px 0 #c6dfbd}
.fruitBtn.recentlyMoved:not(.ghost):not(.removed){animation:fruitPop .38s ease-out}
@keyframes fruitPop{0%{transform:scale(.78) rotate(-6deg)}60%{transform:scale(1.08) rotate(3deg)}100%{transform:scale(1)}}
.basket{position:relative;isolation:isolate;border:2px solid #d9a671;background:linear-gradient(180deg,#fff9e9 0%,#fff0d4 100%);border-radius:23px;padding:17px;min-height:145px;box-shadow:0 5px 0 #e4c8a0;overflow:hidden}
.basket::after{content:"";position:absolute;left:0;right:0;bottom:0;height:12px;z-index:-1;background:repeating-linear-gradient(90deg,#d6a674 0 9px,#edcba4 9px 18px);opacity:.65}
.basket .areaHeading{padding-bottom:9px;border-bottom:1px solid #e6c795}.basket .fruitGrid{margin-top:12px}
.basketNumber{display:inline-flex;align-items:baseline;gap:3px;min-width:49px;padding:5px 10px;background:#fff;border-radius:13px;font-size:27px;line-height:1;color:#a77044}.basketNumber small{font-size:13px}
.emptyBasket{min-height:85px;font-size:14px;color:#9a754c}.emptyBasket>span{font-size:40px;filter:drop-shadow(0 3px 2px #bfa17030)}
.numberBtn{border-color:#d9c7ed;background:linear-gradient(#fff,#f7f0ff);box-shadow:0 4px 0 #dac6e9}.numberBtn.active{background:#f0e3ff;border-color:#a180c2;box-shadow:0 4px 0 #bd9dd2}
.compareBasket{border:2px solid #ddb486;background:linear-gradient(#fff9eb,#ffefd5);box-shadow:0 4px 0 #e4c8a0}.compareBasket.active{border-color:#b087cb;background:#f9f0ff;box-shadow:0 4px 0 #c8aedb}
.feedback.correct{position:relative;border:2px solid #acd49d;background:linear-gradient(120deg,#f4ffe8,#e8f7ed);box-shadow:0 5px 0 #d1e6c4}
.feedback.correct::before{content:"⭐ 잘했어요!";display:block;color:#537d42;font-size:16px;font-weight:850;margin-bottom:7px}
.groupItem .tenGroup .tinyFruit{filter:none}.groupItem{padding:7px 6px 19px}.groupItem .unitBadge{background:#e5b673;color:#704d2b}
@media(max-width:680px){.levelCard strong{font-size:21px}.shopBoardContent{padding:16px}.shopBoardHeader{padding:17px 16px 14px;min-height:78px}.fruitGrid{grid-template-columns:repeat(auto-fit,minmax(54px,1fr));gap:10px}.fruitBtn{min-height:67px;padding:5px}.fruitBtn .fruitSvg{height:55px;max-width:55px}.basket{padding:15px;min-height:145px}.basket .fruitGrid{grid-template-columns:repeat(auto-fit,minmax(49px,1fr));gap:9px}.groupStock .fruitGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.groupItem .tenGroup .tinyFruit{height:17px;max-width:17px}.compareBasket .fruitSvg{height:37px}.sumGroup .fruitSvg{height:33px}}
@media(prefers-reduced-motion:reduce){.fruitBtn.recentlyMoved{animation:none}}
