:root{font-family:"Comic Sans MS","Chalkboard SE","Trebuchet MS",sans-serif;color:#74452f;color-scheme:light;font-synthesis:none;background:#f6b5bf}
*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{background:radial-gradient(ellipse at center,#fff0df,#efadbb)}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;user-select:none}button:focus-visible{outline:5px solid #9560a3;outline-offset:6px}button:disabled{cursor:default}button svg{fill:currentColor;width:43px;height:43px;flex:none}button:active:not(:disabled){translate:0 4px!important;scale:.98}
#stage{position:absolute;width:1254px;height:1254px;transform-origin:center;background:url('assets/garden.png') center/100% 100% no-repeat;border-radius:37px;overflow:hidden;isolation:isolate}#scene{position:absolute;inset:0;width:100%;height:100%;touch-action:manipulation}.hidden{display:none!important}#game-ui{position:absolute;inset:0;pointer-events:none}#game-ui button{pointer-events:auto}.height-chip{position:absolute;top:162px;left:426px;width:402px;height:66px;display:flex;align-items:center;justify-content:center;gap:16px;background:linear-gradient(#fff4df,#fbdcba);border:3px solid #dcb18b;border-radius:38px;box-shadow:inset 0 3px 0 #fffdf2,inset 0 -4px 0 #ddb88f45,0 5px 5px #9d65452b;font-size:29px;font-weight:bold}.height-chip #height{font-size:44px;line-height:1;color:#e86483;text-shadow:1px 2px #fff6e6}.height-chip .goal{font-size:24px;font-weight:normal;color:#99735a}.round-chip{position:absolute;top:238px;left:450px;width:354px;height:46px;display:flex;gap:24px;align-items:center;justify-content:center;border:2px solid #e1bd98;border-radius:28px;background:#fff5e4ef;box-shadow:0 3px 5px #7d644821;font-size:24px;font-weight:bold}.round-chip #lives{letter-spacing:4px;color:#e78195}.round-chip .divider{height:22px;width:2px;background:#dfc5a7}.round-chip #time{font-variant-numeric:tabular-nums;min-width:55px}.round-chip.urgent #time{color:#bb4665}.controls{position:absolute;left:51px;right:51px;top:1062px;display:flex;align-items:center;gap:52px;height:99px}.button{display:flex;align-items:center;justify-content:center;gap:16px;position:relative;border:3px solid #d9ac88;border-radius:44px;font-weight:bold;font-size:30px;line-height:1.1;box-shadow:inset 0 4px 0 #fffcf5, inset 0 -6px 0 #e3ab8829,0 5px 5px #9b624237;transition:translate .16s,filter .16s,scale .16s;min-height:88px}.button:hover:not(:disabled){translate:0 -4px;filter:brightness(1.05)}.cream{background:linear-gradient(#fff7e5,#fbe0bb)}.pink{background:linear-gradient(#ffa9be,#f582a2);border-color:#d9688c;color:#fff9eb;text-shadow:0 3px #af4d6770;box-shadow:inset 0 4px 0 #ffe7e7,inset 0 -6px 0 #c64f793d,0 5px 6px #9b624241}.drop{flex:1;min-width:0;height:107px;font-size:43px;gap:20px;border-radius:53px}.drop svg{width:49px;height:49px}.drop:disabled{filter:saturate(.78);color:#ffeadf}.small{width:237px;flex:none;height:90px;font-size:28px;gap:12px}.small svg{width:37px;height:37px}.bottom-note{position:absolute;top:1170px;left:310px;width:634px;text-align:center;margin:0;font-size:23px;font-weight:bold}.feedback{position:absolute;left:387px;top:920px;width:480px;text-align:center;font-size:36px;font-weight:bold;line-height:1.15;color:#aa4866;text-shadow:0 2px 0 #fff9e9,2px 0 #fff9e9,-2px 0 #fff9e9,0 -2px #fff9e9;opacity:0;transition:opacity .12s}.feedback.show{opacity:1}.feedback.perfect{color:#bc7b29}
#menu{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:center;padding-top:315px;pointer-events:none}.menu-card{position:relative;width:726px;padding:20px 46px 29px;border:4px solid #e9bd9b;border-radius:54px;background:linear-gradient(#fff9ecf5,#ffe9d4f5);box-shadow:inset 0 0 0 7px #fffdf1aa,0 13px 32px #794d3638;text-align:center;pointer-events:auto}.menu-card canvas{display:block;width:600px;height:214px;margin:-14px auto -4px}.menu-card h2{font-size:43px;line-height:1.15;margin:7px 0 15px;letter-spacing:-1px}.menu-card p{font-size:24px;margin:0 0 29px;line-height:1.5;color:#967052}.menu-card .button{width:520px;height:88px;margin:20px auto;font-size:34px}.menu-card .pink{height:100px;font-size:39px}.menu-card .menu-note{margin:29px 0 0;font-size:21px}.menu-card .button:disabled{font-size:25px}.modal{position:absolute;inset:0;background:#6b443966;backdrop-filter:blur(4px);z-index:20;display:flex;align-items:center;justify-content:center}.dialog{width:710px;padding:37px 52px 38px;text-align:center;background:linear-gradient(#fff9ec,#ffebd8);border:4px solid #e7b08f;border-radius:49px;box-shadow:inset 0 0 0 7px #fff9ed,0 15px 55px #55392555;animation:welcome .2s ease-out}.dialog h2{font-size:47px;line-height:1.15;margin:16px 0 22px}.dialog p{font-size:26px;color:#976951;line-height:1.5;margin:0 0 27px}.dialog .button{width:100%;margin-top:21px;font-size:32px;height:89px}.dialog .plain{background:none;border:0;font-size:24px;text-decoration:underline;text-underline-offset:6px;margin-top:26px}.dialog .result-art{display:block;width:205px;height:111px;margin:0 auto 16px}.dialog .stars{color:#d89944;font-size:43px;letter-spacing:13px;margin:0 0 17px}.setting-row{display:flex;align-items:center;justify-content:space-between;font-size:30px;padding:22px 0;border-bottom:2px solid #ebd4ba}.toggle{border:3px solid #cba4a6;border-radius:40px;width:151px;height:65px;background:#ead7d6;text-align:right;padding-right:15px;font-size:25px;position:relative}.toggle:before{content:"";position:absolute;top:6px;left:7px;width:47px;height:47px;border-radius:50%;background:#fff8ed;box-shadow:0 3px 4px #88574635;transition:left .17s}.toggle[aria-checked="true"]{background:#c8dfa6;border-color:#97b77b;text-align:left;padding-left:16px}.toggle[aria-checked="true"]:before{left:92px}.dialog .note{font-size:20px;margin-top:20px;margin-bottom:0}.dialog .summary{color:#ad4e70;font-weight:bold;font-size:28px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes welcome{from{opacity:0;transform:translateY(15px) scale(.96)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}
