:root{--ink:#254655;--muted:#607a80;--leaf:#427d69;--cream:#fffaf0;--line:#dfe8e4;--shadow:0 12px 35px #2448570b}body{color:var(--ink);background:radial-gradient(ellipse at 10% 0,#e1f0e6,transparent 48%),#f7f7f0;font-family:'Yu Gothic','Meiryo',sans-serif}main{padding-top:26px!important}h1,.brand{letter-spacing:-.04em;color:var(--ink)}h1{font-size:clamp(24px,3vw,35px)!important}button{transition:transform .16s,box-shadow .16s,background .16s;min-height:44px}button:not(:disabled):active{transform:translateY(2px) scale(.97)}button:focus-visible{outline:4px solid #dbad5c;outline-offset:3px}button:disabled{cursor:default}.primary,.go{background:#427d69!important;box-shadow:0 5px 0 #2d5e50!important;color:white!important;border-radius:18px!important}.panel,.pay-scene,.scene,.shop-success,.fishing-panel{box-shadow:var(--shadow);border:1px solid var(--line);border-radius:28px}.status,.message{border-left:5px solid #78ab96;background:#e8f2e9!important;color:#345945;line-height:1.7}.language-bar{background:#fffaf1!important;border-bottom:1px solid #dce7df}.garden-sprite{width:1.2em;height:1.2em;object-fit:contain;vertical-align:middle;display:inline-block;user-select:none;pointer-events:none}.quality-toolbar{display:flex;justify-content:space-between;align-items:center;margin:0 0 17px;gap:12px}.quality-label{font-size:11px;letter-spacing:.18em;font-weight:bold;color:#65868a}.quality-help{font-size:13px;border:1px solid #d8e3db;border-radius:30px;background:#fffaf0;padding:9px 18px}.quality-dialog{border:0;border-radius:28px;padding:30px;max-width:440px;width:calc(100% - 36px);box-shadow:0 25px 90px #163b4740;color:var(--ink);background:#fffaf0}.quality-dialog::backdrop{background:#23474d66;backdrop-filter:blur(5px)}.quality-dialog p{font-size:17px;line-height:1.9;color:#4b6a6c}.quality-dialog button{width:100%;margin-top:15px}.quality-close{font-size:18px}.quality-mode-tabs{border:1px solid #dfe8dd;background:#fffdf6;border-radius:23px;padding:8px;display:flex;gap:8px;flex-wrap:wrap}.choice-row,.difficulty{background:#fffdf5;border:1px solid #dfe8dd;padding:8px;border-radius:23px}.choice-row button,.difficulty button{border:0;background:transparent;border-radius:16px}.choice-row button[aria-pressed=true],.difficulty button[aria-pressed=true]{background:#427d69;color:white;box-shadow:0 3px 8px #325d4520}.discovery-progress{font-size:16px;letter-spacing:.03em;color:#406e75}.two-scenes{gap:20px}.scene{padding:12px;border:4px solid #fff;background:#edf5e7}.scene h2{font-size:13px;text-transform:uppercase;letter-spacing:.08em;padding:0 8px;color:#58786f}.scene-grid{display:block;position:relative;aspect-ratio:1.05;isolation:isolate;border-radius:20px;overflow:hidden;background:linear-gradient(#c7e4ee 0 35%,#d9e8bf 35% 70%,#c0d69f 70%)}.scene-grid:before{content:'';position:absolute;left:-15%;bottom:21%;width:130%;height:43%;border-radius:50%;background:#aecb97;z-index:-1;transform:rotate(-8deg)}.scene-grid:after{content:'';position:absolute;right:5%;top:5%;width:40px;height:40px;border-radius:50%;background:#f6e4ac;z-index:-1}.scene.theme-1 .scene-grid{background:linear-gradient(#c1e9ed,#66aec8 80%,#e4d9b2 80%)}.scene.theme-1 .scene-grid:before{background:#92ccdb;opacity:.45}.scene.theme-1 .scene-grid:after{background:#e7ffff77}.scene.theme-2 .scene-grid{background:radial-gradient(circle at 75% 25%,#817bab,#303f64 65%)}.scene.theme-2 .scene-grid:before{background:#8d9db433;bottom:-18%}.scene.theme-2 .scene-grid:after{background:#e5ce9a;box-shadow:-65px 42px 0 -15px #f6ebbd,-190px 110px 0 -17px #f6ebbd}.scene-object{position:absolute;left:var(--px);top:var(--py);width:23%;height:25%;min-height:0;border:3px solid transparent;background:transparent!important;overflow:visible;border-radius:50%;padding:3px}.scene-object .floating{font-size:clamp(28px,5.5vw,61px);filter:drop-shadow(0 4px 3px #18394614)}.scene-object.found{border-color:#fff5bd;background:#ffffff3d!important;box-shadow:0 0 0 2px #528873}.scene-object.found:after{background:#467962;color:white;border-radius:50%;padding:0 5px;font-size:18px;right:-5px;top:-4px}.scene-object.hint{outline:4px dashed #fff1a4;outline-offset:1px}.complete-banner{margin:22px auto 0;background:#f3e2ad;color:#5c653d;border:2px solid #fff1d0;animation:quality-pop .35s ease-out;max-width:650px}.water-world{height:360px;border:8px solid #fff;box-shadow:0 14px 38px #45838a18;background:linear-gradient(#c4eeee,#7fcad8 45%,#3c8dab);border-radius:32px}.water-world:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(108deg,transparent 0 50px,#fff3 60px,transparent 115px);opacity:.2;pointer-events:none}.water-world:after{content:'';left:-5%;bottom:-22px;width:110%;height:66px;border-radius:50%;background:#e1d5b0;letter-spacing:0}.water-plants{position:absolute;bottom:5px;left:0;width:100%;display:flex;align-items:flex-end;justify-content:space-around;font-size:64px;pointer-events:none;z-index:2}.water-plants span:nth-child(2n){font-size:45px}.swim{left:-15%;animation-name:quality-swim;filter:drop-shadow(0 6px 4px #28627615)}.swim .garden-sprite{width:1.7em;height:1.7em}.pond-scene{height:190px;position:relative;overflow:hidden;border-radius:22px;background:linear-gradient(#e2efe3 0 29%,#9acdd2 29%,#81bdc6);margin-bottom:15px}.pond-scene:before{content:'';position:absolute;top:22%;height:19%;left:-10%;width:120%;border-radius:50%;background:#b3cca0}.pond-scene .fishing-rod{position:absolute;left:12%;top:0;width:45%;height:3px;background:#977e66;transform:rotate(13deg);transform-origin:left}.fishing-line{position:absolute;top:10%;left:55%;width:2px;height:38%;background:#fff9;transform:scaleY(0);transform-origin:top;transition:transform .45s}.is-waiting .fishing-line,.is-bite .fishing-line{transform:scaleY(1)}.fishing-bobber{position:absolute;left:calc(55% - 7px);top:42%;width:16px;height:23px;background:linear-gradient(#d79181 50%,#fff6db 50%);border-radius:50%;box-shadow:0 8px 0 -5px #fff9;opacity:0}.is-waiting .fishing-bobber,.is-bite .fishing-bobber{opacity:1;animation:bob 2s ease-in-out infinite}.is-bite .fishing-bobber{animation-duration:.3s}.pond-fish{position:absolute;left:28%;top:52%;font-size:58px;opacity:.7;animation:pond-drift 9s ease-in-out infinite alternate}.is-reeling .pond-fish{animation:reel-fish .8s ease-out forwards;opacity:1}.fish-food{position:absolute;left:50%;top:0;width:6px;height:6px;border-radius:50%;background:#b9875f;box-shadow:24px -8px #b9875f,-22px 9px #b9875f,38px 16px #b9875f;animation:feed-drop 1.1s ease-in forwards;z-index:4}.collection-card{border:1px solid #dce6de;background:#f0f2ea;box-shadow:0 4px 0 #e2e8db}.collection-card.seen{background:#fffbee;border-color:#c5dac5}.collection-card>span{font-size:48px}.collection-card strong{font-size:14px}.nature-field{height:410px;background:linear-gradient(#dcebe1 0 27%,#cbdca9 27% 67%,#b2cb93);border:7px solid white;box-shadow:var(--shadow)}.nature-field:before{content:'';left:-5%;bottom:-28%;width:110%;height:75%;border-radius:50%;background:#97b985;transform:rotate(7deg)}.nature-props{position:absolute;inset:0;pointer-events:none}.nature-props span{position:absolute;font-size:78px;bottom:5%;left:3%}.nature-props span:nth-child(2){left:auto;right:1%;font-size:120px;bottom:27%}.nature-props span:nth-child(3){left:36%;bottom:1%;font-size:65px}.bug-button{background:#ffffff22;border:2px solid transparent;box-shadow:none;width:88px;height:88px;animation:quality-bug var(--duration) ease-in-out infinite alternate;filter:drop-shadow(0 5px 3px #35583420)}.bug-button:hover,.bug-button:focus-visible{background:#fff8;border:2px dashed #fff}.bug-target{background:#fff9e9;border:1px solid #dfe4cd;box-shadow:var(--shadow);margin-bottom:15px}.bug-target>span{font-size:55px}.letter-target{font-size:95px;line-height:1.35;border:6px solid white;box-shadow:var(--shadow);background:linear-gradient(135deg,#e2ece6,#f3eacd);max-width:280px;margin:25px auto 17px;border-radius:35px;padding:13px;position:relative}.letter-choices{max-width:650px;margin:25px auto}.letter-choices button{border:3px solid white;background:#fffbee;box-shadow:0 6px 0 #d9e1d3;border-radius:25px;color:#3d6470}.letter-choices button.correct{background:#d8edcc;box-shadow:0 6px 0 #9dba91}.letter-choices button.try-again{animation:quality-nudge .2s 2}.letter-trail{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:20px}.letter-trail span{width:31px;height:8px;border-radius:8px;background:#dde5d9}.letter-trail span.done{background:#7ba994}.letter-prompt{text-align:center;font-size:16px;color:#56766f}.card .animal{font-size:64px}.card .animal .garden-sprite{width:1.35em;height:1.35em}.board .card{background:repeating-linear-gradient(45deg,#91b9ab 0 12px,#9fc4b5 12px 24px);box-shadow:0 6px 0 #789f92;transition:transform .2s}.board .card.open{background:#fffaf0}.board .card.matched{background:#e4efd8;box-shadow:0 6px 0 #b9cfa4}.big-product{background:#fffbee;border-color:white;box-shadow:0 6px 0 #dfddcc;min-height:195px}.food-picture{font-size:70px}.customer .bear{font-size:76px}.key{background:linear-gradient(#fff5,var(--key-color,#d6dfc3));border:3px solid #fff7;position:relative}.key:before,.key:after{content:'';width:8px;height:8px;background:#67808380;border-radius:50%;position:absolute;left:calc(50% - 4px);top:18%}.key:after{top:auto;bottom:18%}.key.lit{outline:4px solid #e9c869}.tank{box-shadow:0 15px 45px #32716815!important}.need{border:2px solid white;box-shadow:0 5px 15px #47695308}.action{border:2px solid white}.space-stage{border:8px solid white;box-shadow:0 15px 45px #20375220}.garden-confetti{position:fixed;left:50%;top:35%;z-index:50;pointer-events:none}.garden-confetti i{position:absolute;width:9px;height:14px;border-radius:3px;background:var(--color);animation:confetti-flight .9s ease-out forwards;--dx:0px;--dy:0px}.quality-home .picture{background:linear-gradient(145deg,#e0ede4,#f3ead2);height:195px}.quality-home .content{padding:18px 24px}.quality-home .card{box-shadow:0 7px 24px #3c5b4710;border:3px solid #fff}.quality-home .hero{background:linear-gradient(125deg,#e0edde,#f3eccf)}@keyframes quality-pop{from{transform:scale(.93);opacity:.5}}@keyframes quality-nudge{50%{transform:translateX(4px)}}@keyframes quality-swim{0%{left:-15%;transform:scaleX(1) translateY(0)}48%{left:87%;transform:scaleX(1) translateY(-12px)}50%{left:87%;transform:scaleX(-1) translateY(-12px)}98%{left:-15%;transform:scaleX(-1) translateY(0)}100%{left:-15%;transform:scaleX(1)}}@keyframes bob{50%{transform:translateY(5px)}}@keyframes pond-drift{to{left:70%;transform:translateY(-8px)}}@keyframes reel-fish{to{left:53%;top:-35%;transform:rotate(-20deg)}}@keyframes feed-drop{to{top:55%;opacity:0}}@keyframes quality-bug{0%{transform:translate(-5px,3px) rotate(-8deg)}45%{transform:translate(14px,-18px) rotate(6deg)}100%{transform:translate(-11px,18px) rotate(-4deg)}}@keyframes confetti-flight{to{transform:translate(var(--dx),var(--dy)) rotate(260deg);opacity:0}}@media(max-width:650px){.two-scenes{gap:7px}.scene{padding:5px;border-width:2px;border-radius:18px}.scene h2{font-size:11px}.scene-grid{aspect-ratio:.75;border-radius:14px}.scene-object{width:29%;height:22%;left:var(--mx);top:var(--my)}.scene-object .floating{font-size:clamp(25px,7vw,40px)}.scene-object.found:after{font-size:12px}.scene-grid:after{width:25px;height:25px}.bug-button{width:70px;height:70px}.nature-field{height:360px}.water-world{height:290px}.water-plants{font-size:45px}.quality-toolbar{margin-bottom:8px}.quality-label{font-size:9px}.quality-help{font-size:12px}.letter-target{font-size:75px;max-width:200px}.letter-choices{gap:12px}.letter-choices button{min-height:110px}.big-product{min-height:160px}.food-picture{font-size:53px}.customer .bear{font-size:50px}.scene-object{border-width:2px}.pond-scene{height:160px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition:none!important}.swim{left:var(--rest,30%)!important}.bug-button{transform:none!important}.garden-confetti{display:none}}
.water-world:after,.nature-field:before{content:""}.nature-field.habitat-1{background:linear-gradient(#91b8a2,#bdd2a0)}.nature-field.habitat-2{background:linear-gradient(#d6e8ee 0 30%,#d1dca3 30%)}.is-bite{outline:4px solid #86ac91}.scene-object.found .floating{animation-play-state:paused}.letter-choices button:disabled{opacity:1}
