:root{--ink:#3a2d3f;--paper:#fff7e8;--sun:#ffcf3f;--leaf:#5cbf5a;--magic:#8b5cf6;--lilac:#e9ddff;--display:"Baloo 2","Arial Rounded MT Bold","Trebuchet MS",system-ui,sans-serif;color-scheme:light}[hidden]{display:none!important}html,body{height:100%}body{background:#7cc95a;color:var(--ink);font-family:var(--display);overflow:hidden;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}#app{position:fixed;inset:0;overflow:hidden}#world{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:pointer}button{font-family:var(--display);color:var(--ink);cursor:pointer}button:focus-visible{outline:3px solid var(--magic);outline-offset:3px}.hud{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));left:12px;display:flex;gap:10px;z-index:5}.round{width:60px;height:60px;border-radius:50%;background:var(--paper);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);display:grid;place-items:center;padding:0}.round:active,.chunky:active,.place:active{transform:translateY(3px);box-shadow:0 1px 0 var(--ink)}.round svg{width:30px;height:30px}#sound[aria-pressed=false] .waves,#sound[aria-pressed=true] .mute{display:none}.portal{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));right:12px;z-index:5;display:flex;flex-direction:column;align-items:center;gap:5px;background:none;border:0;padding:0}.portal .disc{width:80px;height:80px;border-radius:50%;background:radial-gradient(circle,#fff 0 14%,#d8c8ff 15% 38%,var(--magic) 39% 100%);border:3px solid var(--ink);box-shadow:0 5px 0 var(--ink);display:grid;place-items:center;overflow:hidden}.portal .disc canvas{animation:spin 7s linear infinite}.portal:active .disc{transform:translateY(3px);box-shadow:0 2px 0 var(--ink)}.tag{background:var(--paper);border:2.5px solid var(--ink);border-radius:999px;padding:2px 12px 0;font-weight:800;font-size:15px;line-height:1.4}@keyframes spin{to{transform:rotate(360deg)}}.tray{position:absolute;left:50%;transform:translate(-50%);bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:5;max-width:calc(100% - 24px);background:var(--ink);border-radius:26px;padding:6px 8px 8px;box-shadow:0 6px #3a2d3f4d}.tray-in{display:flex;gap:6px;padding-top:6px}.tool{flex:0 0 auto;width:76px;height:80px;border:0;border-radius:18px;background:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;font-weight:800;font-size:13px;line-height:1.1;box-shadow:inset 0 -5px #3a2d3f2e;transition:transform .12s;padding:0 2px}.tool span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool[aria-pressed=true]{background:var(--sun);transform:translateY(-5px);box-shadow:inset 0 -5px #3a2d3f40,0 0 0 3px #fff}.tool.more{background:var(--lilac)}.tool.slot{position:relative}.tool.slot:after{content:"";position:absolute;right:6px;top:6px;width:8px;height:8px;border-radius:50%;background:var(--leaf);box-shadow:0 0 0 2px var(--ink)}@media (max-width:560px){.tray{left:12px;right:12px;transform:none;max-width:none}.tray-in{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}.tool{width:auto;min-width:0;height:68px;font-size:11px;border-radius:15px}.tool canvas{width:36px!important;height:36px!important}.tool[aria-pressed=true]{transform:translateY(-3px)}}#hint{position:fixed;left:50%;transform:translate(-50%,8px);bottom:130px;z-index:18;max-width:calc(100% - 32px);background:var(--paper);border:3px solid var(--ink);border-radius:999px;padding:6px 18px 4px;font-weight:800;font-size:17px;text-align:center;text-wrap:balance;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}#hint.on{opacity:1;transform:translate(-50%)}.sheet{position:fixed;inset:0;z-index:20;background:#3a2d3f80;display:grid;place-items:center;padding:12px;padding-top:calc(12px + env(safe-area-inset-top,0px));padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.card{background:var(--paper);border:4px solid var(--ink);border-radius:28px;box-shadow:0 8px 0 var(--ink);width:min(820px,100%);max-height:100%;overflow:auto;padding:16px 18px 20px;display:flex;flex-direction:column;gap:14px}.card>*{flex-shrink:0}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.card-head h2{margin:0;font-size:30px;line-height:1.1;font-weight:800;text-wrap:balance}.x{width:48px;height:48px;flex:0 0 auto;border-radius:50%;border:3px solid var(--ink);background:#fff;box-shadow:0 3px 0 var(--ink);font-size:30px;font-weight:800;line-height:1;padding:0 0 4px}.d-grid{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:18px;align-items:start}.d-prev{display:flex;flex-direction:column;gap:10px;position:sticky;top:0}#prev{width:100%;aspect-ratio:1/1;border:3px solid var(--ink);border-radius:22px;display:block;background:#dff3ff}.d-opts{display:flex;flex-direction:column;gap:12px;min-width:0}.opt h3{margin:0 0 4px;font-size:19px;font-weight:800;letter-spacing:.02em}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{width:74px;padding:5px 2px 3px;border-radius:16px;background:#fff;border:3px solid rgba(58,45,63,.18);display:flex;flex-direction:column;align-items:center;gap:1px;font-weight:800;font-size:12.5px;line-height:1.1}.chip[aria-pressed=true]{border-color:var(--ink);background:var(--sun);box-shadow:0 3px 0 var(--ink)}.chunky{border:3px solid var(--ink);border-radius:20px;box-shadow:0 4px 0 var(--ink);font-weight:800;display:flex;align-items:center;justify-content:center;gap:8px}#dice{background:#fff;font-size:18px;padding:6px 14px 4px}#build{background:var(--leaf);font-size:28px;padding:8px 20px 4px;align-self:center;min-width:220px}@media (max-width:640px){.d-grid{grid-template-columns:1fr}.d-prev{position:static}#prev{aspect-ratio:16/10}.card-head h2{font-size:25px}.chip{width:66px}}.map-wrap{position:relative;border:3px solid var(--ink);border-radius:18px;overflow:hidden;line-height:0}#mini{width:100%;height:auto;display:block;cursor:crosshair;touch-action:none}.you{position:absolute;box-sizing:border-box;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:#e94f4f;border:3px solid #fff;box-shadow:0 0 0 2.5px var(--ink);pointer-events:none;animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{50%{transform:scale(1.35)}}.sub{margin:0;font-size:16px;font-weight:600}.places{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}.place{background:#fff;border:3px solid var(--ink);border-radius:18px;box-shadow:0 4px 0 var(--ink);padding:6px 4px 4px;display:flex;flex-direction:column;align-items:center;gap:0;font-weight:800;font-size:14px;line-height:1.2}.place.home{background:var(--lilac)}.place[aria-pressed=true]{background:var(--sun)}.group-t{margin:4px 0 -4px;font-size:19px;font-weight:800}#inside{position:fixed;inset:0;z-index:15;background:var(--ink)}#room{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:pointer}#exitBtn,#sandExit,#pcExit,#bookExit{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));left:12px;background:var(--paper);font-size:22px;padding:5px 18px 3px 10px}#exitBtn svg,#sandExit svg,#pcExit svg,#bookExit svg{width:30px;height:30px}#basket{position:relative}@media (max-width:420px){.round{width:52px;height:52px}.hud{gap:8px}.portal .disc{width:68px;height:68px}}#basket canvas{display:block}.badge{position:absolute;right:-8px;bottom:-6px;min-width:30px;height:28px;box-sizing:border-box;padding:3px 6px 0;border-radius:999px;background:var(--sun);border:2.5px solid var(--ink);font-weight:800;font-size:16px;line-height:19px;text-align:center;font-variant-numeric:tabular-nums}#basket.bump{animation:bump .4s ease-out}@keyframes bump{35%{transform:scale(1.25)}}#carBar{position:absolute;left:50%;transform:translate(-50%);bottom:120px;z-index:6;display:flex;gap:10px}.pill{background:var(--paper);font-size:19px;padding:4px 16px 2px 8px;white-space:nowrap;min-height:54px}.pill:active{transform:translateY(3px);box-shadow:0 1px 0 var(--ink)}#book{position:fixed;inset:0;z-index:16;background:#f6e7c8}#bookC{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}#bookVoice{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));right:12px;background:var(--paper);width:58px;height:54px;padding:0}#bookVoice svg{width:30px;height:30px}#bookVoice[aria-pressed=false] .waves,#bookVoice[aria-pressed=true] .mute{display:none}#pc{position:fixed;inset:0;z-index:16;background:#bfe8f7}#pcC{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}#sandplay{position:fixed;inset:0;z-index:15;background:#7cc95a}#sandC{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:crosshair}.place .cnt{font-size:24px;line-height:1;font-variant-numeric:tabular-nums}.place.none{opacity:.35;box-shadow:none}@media (prefers-reduced-motion:reduce){#basket.bump{animation:none}.portal .disc canvas,.you{animation:none}.tool,#hint{transition:none}}#mpBody{display:flex;flex-direction:column;gap:12px}.mp-in{font:inherit;font-size:22px;font-weight:800;padding:10px 14px;border:3px solid var(--ink);border-radius:16px;background:#fff;color:var(--ink);width:100%;box-sizing:border-box}.mp-btn{font-size:19px;padding:6px 18px;min-height:52px;cursor:pointer}.mp-go{background:var(--sun)}.mp-row{display:flex;flex-wrap:wrap;gap:10px}.mp-code{font-size:40px;font-weight:800;letter-spacing:2px;text-align:center;background:#fff;border:4px solid var(--ink);border-radius:20px;padding:6px 10px;box-shadow:0 4px 0 var(--ink)}.mp-who{display:flex;flex-wrap:wrap;gap:8px}.mp-chip{background:#d8f2c8;border:2.5px solid var(--ink);border-radius:999px;padding:3px 12px 1px;font-weight:800}
