:root{font-family:'Trebuchet MS','Arial Rounded MT Bold',Arial,sans-serif;color:#354c3b;background:#faf9f1;font-synthesis:none;--green:#476c47;--fluff:1}*{box-sizing:border-box}body{margin:0}button,select,input{font:inherit}button{cursor:pointer;color:inherit;border:0;-webkit-tap-highlight-color:transparent}button:focus-visible,select:focus-visible,input:focus-visible{outline:4px solid #d39b49;outline-offset:5px}button{transition:transform .18s,box-shadow .18s}button:hover{transform:translateY(-3px)}button:active{transform:translateY(1px)}#app{min-height:100dvh;overflow:hidden;position:relative;background:radial-gradient(ellipse at 50% 30%,#fffdf5 0,#faf9f1 65%)}header{max-width:1260px;margin:auto;padding:28px 42px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.brand{background:none;display:flex;text-align:left;align-items:center;gap:10px;font-size:23px;font-weight:bold;line-height:1.05}.brand-flower{font-size:52px;color:#d9a96c}.brand-small{display:block;font-size:11px;letter-spacing:5px;margin-top:7px}.header-right{display:flex;align-items:center;gap:28px}.little-label{font-size:10px;letter-spacing:2px;color:#919586}.round{height:48px;width:48px;border:1px solid #e1e4d6;border-radius:50%;background:#fffdf7;font-size:24px}.home{text-align:center;max-width:1160px;margin:26px auto 0;padding:0 28px}.eyebrow{font-size:10px;font-weight:bold;letter-spacing:2.6px;color:#8a947b;display:flex;align-items:center;justify-content:center;gap:9px}.eyebrow>span{width:7px;height:7px;background:#a4b78b;border-radius:50%}h1{font-size:clamp(36px,4.2vw,58px);letter-spacing:-2px;line-height:1.12;font-weight:700;margin:20px 0}h1 em{font-family:Georgia,serif;font-weight:normal;color:#78915a}.intro{font-size:15px;line-height:1.8;color:#8b9280;margin:0}.hero-garden{height:285px;max-width:700px;margin:8px auto 0;position:relative}.hill{position:absolute;border-radius:50%}.hill-back{width:75%;height:135px;background:#e8efd6;bottom:4px;left:18%;transform:rotate(-6deg)}.hill-front{width:94%;height:90px;background:#dce8c4;bottom:0;left:3%;transform:rotate(3deg)}.hero-sheep{width:245px;position:absolute;left:50%;bottom:5px;transform:translateX(-50%);animation:idle 3s ease-in-out infinite}.sheep svg{width:100%;height:100%;overflow:visible}.fleece{transform-box:fill-box;transform-origin:center;transform:scale(var(--fluff,1));transition:transform .5s}.hero-sheep .head{animation:nod 4s infinite;transform-origin:150px 100px}.sun{position:absolute;left:22%;top:30px;color:#e5be71;font-size:53px}.butterfly{position:absolute;right:20%;top:50px;font-size:35px;color:#c79fa4;animation:idle 2s infinite}.hero-flower{position:absolute;z-index:1;font-size:40px;color:#e4ba82}.f1{left:18%;bottom:28px}.f2{right:17%;bottom:23px;color:#fffef3}.f3{right:28%;bottom:6px;font-size:27px;color:#b0a2b9}.floating-letter{position:absolute;width:56px;height:61px;background:#fff8e4;border:2px solid #ead7ae;border-radius:18px;box-shadow:0 7px 0 #eadfbe;text-align:center;line-height:56px;font-size:31px;font-weight:bold;animation:idle 4s infinite}.letter-a{left:28%;top:84px;transform:rotate(-15deg);color:#bf8a4a}.letter-1{right:24%;top:120px;background:#f2edf8;border-color:#d9cce4;color:#a08ab4;transform:rotate(13deg)}.letter-b{right:37%;top:25px;transform:rotate(10deg);background:#eaf1e1;color:#81986b;border-color:#ccd9b9}.hero-tag{position:absolute;left:49%;bottom:201px;background:white;border:1px solid #ecebde;border-radius:30px 30px 30px 0;padding:12px 16px;font-size:13px;transform:rotate(5deg)}.primary{background:#507748;color:#fffefa;border:1px solid #42653c;border-radius:19px;padding:18px 35px;font-weight:bold;font-size:18px;box-shadow:0 5px 0 #395c36}.play{min-width:220px;margin:14px auto 35px}.play span{margin-left:35px}.choose-label{font-size:10px;letter-spacing:2.5px;color:#989b88;margin-bottom:18px}.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.mode-card{padding:24px 18px;display:flex;align-items:center;text-align:left;gap:15px;border-radius:22px;border:1px solid #e3e3d5;box-shadow:0 4px 0 #dedfce}.peach{background:#f7e8d7}.lavender{background:#eeebf5}.mint{background:#e6eddc}.mode-icon{font-size:26px;font-weight:bold;background:#fff9;border:1px solid #fff;border-radius:16px;display:grid;place-items:center;min-width:58px;height:62px;color:#ad8458}.lavender .mode-icon{color:#9683aa}.mint .mode-icon{color:#7b936a}.mode-card strong{display:block;font-size:20px}.mode-card small{display:block;color:#90907f;font-size:11px;margin-top:8px;line-height:1.5}.card-arrow{margin-left:auto;color:#999e89}.home-note{font-size:11px;color:#a1a28e;margin:28px 0}footer{display:flex;justify-content:center;align-items:center;gap:18px;color:#a6a997;font-size:10px;padding:25px;text-align:center}footer span{font-size:18px;color:#c7cead}.sky-cloud{position:absolute;width:130px;height:36px;background:#f0f0e5;border-radius:50%;opacity:.5;top:180px;left:-20px}.sky-cloud:before{content:'';position:absolute;background:inherit;width:70px;height:55px;border-radius:50%;left:20px;bottom:0}.cloud-two{left:auto;right:-30px;top:330px;transform:scale(1.4)}.level-page{max-width:1000px;text-align:center;margin:22px auto;padding:0 25px}.back{background:none;color:#849475;font-size:13px;padding:12px 0}.level-page>.back{display:block;margin-bottom:30px}.level-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:35px 0}.level-card{border:1px solid #dadfce;border-radius:25px;padding:25px 15px;display:flex;align-items:center;flex-direction:column;gap:13px;box-shadow:0 5px 0 #dce0d0}.level-number{width:48px;height:48px;display:grid;place-items:center;background:#fff9;border-radius:50%;font-weight:bold}.level-card small{font-size:10px;letter-spacing:2px;color:#89947b}.level-card strong{font-size:24px}.level-card>span:last-child{font-size:12px}.stars{font-size:25px;color:#b9bfb0}.stars.earned,.reward-stars{color:#d8af50}.small-sheep{width:135px;margin:auto}.level-page>p:last-child{font-size:13px;color:#8b967e}.game-page{max-width:920px;margin:0 auto;padding:0 25px}.game-top{display:flex;justify-content:space-between;align-items:center;font-size:14px}.game-top b{color:#aab59b;margin:0 10px}.mission{text-align:center;margin:5px 0 15px}.target{background:#f6e8bc;border:2px solid #e4cb7a;border-radius:18px;min-width:66px;height:66px;font-weight:bold;font-size:36px;margin-top:10px}.mission p{font-size:13px;color:#8a987e;margin:12px 0}.progress-row{display:flex;align-items:center;gap:15px;color:#869478;font-size:12px;margin:15px 0}.progress-row>span:last-child{font-size:26px;color:#d9b85c}.progress-track{background:#e9eddf;height:9px;border-radius:10px;flex:1;overflow:hidden}#progress{height:100%;width:0;background:#a9bf84;border-radius:10px;transition:width .4s}.garden{aspect-ratio:10/7;max-height:56vh;position:relative;background-color:#dcebc3;background-image:radial-gradient(#aecb8b55 1.5px,transparent 2px),linear-gradient(135deg,#edf3d577,#c1d9a366);background-size:35px 35px,100%;border:10px solid #bacd9f;border-radius:35px;box-shadow:inset 0 0 0 3px #f1f5d677,0 9px 0 #a8be8c;touch-action:none;overflow:hidden;user-select:none;margin:auto;width:100%}.garden-decoration{position:absolute;inset:0;pointer-events:none}.garden-decoration i{position:absolute;font-size:20px;color:#f7fbdd;font-style:normal}.garden-decoration i:nth-child(3n){color:#d8c48e;font-size:14px}.token{position:absolute;transform:translate(-50%,-50%);width:7%;aspect-ratio:1;border-radius:28%;display:grid;place-items:center;background:#f7eee0;border:2px solid #e4cfa9;color:#a38758;font-weight:bold;font-size:clamp(20px,3.5vw,33px);box-shadow:0 4px 0 #b0be8a;z-index:2}.token-1{background:#ede8f2;border-color:#cdbdda;color:#93829f}.token-2{background:#f9e1d3;border-color:#e4bca6;color:#b48b6c}.glowing{background:#fff5ba;border-color:#e1be54;color:#6c7039;animation:glow 1.8s ease-in-out infinite}.player{position:absolute;width:12%;height:auto;aspect-ratio:200/170;transform:translate(-50%,-52%) scaleX(var(--facing,1));z-index:3;transition:left .5s linear,top .5s linear;pointer-events:none}.walking .legs{animation:walk .3s ease-in-out infinite alternate}.walking svg{animation:bob .3s ease-in-out infinite alternate}.hop .head{animation:nod .6s}.game-bottom{display:flex;justify-content:space-between;align-items:center;margin:24px 0 0}.game-bottom p{font-size:14px;color:#7e8e6b;line-height:1.7}.game-bottom small{font-size:11px;color:#a1a892}.dpad{display:grid;grid-template-columns:repeat(3,52px);grid-template-rows:repeat(2,43px);gap:6px}.dpad button{background:#f0f1e5;border:1px solid #d9dfc9;border-radius:13px;font-size:24px;box-shadow:0 3px 0 #d1d9bf}.dpad button:first-child{grid-column:2}.dpad button:nth-child(2){grid-column:1;grid-row:2}.dpad button:nth-child(3){grid-column:2;grid-row:2}.dpad button:nth-child(4){grid-column:3;grid-row:2}.modal-wrap{position:fixed;inset:0;background:#33482d66;backdrop-filter:blur(7px);display:grid;place-items:center;padding:20px;z-index:10}.modal{position:relative;overflow:hidden;width:min(460px,100%);max-height:90dvh;overflow-y:auto;background:#fdfbf1;border-radius:32px;padding:35px;text-align:center;box-shadow:0 25px 100px #24352044}.modal h2{font-size:34px;margin:15px 0}.modal p{font-size:14px;line-height:1.6;color:#8c967e}.modal .primary,.modal .secondary{width:100%;margin-top:15px}.secondary{background:transparent;border:1px solid #dce0cd;border-radius:15px;padding:14px}.modal-icon{font-size:60px;color:#bacba2}.setting{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 0;border-bottom:1px solid #e5e7da;font-size:14px;text-align:left}.setting input{width:25px;height:25px;accent-color:#5b7c4f}.setting select{max-width:145px;background:#edf1df;border:0;padding:10px;border-radius:8px;color:#536647}.audio-note{font-size:11px!important}.reward-stars{font-size:42px;letter-spacing:6px}.celebration-sheep{width:200px;margin:5px auto;--fluff:1.22;animation:idle 1s infinite}.confetti{position:absolute;inset:0;pointer-events:none}.confetti i{position:absolute;left:var(--x);top:-20px;width:8px;height:14px;background:var(--color);animation:fall 3s var(--delay) infinite linear}@keyframes idle{50%{translate:0 -8px}}@keyframes nod{50%{transform:rotate(-5deg)}}@keyframes glow{50%{box-shadow:0 0 0 9px #fff8b455,0 0 25px 12px #fff6a8aa}}@keyframes walk{to{transform:translateY(-5px)}}@keyframes bob{to{translate:0 -3px}}@keyframes fall{to{transform:translateY(600px) rotate(360deg)}}
@media(min-width:1000px) and (max-height:850px){.home{margin-top:5px}.hero-garden{height:235px}.hero-sheep{width:220px}.hero-tag{bottom:175px}h1{font-size:48px;margin:16px 0}.play{margin-bottom:25px}.mode-card{padding:18px}.game-page{max-width:780px}.garden{max-height:49vh}}
@media(max-width:700px){header{padding:20px}.little-label{display:none}.brand{font-size:19px}.brand-flower{font-size:40px}.round{width:43px;height:43px}.home{margin-top:20px;padding:0 18px}.eyebrow{font-size:8px;letter-spacing:1.6px}h1{font-size:38px;letter-spacing:-1.3px}.intro{font-size:12px}.hero-garden{height:245px}.hero-sheep{width:210px}.hero-tag{bottom:170px;font-size:11px}.sun{left:8%;font-size:42px}.letter-a{left:12%;top:95px}.letter-1{right:8%;top:120px}.letter-b{right:23%;top:25px}.floating-letter{width:45px;height:49px;font-size:25px;line-height:45px;border-radius:14px}.butterfly{right:7%;top:65px}.hero-flower.f1{left:4%}.hero-flower.f2{right:5%}.mode-grid{grid-template-columns:1fr;gap:12px;max-width:430px;margin:auto}.mode-card{padding:15px 20px}.mode-icon{height:50px;min-width:50px;font-size:23px}.mode-card strong{font-size:18px}.mode-card small{margin-top:4px}.play{margin:20px auto 32px}.home-note{margin:25px 0 5px}footer{font-size:9px;gap:10px;flex-wrap:wrap}.level-grid{grid-template-columns:repeat(2,1fr);gap:13px}.level-card{padding:20px 10px}.level-card strong{font-size:20px}.game-page{padding:0 12px}.game-top{font-size:12px}.mission{margin-top:16px}.target{height:55px;min-width:55px;font-size:30px}.garden{border-width:6px;border-radius:24px;max-height:none}.player{width:15%}.token{width:8%;font-size:22px;border-width:1px}.game-bottom{padding:0 5px}.game-bottom p{font-size:12px;max-width:45%}.game-bottom small{font-size:10px}.dpad{grid-template-columns:repeat(3,48px);grid-template-rows:repeat(2,44px)}.modal{padding:28px 22px}}
@media(max-height:550px) and (orientation:landscape){header{padding:10px 25px}.game-page{max-width:900px;display:grid;grid-template-columns:140px 1fr 155px;gap:10px}.game-top{grid-column:1/-1}.mission{grid-column:1;grid-row:2}.progress-row{grid-column:2;grid-row:3;margin:0}.garden{grid-column:2;grid-row:2;max-height:58vh;width:auto;min-width:0;height:58vh}.game-bottom{grid-column:3;grid-row:2;display:flex;flex-direction:column;justify-content:center;margin:0}.game-bottom p{max-width:none}.game-page+footer{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
