:root{--ink:#2b2240;--muted:#6b5f86;--mint:#5fd3b5;--mint-d:#3dbe9e;--teal:#2bb3a3;--coral:#ff7a6b;--sun:#ffd24d;--sun-d:#f2b02a;--lilac:#b49cf5;--lilac-l:#eee7ff;--cream:#fff1da;--paper:#fffaf1;--top:calc(var(--tg-content-safe-area-inset-top,0px) + var(--tg-safe-area-inset-top,0px));--bottom:max(env(safe-area-inset-bottom,0px), var(--tg-safe-area-inset-bottom,0px))}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;margin:0}body{background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;overscroll-behavior:none;font-family:Nunito,-apple-system,Segoe UI,Roboto,sans-serif;font-weight:800}#root{height:100%}button{font:inherit;color:inherit}.ink .o{stroke:var(--ink);stroke-width:var(--ow,3);stroke-linejoin:round;stroke-linecap:round}.ink .ol{fill:none;stroke:var(--ink);stroke-width:var(--ow,3);stroke-linejoin:round;stroke-linecap:round}.ink .d{fill:none;stroke:var(--ink);stroke-width:calc(var(--ow,3) * .84);stroke-linejoin:round;stroke-linecap:round}.ink .df{stroke:var(--ink);stroke-width:calc(var(--ow,3) * .84);stroke-linejoin:round;stroke-linecap:round}.ink .sign{text-anchor:middle;font-family:Nunito,sans-serif;font-weight:900}.screen{max-width:480px;height:100%;padding-top:var(--top);flex-direction:column;margin:0 auto;display:flex;position:relative;overflow:hidden}.btn{border:3px solid var(--ink);background:var(--sun);width:100%;min-height:52px;box-shadow:inset 0 -6px 0 var(--sun-d), 0 5px 0 var(--ink);cursor:pointer;border-radius:18px;justify-content:center;align-items:center;gap:8px;padding:6px 16px 10px;font-size:19px;font-weight:900;transition:transform 80ms,box-shadow 80ms;display:flex;position:relative}.btn:active:not(:disabled){box-shadow:inset 0 -6px 0 var(--sun-d), 0 1px 0 var(--ink);transform:translateY(4px)}.btn:disabled{opacity:.55;cursor:default}.btn.mint{background:var(--mint);box-shadow:inset 0 -6px 0 var(--mint-d), 0 5px 0 var(--ink)}.btn.white{box-shadow:inset 0 -5px 0 #ece4d6, 0 4px 0 var(--ink);background:#fff;min-height:46px;font-size:16px}.btn .cost{border:3px solid var(--ink);background:#fff;border-radius:16px;align-items:center;gap:2px;height:32px;margin-top:-18px;padding:0 9px 0 5px;font-size:15px;display:flex;position:absolute;top:50%;right:9px}.btn .sub{color:var(--muted);font-size:12px;font-weight:800;line-height:13px;display:block}.hud{z-index:2;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px 0;display:flex;position:relative}.pill{border:3px solid var(--ink);height:40px;box-shadow:0 3px 0 var(--ink);white-space:nowrap;background:#fff;border-radius:20px;align-items:center;gap:5px;padding:0 12px 0 6px;font-size:16px;font-weight:900;display:flex}.pill small{color:var(--muted);margin-left:2px;font-size:11px;font-weight:800}.lvl{flex-direction:column;justify-content:center;align-items:stretch;gap:2px;min-width:128px;padding:0 12px}.lvl b{font-size:14px;line-height:15px}.bar{border:2.5px solid var(--ink);background:var(--lilac-l);border-radius:6px;height:10px;overflow:hidden}.bar i{background:var(--sun);border-right:2.5px solid var(--ink);height:100%;transition:width .4s;display:block}.pills{gap:6px;display:flex}.yard{flex:none;height:310px;margin-top:-54px;position:relative}.yard .scene{width:100%;height:100%;position:absolute;inset:0}.yard .hero{position:absolute;bottom:6px;right:22%}.bubble{z-index:1;border:3px solid var(--ink);max-width:62%;box-shadow:0 4px 0 var(--ink);background:#fff;border-radius:18px;align-items:center;gap:8px;padding:7px 12px 8px 8px;font-size:14px;line-height:17px;animation:.35s cubic-bezier(.3,1.6,.5,1) pop;display:flex;position:absolute;top:70px;left:12px}.bubble b{color:#13897c;font-weight:900;display:block}@keyframes pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}.sheet{background:var(--paper);border-top:3px solid var(--ink);z-index:1;min-height:0;padding:10px 14px calc(12px + var(--bottom));border-radius:26px 26px 0 0;flex-direction:column;flex:auto;margin-top:-8px;display:flex;position:relative}.tabs{background:var(--lilac-l);border:3px solid var(--ink);border-radius:16px;gap:6px;padding:3px;display:flex}.tabs button{min-height:38px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:11px;flex:1;font-size:15px;font-weight:900}.tabs button.on{color:var(--ink);box-shadow:0 0 0 2.5px var(--ink);background:#fff}.list{flex:auto;min-height:0;margin:10px -4px;padding:0 4px 4px;overflow-y:auto}.row{text-align:left;border:3px solid var(--ink);width:100%;box-shadow:0 4px 0 var(--ink);cursor:pointer;background:#fff;border-radius:18px;align-items:center;gap:10px;min-height:68px;margin-bottom:10px;padding:8px 10px;display:flex}.row .mid{flex:1;min-width:0}.row .name{flex-wrap:wrap;align-items:center;gap:6px;font-size:16px;font-weight:900;line-height:19px;display:flex}.row .prev{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:13px;line-height:17px;overflow:hidden}.chip{border:2px solid var(--ink);background:#d6f5ec;border-radius:10px;padding:1px 8px;font-size:11px;font-weight:900;line-height:15px}.badge{background:var(--coral);color:#fff;border:3px solid var(--ink);border-radius:13px;flex:none;justify-content:center;align-items:center;min-width:26px;height:26px;padding:0 5px;font-size:13px;font-weight:900;display:flex}.goal{border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);background:#fff;border-radius:18px;margin-bottom:10px;padding:10px 12px}.goal h3{margin:0 0 4px;font-size:16px;font-weight:900}.goal p{color:var(--muted);margin:2px 0 0;font-size:13px;line-height:17px}.goal p b{color:var(--ink)}.cta{flex-direction:column;gap:10px;display:flex}.timer{text-align:center;color:var(--muted);font-size:13px}.dev{right:10px;top:calc(var(--top) + 58px);z-index:3;border:2px dashed var(--muted);cursor:pointer;background:#fff8;border-radius:12px;padding:4px 10px;font-size:12px;position:absolute}.head{border-bottom:3px solid var(--ink);background:#fff;align-items:center;gap:10px;padding:10px 12px;display:flex}.head .back{border:3px solid var(--ink);background:var(--cream);cursor:pointer;border-radius:14px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.head .t{flex:1;min-width:0}.head .t b{font-size:17px;font-weight:900;line-height:20px;display:block}.head .t span{color:var(--muted);font-size:12px}.chat{padding:12px 12px calc(16px + var(--bottom));background:var(--paper);flex:1;overflow-y:auto}.mem{border:3px solid var(--ink);background:#fff3c4;border-radius:16px;margin-bottom:14px;padding:8px 12px;font-size:13px;line-height:18px}.mem b{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px;display:block}.msg{border:3px solid var(--ink);background:#fff;border-radius:16px 16px 16px 6px;width:fit-content;max-width:84%;margin:0 0 8px;padding:8px 12px;font-size:15px;line-height:20px}.msg.me{background:#d6f5ec;border-radius:16px 16px 6px;margin-left:auto}.sys{text-align:center;color:var(--muted);margin:10px 0 12px;font-size:12px}.shift-top{align-items:center;gap:8px;padding:10px 12px 8px;display:flex}.dots{flex:1;gap:6px;display:flex}.dots i{border:2.5px solid var(--ink);background:var(--lilac-l);border-radius:6px;flex:1;height:12px}.dots i.done{background:var(--mint)}.dots i.cur{background:var(--sun)}.leave{border:2.5px solid var(--ink);cursor:pointer;background:#fff;border-radius:12px;min-height:36px;padding:6px 10px;font-size:13px;font-weight:900}.card{border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);background:#fff;border-radius:18px;align-items:center;gap:10px;margin:0 12px;padding:8px 10px;display:flex}.card .mid{flex:1;min-width:0}.card .lab{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:900}.card .ttl{font-size:17px;font-weight:900;line-height:20px}.card .who{color:var(--muted);font-size:13px}.stepchip{background:var(--lilac-l);border:2.5px solid var(--ink);border-radius:12px;flex:none;padding:3px 8px;font-size:12px;font-weight:900}.log{flex:1;min-height:0;padding:12px 12px 6px;overflow-y:auto}.note{text-align:center;max-width:92%;color:var(--ink);background:#fff8;border:2.5px dashed #b9aed6;border-radius:14px;margin:2px auto 10px;padding:7px 12px;font-size:14px;line-height:19px}.note.fail{border-color:var(--coral);background:#ffe6e2;border-style:solid}.note.fixed{border-color:var(--teal);background:#d6f5ec;border-style:solid}.note.closed{border-color:var(--ink);background:#fff3c4;border-style:solid}.note.hint{border-style:solid;border-color:var(--sun-d);text-align:left;background:#fff8db}.note.hint b{letter-spacing:.06em;text-transform:uppercase;color:#a57a0c;font-size:11px;display:block}.speech{align-items:flex-end;gap:8px;margin-bottom:8px;display:flex}.speech .msg{margin:0}.acts{padding:8px 12px calc(12px + var(--bottom));border-top:3px solid var(--ink);background:var(--paper);flex-direction:column;gap:8px;display:flex}.acts .prompt{text-align:center;color:var(--muted);font-size:14px;line-height:18px}.act{text-align:left;border:3px solid var(--ink);width:100%;min-height:50px;box-shadow:0 4px 0 var(--ink);cursor:pointer;background:#fff;border-radius:16px;align-items:center;gap:10px;padding:6px 12px;font-size:15px;font-weight:900;line-height:19px;animation:.25s ease-out both slide;display:flex}.act:active:not(:disabled){box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.act:disabled{opacity:.5}.act.fix{background:#fff3c4}.act.choice{background:#ffe6e2}.act svg{flex:none}@keyframes slide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.veil{z-index:10;background:#2b224066;justify-content:center;align-items:flex-end;animation:.2s fade;display:flex;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.pop{background:var(--paper);border:3px solid var(--ink);width:100%;max-width:480px;padding:18px 16px calc(18px + var(--bottom));text-align:center;border-bottom:0;border-radius:26px 26px 0 0;animation:.3s cubic-bezier(.3,1.4,.5,1) up}@keyframes up{0%{transform:translateY(60%)}}.pop h2{margin:4px 0 6px;font-size:24px;font-weight:900}.pop p{color:var(--muted);margin:0 0 14px;font-size:15px;line-height:20px}.stars{justify-content:center;gap:6px;margin:6px 0 10px;display:flex}.stars svg{animation:.4s cubic-bezier(.3,1.6,.5,1) both pop}.stars svg:nth-child(2){animation-delay:.12s}.stars svg:nth-child(3){animation-delay:.24s}.row2{gap:10px;display:flex}.result{padding:16px 16px calc(16px + var(--bottom));text-align:center;flex:1;overflow-y:auto}.result h1{margin:4px 0 2px;font-size:26px;font-weight:900}.rewards{flex-wrap:wrap;justify-content:center;gap:10px;margin:14px 0;display:flex}.rw{border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);background:#fff;border-radius:18px;min-width:92px;padding:8px 12px}.rw b{justify-content:center;align-items:center;gap:4px;font-size:22px;display:flex}.rw span{color:var(--muted);font-size:12px}.tk{border:2.5px solid var(--ink);text-align:left;background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;padding:6px 10px;font-size:14px;display:flex}.tk small{color:var(--muted);font-size:12px;display:block}.news{border:3px solid var(--ink);text-align:left;background:#d6f5ec;border-radius:16px;margin:14px 0;padding:10px 12px;font-size:14px;line-height:19px}.news div+div{margin-top:6px}.lvlup{background:var(--sun);border:3px solid var(--ink);border-radius:16px;margin:10px 0;padding:8px;font-size:17px;font-weight:900;animation:.45s cubic-bezier(.3,1.6,.5,1) pop}.onb{padding:16px 16px calc(16px + var(--bottom));flex:1;overflow-y:auto}.onb h1{text-align:center;margin:6px 0 4px;font-size:26px;font-weight:900}.onb .lead{text-align:center;color:var(--muted);margin:0 0 8px;font-size:15px;line-height:20px}.onb .stage{background:radial-gradient(circle at 50% 70%,#c9f3ee 0 55%,#0000 56%);justify-content:center;margin:0 0 8px;display:flex}.field{margin-bottom:12px}.field label{color:var(--muted);margin-bottom:6px;font-size:13px;display:block}.input{border:3px solid var(--ink);width:100%;height:50px;font:inherit;color:var(--ink);background:#fff;border-radius:16px;padding:0 14px;font-size:18px;font-weight:900}.swatches{gap:10px;display:flex}.sw{border:3px solid var(--ink);cursor:pointer;border-radius:16px;width:48px;height:48px}.sw.on{box-shadow:0 0 0 3px var(--paper), 0 0 0 6px var(--ink)}.seg{gap:8px;display:flex}.seg button{border:3px solid var(--ink);cursor:pointer;background:#fff;border-radius:14px;flex:1;min-height:46px;font-weight:900}.seg button.on{background:var(--mint)}.err{color:#c23b2e;margin-top:6px;font-size:13px}.center{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex}.center p{color:var(--muted);margin:0;line-height:20px}.toast{left:50%;top:calc(var(--top) + 12px);z-index:20;background:var(--ink);color:#fff;text-align:center;border-radius:14px;max-width:90%;padding:8px 14px;font-size:14px;animation:.2s fade;position:fixed;transform:translate(-50%)}.nav{border-top:3px solid var(--ink);padding:5px 8px calc(5px + var(--bottom));z-index:2;background:#fff;flex:none;gap:4px;display:flex;position:relative}.nav button{min-height:56px;color:var(--muted);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;padding:0;font-size:13px;font-weight:800;display:flex}.nav button.on{color:var(--ink);font-weight:900}.nav .ic{border:3px solid #0000;border-radius:12px;justify-content:center;align-items:center;width:54px;height:34px;transition:transform 80ms;display:flex;position:relative}.nav button:active .ic{transform:scale(.92)}.nav button.on .ic{background:var(--mint);border-color:var(--ink);box-shadow:0 2px 0 var(--ink)}.nav .dot{background:var(--coral);border:2.5px solid var(--ink);border-radius:50%;width:13px;height:13px;position:absolute;top:-2px;right:3px}.sheet.withnav{padding-bottom:10px}.plate{z-index:1;border:3px solid var(--ink);max-width:44%;box-shadow:0 3px 0 var(--ink);color:#13897c;background:#fff;border-radius:14px;padding:3px 10px 4px;font-size:13px;font-weight:900;line-height:16px;position:absolute;bottom:16px;left:12px}.plate b{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:15px;line-height:18px;display:block;overflow:hidden}.row.sit{background:#fff3c4}.sit .lab,.sithead .lab{color:var(--muted);font-size:13px;font-weight:900;line-height:16px}.free{color:#13897c;white-space:nowrap}.row.sit .name{margin-top:1px}.go-chip{background:var(--sun);border:2.5px solid var(--ink);border-radius:12px;flex:none;padding:6px 10px;font-size:13px;font-weight:900}.sitpop{text-align:left;flex-direction:column;max-height:88%;display:flex}.sithead{align-items:center;gap:10px;margin-bottom:12px;display:flex}.sithead .mid{flex:1;min-width:0}.sithead h3{margin:1px 0 0;font-size:18px;font-weight:900;line-height:22px}.sithead .who{color:var(--muted);font-size:13px}.sitbody{flex:auto;min-height:0;margin:0 -4px 12px;padding:0 4px;overflow-y:auto}.sitbody .news{margin:6px 0 0}.sitopts{flex-direction:column;gap:9px;display:flex}.later{min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:15px;font-weight:900}.price{align-items:center;gap:3px;font-size:15px;font-weight:900;display:inline-flex}.price.big{font-size:22px}.price.poor{color:#c23b2e}.btn.move{margin-bottom:12px;font-size:17px;animation:.35s cubic-bezier(.3,1.6,.5,1) pop}.btn .price{border:3px solid var(--ink);background:#fff;border-radius:16px;padding:1px 10px 1px 4px;font-size:16px}.save{align-items:center;gap:8px;margin-top:8px;display:flex}.save .bar{flex:1;height:14px}.goal.me{background:var(--lilac-l)}.goal.homecard{background:#fff6e5}.party{position:relative;overflow:hidden}.confetti{pointer-events:none;position:absolute;inset:0}.confetti i{top:-14px;left:calc(var(--i) * 6.6% + 3%);border:2px solid var(--ink);background:var(--sun);width:10px;height:14px;animation:fall 1.7s cubic-bezier(.3, .6, .5, 1) calc(var(--i) * 70ms) both;border-radius:3px;position:absolute}.confetti i:nth-child(3n){background:var(--mint)}.confetti i:nth-child(3n+1){background:var(--coral)}@keyframes fall{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(240px)rotate(540deg)}}.wr-stage{align-items:flex-end;gap:12px;padding:8px 14px 16px;display:flex}.wr-doll{background:radial-gradient(circle at 50% 64%,#c9f3ee 0 56%,#0000 57%);flex:none;justify-content:center;width:116px;display:flex}.wr-lab{color:var(--muted);border:2.5px solid var(--ink);background:#fff;border-radius:10px;margin-bottom:-4px;padding:0 7px;font-size:13px;line-height:20px}.wr-info{flex-direction:column;flex:1;align-items:flex-start;gap:8px;min-width:0;padding-bottom:6px;display:flex}.wr-info h3{margin:0;font-size:18px;font-weight:900;line-height:22px}.wr-info .btn{width:100%}.office{color:#13897c;border-left:3px solid var(--mint);padding-left:10px;font-size:13px;line-height:17px}.wr-note{color:var(--muted);font-size:13px;line-height:17px}.wr-short{color:#c23b2e;align-items:center;gap:4px;margin-top:-2px;font-size:13px;display:flex}.btn.small{min-height:48px;font-size:17px}.wr-state .chip,.item .chip{align-items:center;gap:2px;font-size:13px;line-height:18px;display:inline-flex}.chip.on{background:var(--mint)}.tabs.slots{gap:3px}.tabs.slots button{letter-spacing:-.01em;min-height:42px;padding:0 2px;font-size:13px}.wr-grid{grid-template-columns:repeat(auto-fill,minmax(138px,1fr));align-content:start;gap:12px 10px;display:grid}.item{text-align:left;border:3px solid var(--ink);min-width:0;box-shadow:0 4px 0 var(--ink);cursor:pointer;background:#fff;border-radius:18px;flex-direction:column;align-items:stretch;gap:5px;padding:6px 8px 8px;display:flex}.item:active{box-shadow:0 2px 0 var(--ink);transform:translateY(2px)}.item.on{outline:3px solid var(--sun-d);outline-offset:2px;background:#fff3c4}.item .thumb{background:var(--cream);border-radius:12px;justify-content:center;align-items:center;height:82px;display:flex;position:relative;overflow:hidden}.item .tag{border:2px solid var(--ink);background:#d6f5ec;border-radius:8px;padding:0 6px;font-size:13px;line-height:17px;position:absolute;top:4px;left:4px}.item .nm{min-height:34px;font-size:14px;font-weight:900;line-height:17px}.item .ft{align-items:center;min-height:24px;display:flex}@media (height<=720px){.yard{height:262px}.yard .hero svg{width:66px;height:128px}.wr-doll svg{width:78px;height:150px}.wr-stage{padding-bottom:12px}}@media (height<=620px){.yard{height:226px}.yard .hero svg{width:57px;height:110px}.bubble{top:60px}.plate{bottom:10px}}.row.sit .name{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}@media (width<=400px){.go-chip{display:none}}
