@keyframes mimos-pop{0%{transform:scale(1)}40%{transform:scale(1.25)rotate(-3deg)}to{transform:scale(1)}}@keyframes mimos-shake{0%,to{transform:translate(0)}25%{transform:translate(-2px)rotate(-1deg)}75%{transform:translate(2px)rotate(1deg)}}@keyframes mimos-bob{50%{transform:translateY(-6px)}}@keyframes mimos-trayIn{0%{opacity:0;transform:translate(-50%)translateY(30px)scale(.9)}}@keyframes mimos-toast{0%{opacity:0;transform:translate(-50%,20px)scale(.7)}12%{opacity:1;transform:translate(-50%)scale(1.08)}20%{transform:translate(-50%)scale(1)}85%{opacity:1}to{opacity:0;transform:translate(-50%,-24px)}}@keyframes mimos-ribbon{50%{transform:rotate(-1.5deg)scale(1.03)}}@keyframes mimos-twinkle{50%{transform:scale(1.4)rotate(25deg)}}@keyframes mimos-letter{0%,to{transform:translateY(0)scale(1.04,.94)rotate(-2deg)}45%{transform:translateY(-18px)scale(.95,1.06)rotate(3deg)}70%{transform:translateY(0)scale(1.08,.9)}}@keyframes mimos-shine{0%,55%{left:-80px}to{left:130%}}@keyframes mimos-pulse{50%{transform:scale(1.06)}}@keyframes mimos-fade{0%{opacity:0}}@keyframes mimos-gin{0%{opacity:0;transform:scale(.5)rotate(-6deg)}}@keyframes mimos-gbox{0%,to{transform:rotate(-6deg)scale(1)}50%{transform:rotate(6deg)scale(1.1)}}@keyframes mimos-dropIn{0%{opacity:0;transform:translateY(-160px)scale(.6,1.3)}60%{opacity:1;transform:translateY(8px)scale(1.15,.85)}to{transform:none}}@keyframes mimos-riseIn{0%{opacity:0;transform:translateY(80px)}}.g-mimos{height:100%;position:relative;overflow:hidden}.g-mimos{&{--ink:#4a2f5a;--cream:#fff8ec;--pink:#ff8fc0;--pink-d:#e0508f;--sun:#ffd35c;--sun-d:#e9a21d;--mint:#6fe0b0;--sky:#6cc8ff;--violet:#b99bff;--danger:#ff5a6e;--font:"Baloo 2", "Nunito", ui-rounded, "Arial Rounded MT Bold", "Trebuchet MS", system-ui, sans-serif}&,& *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}&{height:100%;color:var(--ink);font-family:var(--font);touch-action:none;-webkit-user-select:none;user-select:none;background:#ffd9e8;margin:0;font-weight:800;overflow:hidden}& button{font:inherit;color:inherit;cursor:pointer}& [hidden]{display:none!important}& #stage{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}& .chip{background:var(--cream);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:18px;line-height:1.1;display:inline-flex}& .chip.round{justify-content:center;width:40px;height:40px;padding:0;font-size:18px}& .chip.name{text-align:left;border-radius:18px;flex-direction:column;align-items:flex-start;gap:0;padding:3px 14px 4px}& .chip.name small{color:var(--pink-d);letter-spacing:.06em;text-transform:uppercase;font-size:12px}& .chip.coins{margin-left:auto}& .coin{background:radial-gradient(circle at 35% 30%, #fff3b0, var(--sun) 45%, var(--sun-d));border:2.5px solid var(--ink);border-radius:50%;width:20px;height:20px;display:inline-block;position:relative}& .coin:after{content:"";border:2px solid #4a2f5a73;border-radius:50%;position:absolute;inset:4px}& .chip.pop{animation:.4s cubic-bezier(.3,1.8,.5,1) mimos-pop}& #hud{padding:max(10px, env(safe-area-inset-top)) 12px 0;pointer-events:none;z-index:5;flex-direction:column;gap:10px;max-width:560px;margin:0 auto;display:flex;position:fixed;top:0;left:0;right:0}& #hud button{pointer-events:auto}& .row{align-items:center;gap:8px;display:flex}& .stats{gap:6px}& .stat{background:var(--cream);border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);border-radius:999px;flex:1;align-items:center;gap:4px;min-width:0;padding:3px 8px 3px 4px;display:flex}& .stat .ic{text-align:center;flex:none;width:22px;font-size:18px;line-height:1}& .bar{background:#4a2f5a29;border:2px solid #4a2f5a66;border-radius:99px;flex:1;min-width:0;height:12px;overflow:hidden}& .bar i{background:linear-gradient(#9af0c8, var(--mint));border-radius:99px;width:50%;height:100%;transition:width .3s;display:block;box-shadow:inset 0 3px #ffffff8c}& .stat[data-k=hunger] .bar i{background:linear-gradient(#ffb0a8,#ff7b6b)}& .stat[data-k=fun] .bar i{background:linear-gradient(#ffe48c, var(--sun))}& .stat[data-k=energy] .bar i{background:linear-gradient(#c6b0ff, var(--violet))}& .stat[data-k=clean] .bar i{background:linear-gradient(#a6e2ff, var(--sky))}& .stat.low{border-color:var(--danger);box-shadow:0 3px 0 var(--danger);animation:.5s infinite mimos-shake}& .stat.low .bar i{background:var(--danger)!important}& .growth{border:2px solid var(--ink);background:#ffffff8c;border-radius:99px;height:8px;margin:0 6px;overflow:hidden}& .growth i{background:linear-gradient(90deg, var(--pink), var(--sun));width:0;height:100%;transition:width .4s;display:block}& #game-hud{top:max(14px, env(safe-area-inset-top));z-index:5;pointer-events:none;justify-content:center;gap:10px;display:flex;position:fixed;left:0;right:0}& .chip.big{padding:6px 18px;font-size:26px}& #mgCombo{background:var(--sun);animation:.3s mimos-pop}& #dock{padding:10px 10px max(14px, env(safe-area-inset-bottom));z-index:6;justify-content:center;gap:clamp(6px,2vw,14px);display:flex;position:fixed;bottom:0;left:0;right:0}& #dock button{border:4px solid var(--ink);width:clamp(58px,17vw,84px);box-shadow:0 6px 0 var(--ink);background:linear-gradient(#fff 0%,#ffe3f0 100%);border-radius:22px;flex-direction:column;align-items:center;gap:0;padding:6px 0 4px;transition:transform 80ms,box-shadow 80ms;display:flex}& #dock button i{filter:drop-shadow(0 2px #4a2f5a40);font-size:clamp(26px,8vw,36px);font-style:normal;line-height:1.15}& #dock button span{font-size:clamp(11px,3.2vw,14px)}& #dock button:hover{transform:translateY(-2px)}& #dock button:active,& #dock button.on{box-shadow:0 1px 0 var(--ink);transform:translateY(5px)}& #dock button.on{background:linear-gradient(#fff3a8, var(--sun))}& #dock button:disabled{opacity:.45;filter:grayscale(.6);cursor:default}& #dock button.alert{animation:.8s infinite mimos-bob}& #dock button.alert:after{content:"!";background:var(--danger);color:#fff;border:2.5px solid var(--ink);border-radius:50%;width:22px;height:22px;margin:-14px 0 0 54px;font-size:14px;line-height:17px;position:absolute}& #dock button{position:relative}& #doneBtn{left:50%;bottom:max(24px, env(safe-area-inset-bottom));z-index:7;background:var(--mint);border:4px solid var(--ink);box-shadow:0 6px 0 var(--ink);border-radius:999px;padding:12px 34px;font-size:22px;position:fixed;transform:translate(-50%)}& #doneBtn:active{box-shadow:0 1px 0 var(--ink);transform:translate(-50%)translateY(5px)}& #tray{left:50%;bottom:calc(112px + env(safe-area-inset-bottom));background:var(--cream);border:4px solid var(--ink);width:min(94vw,520px);box-shadow:0 6px 0 var(--ink);z-index:7;border-radius:26px;padding:10px 10px 12px;animation:.28s cubic-bezier(.3,1.6,.5,1) mimos-trayIn;position:fixed;transform:translate(-50%)}& #tray h3{text-align:center;color:var(--pink-d);letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px;font-size:16px}& #tray .items{grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px;display:grid}& #tray .item{border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);background:#fff;border-radius:18px;flex-direction:column;align-items:center;padding:6px 4px;line-height:1.15;display:flex}& #tray .item:active{box-shadow:0 0 0 var(--ink);transform:translateY(3px)}& #tray .item.sel{background:#fff3a8}& #tray .item:disabled{opacity:.5}& #tray .item em{font-size:34px;font-style:normal;line-height:1.2}& #tray .item span{font-size:13px}& #tray .item b{color:var(--pink-d);align-items:center;gap:4px;font-size:13px;display:flex}& #tray .item b .coin{border-width:2px;width:14px;height:14px}& #tray .item b .coin:after{border-width:1.5px;inset:2px}& #toast{z-index:9;border:4px solid var(--ink);box-shadow:0 6px 0 var(--ink);text-align:center;opacity:0;pointer-events:none;background:#fff;border-radius:22px;width:max-content;max-width:88vw;padding:10px 22px;font-size:22px;position:fixed;top:28%;left:50%;transform:translate(-50%)}& #toast.show{animation:2.4s forwards mimos-toast}& #flash{opacity:0;pointer-events:none;z-index:8;background:#fff;position:fixed;inset:0}& #intro{z-index:20;padding:max(26px, env(safe-area-inset-top)) 20px max(30px, env(safe-area-inset-bottom));pointer-events:none;text-align:center;background:linear-gradient(#ff96cdcc 0%,#ff96cd00 34%);flex-direction:column;justify-content:space-between;align-items:center;transition:opacity .6s .15s;display:flex;position:fixed;inset:0}& #intro.out{opacity:0}& #intro .top,& #intro .bottom{transition:transform .6s cubic-bezier(.6,-.3,.7,1)}& #intro.out .top{transform:translateY(-140%)}& #intro.out .bottom{transform:translateY(140%)}& .ribbon{background:var(--ink);color:#fff3a8;letter-spacing:.14em;text-transform:uppercase;border-radius:999px;padding:5px 18px;font-size:clamp(12px,3.4vw,15px);animation:3s ease-in-out infinite mimos-ribbon;display:inline-block;box-shadow:0 4px #4a2f5a4d}& .ribbon i{color:var(--pink);margin:0 4px;font-style:normal}& .logo{justify-content:center;gap:0;margin:10px 0 4px;font-size:clamp(76px,25vw,132px);line-height:1;display:flex;position:relative}& .logo:before,& .logo:after{content:"★";color:var(--sun);-webkit-text-stroke:3px var(--ink);font-size:.28em;animation:1.8s infinite mimos-twinkle;position:absolute;top:4%}& .logo:before{left:-2%}& .logo:after{color:var(--mint);animation-delay:.9s;top:52%;right:-2%}& .logo span{color:#fff;-webkit-text-stroke:8px var(--ink);paint-order:stroke fill;text-shadow:0 9px 0 var(--ink);transform-origin:50% 90%;animation:1.7s ease-in-out infinite mimos-letter;display:inline-block}& .logo span:first-child{color:var(--pink)}& .logo span:nth-child(2){color:var(--sun);animation-delay:.12s}& .logo span:nth-child(3){color:var(--mint);animation-delay:.24s}& .logo span:nth-child(4){color:var(--sky);animation-delay:.36s}& .logo span:nth-child(5){color:var(--violet);animation-delay:.48s}& .tag{max-width:20em;color:var(--ink);text-shadow:0 2px #ffffffb3;margin:12px auto 0;font-size:clamp(15px,4.2vw,19px)}& button.big{pointer-events:auto;background:linear-gradient(#ffe88a, var(--sun));border:5px solid var(--ink);box-shadow:0 8px 0 var(--ink), 0 14px 24px #4a2f5a4d;border-radius:999px;align-items:center;gap:12px;padding:10px 44px 10px 10px;font-size:clamp(26px,8vw,34px);animation:1.5s infinite mimos-pulse;display:inline-flex;position:relative;overflow:hidden}& button.big b{background:var(--pink);border:4px solid var(--ink);color:#fff;border-radius:50%;flex:none;place-items:center;width:1.7em;height:1.7em;display:grid;box-shadow:inset 0 -4px #4a2f5a40}& button.big b svg{filter:drop-shadow(0 2px #4a2f5a66);width:52%;height:52%;margin-left:8%}& button.big em,& button.big b{z-index:1;position:relative}& button.big em{font-style:normal}& button.big:after{content:"";z-index:0;background:#ffffff80;width:40px;animation:2.8s infinite mimos-shine;position:absolute;top:0;bottom:0;left:-80px;transform:skew(-22deg)}& button.big:active{box-shadow:0 1px 0 var(--ink);transform:translateY(7px)}& #introHint{border:3px solid var(--ink);background:#fffc;border-radius:999px;margin-top:18px;padding:2px 14px;font-size:16px;display:block}@media (prefers-reduced-motion:reduce){& .logo span,& .logo:before,& .logo:after,& .ribbon,& button.big,& button.big:after,& .stat.low,& #dock button.alert{animation:none}}@media (height<=560px){& #dock button span{display:none}& #tray{bottom:84px}}@media (height<=800px){& .logo{margin:6px 0 0;font-size:min(25vw,16vh)}& .tag{display:none}}& #hud,& #dock{transition:transform .75s cubic-bezier(.2,1.5,.4,1),opacity .35s}&.entering #hud{opacity:0;transform:translateY(-140%)}&.entering #dock{opacity:0;transform:translateY(140%)}& #gift{z-index:30;background:#4a2f5a8c;place-items:center;animation:.3s mimos-fade;display:grid;position:fixed;inset:0}& .gcard{background:var(--cream);border:5px solid var(--ink);box-shadow:0 10px 0 var(--ink);text-align:center;border-radius:30px;width:min(88vw,360px);padding:18px 26px 24px;animation:.5s cubic-bezier(.3,1.7,.5,1) mimos-gin}& .gbox{filter:drop-shadow(0 6px #4a2f5a40);font-size:84px;line-height:1.1;animation:1.2s ease-in-out infinite mimos-gbox}& .gcard h2{color:var(--pink-d);margin:0;font-size:30px}& .gcard p{margin:6px 0 12px;font-size:18px}& #giftDots{justify-content:center;gap:6px;margin-bottom:16px;display:flex}& #giftDots i{border:3px solid var(--ink);background:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-size:14px;font-style:normal;display:grid}& #giftDots i.done{background:var(--sun)}& #giftDots i.now{background:var(--pink);color:#fff;animation:1s infinite mimos-pulse}& button.big.mini{padding:8px 34px;font-size:26px}& #dlg{z-index:40;background:#4a2f5a8c;place-items:center;animation:.25s mimos-fade;display:grid;position:fixed;inset:0}& #dlg .gbox{font-size:56px;animation:none}& #dlgInput{width:100%;font:inherit;text-align:center;color:var(--ink);border:4px solid var(--ink);-webkit-user-select:text;user-select:text;background:#fff;border-radius:18px;outline:none;margin:4px 0 14px;padding:8px 12px;font-size:26px;box-shadow:inset 0 4px #4a2f5a1a}& #dlgInput:focus{border-color:var(--pink-d);box-shadow:0 0 0 4px #ff8fc073}& #dlg.confirm #dlgInput{display:none}& #dlg.confirm #dlgText{margin-bottom:16px}& .dlgBtns{justify-content:center;align-items:center;gap:10px;display:flex}& .btn2{border:4px solid var(--ink);box-shadow:0 5px 0 var(--ink);background:#fff;border-radius:999px;padding:8px 20px;font-size:20px}& .btn2:active{box-shadow:0 1px 0 var(--ink);transform:translateY(4px)}& #dlg.danger #dlgOk{background:linear-gradient(#ff9a9a, var(--danger));color:#fff}& #dlg.danger h2{color:var(--danger)}& #dlg.shake .gcard{animation:.35s mimos-shake}& .arrow{z-index:6;width:46px;height:62px;color:var(--ink);border:4px solid var(--ink);box-shadow:0 5px 0 var(--ink);background:#fff8eceb;border-radius:18px;padding:0 0 6px;font-size:40px;font-weight:900;line-height:1;transition:transform .1s,box-shadow .1s;position:fixed;top:46%}& .arrow:active{box-shadow:0 1px 0 var(--ink);transform:translateY(4px)}& #prevRoom{left:max(8px,50% - 400px)}& #nextRoom{right:max(8px,50% - 400px)}& #tray .item i.tag{font-style:normal}& #tray .item.cur{background:#fff3a8}@media (width<=460px){& .chip.round{width:36px;height:36px}& .row.top{gap:6px}}& #tray .tabs{gap:8px;margin:0 0 8px;display:flex}& #tray .tab{border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);background:#fff;border-radius:16px;flex:1;padding:6px 4px;font-size:14px}& #tray .tab.on{box-shadow:0 1px 0 var(--ink);background:#fff3a8;transform:translateY(2px)}& #tray .hint{text-align:center;color:var(--ink);opacity:.7;margin:-4px 0 8px;font-size:12px}& #tray .items{grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}& #tray .item em{font-size:30px}& #tray .item.add{background:#fff3f9;border-style:dashed}& #tray .item.add em{color:var(--pink-d)}& #tray .hint.dex{opacity:1;letter-spacing:.06em;margin:8px 0 0;font-size:13px}& #tray .tab{font-size:13px}& #tray .tabs.sm{margin:10px 0 0}& #tray .tabs.sm .tab{padding:4px;font-size:12px}& #dlgNo[hidden]{display:none}& button:focus-visible,& input:focus-visible{outline-offset:3px;outline:4px solid #3aa8ff}@media (height<=700px){& #tray{padding:8px 8px 10px}& #tray h3{margin:0 0 4px;font-size:14px}& #tray .hint{display:none}& #tray .hint.dex{margin:4px 0 0;display:block}& #tray .items{gap:6px}& #tray .item{padding:3px 2px}& #tray .item em{font-size:24px}& #tray .item span,& #tray .item b{font-size:12px}}& #tray .tabs.sm{flex-wrap:wrap}& #tray .tabs.sm .tab{flex:44%}&[data-phase=night] .tag{color:#fff;text-shadow:0 2px #4a2f5a,0 0 12px #fff6}&[data-phase=night] .ribbon{filter:brightness(1.1)}&{cursor:var(--c-default,default)}& button,& .item,& .tab,& [role=button],& label,& summary{cursor:var(--c-point,pointer)}& button:disabled,& button[disabled],& .item:disabled{cursor:var(--c-no,not-allowed)}& #dlgInput{cursor:text}& #stage{cursor:var(--c-default,default)}& #stage[data-cur=point]{cursor:var(--c-point,pointer)}& #stage[data-cur=grab]{cursor:var(--c-grab,grab)}& #stage[data-cur=grabbing]{cursor:var(--c-grabbing,grabbing)}& #stage[data-cur=sponge]{cursor:var(--c-sponge,default)}& #stage[data-cur=spongeDown]{cursor:var(--c-spongeDown,default)}& #stage[data-cur=hammer]{cursor:var(--c-hammer,default)}& #stage[data-cur=hammerDown]{cursor:var(--c-hammerDown,default)}& #intro{cursor:inherit}& .gcard h2{line-height:1.1}& #dlgTitle{margin-top:4px;font-size:27px}& #dlgText{white-space:pre-line;line-height:1.3}& .dlgBtns{gap:12px;margin-top:4px}& .dlgBtns button{white-space:nowrap}& .dlgBtns .btn2{flex:none;padding:8px 18px;font-size:19px}& .dlgBtns .big.mini{flex:auto;justify-content:center;max-width:100%;padding:8px 18px;font-size:24px}& #dlg.confirm .dlgBtns .big.mini{min-width:0}& #dlg.single .dlgBtns .big.mini{flex:none;min-width:170px}& #intro:not(.out) .ribbon{animation:.7s both mimos-dropIn,3s ease-in-out 1s infinite mimos-ribbon}& #intro:not(.out) .logo{animation:.8s .1s both mimos-dropIn}& #intro:not(.out) .tag{animation:.6s .5s both mimos-riseIn}& #intro:not(.out) #startBtn{animation:.6s .6s both mimos-riseIn,1.8s ease-in-out 1.3s infinite mimos-pulse}@media (prefers-reduced-motion:reduce){& #intro:not(.out) .ribbon,& #intro:not(.out) .logo,& #intro:not(.out) .tag,& #intro:not(.out) #startBtn{animation:none}}& .hublink{pointer-events:auto;color:#4a2f5a;cursor:pointer;background:#ffffffb8;border:2px solid #4a2f5a;border-radius:999px;margin-top:10px;padding:6px 14px;font:700 13px/1 inherit;text-decoration:none;display:inline-block}& .hublink:active{transform:translateY(2px)}& #tray a.tab{color:inherit;text-align:center;cursor:pointer;text-decoration:none;display:block}}
