:root{--safe-t:env(safe-area-inset-top,0px);--safe-r:env(safe-area-inset-right,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--ink:#5b4636;--ink-soft:#8a7362;--panel:#fffbf4eb;--panel-edge:#966e502e;--accent:#f08aa8;--accent-soft:#ffe1ea;--ok:#7cc96b;font-family:ui-rounded,SF Pro Rounded,Nunito,Quicksand,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html,body{overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;height:100%;color:var(--ink);background:#bfe6f5;margin:0;overflow:hidden}html,body,body *{touch-action:none}.groups,.groups *,.tray,.tray *,.options,.options *{touch-action:pan-x}.menu-panel,.menu-panel *,.quests-panel,.quests-panel *{touch-action:pan-y}body{background:radial-gradient(80% 60% at 50% 105%,#fff3dc 0%,#fff3dc00 60%),linear-gradient(#a9dcf2 0%,#c8ebf6 45%,#fde9d6 100%)}#app{position:fixed;inset:0}#app canvas{cursor:default;width:100%;height:100%;display:block}#app canvas.panning{cursor:grabbing}.gallery-labels{pointer-events:none;position:fixed;inset:0}.gallery-label{white-space:nowrap;color:var(--ink);background:#fffbf4d9;border-radius:10px;padding:2px 8px;font-size:12px;font-weight:600;position:absolute;top:0;left:0}.gallery-title{background:var(--panel);color:var(--ink-soft);border-radius:12px;padding:6px 12px;font-size:14px;position:fixed;top:12px;left:16px}.gallery-title a{color:var(--accent);font-weight:700;text-decoration:none}.hud{--btn:72px;--icon:30px;--label:12px;--round:56px;--gap:8px;--edge:14px;--chip:44px;pointer-events:none;position:fixed;inset:0}.hud>*{pointer-events:auto}.hud .hidden{display:none!important}.topleft{left:calc(var(--edge) + var(--safe-l));top:calc(var(--edge) + var(--safe-t));align-items:center;gap:10px;display:flex;position:absolute}.title{background:var(--panel);letter-spacing:.2px;color:var(--ink);white-space:nowrap;border-radius:18px;padding:8px 16px 8px 12px;font-size:18px;font-weight:800;box-shadow:0 4px 14px #7850321f}.title span{margin-right:4px;font-size:22px}.hud.no-flags .topleft .langs,.hud.no-title .topleft .title,.hud.no-clock .topleft{display:none}.day-clock{background:#bfe3f5;transition:transform .12s;overflow:hidden}.day-clock svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.day-clock .arc path{fill:none;stroke:#ffffffd9;stroke-width:3px;stroke-dasharray:5 6;stroke-linecap:round}.day-clock .hill path{fill:#9fd27a}.day-clock.night .hill path{fill:#5f7f6a}.day-clock .sky-body{pointer-events:none;font-size:calc(var(--round) * .34);line-height:1;position:absolute;transform:translate(-50%,-50%)}.langs{background:var(--panel);border-radius:16px;gap:0;padding:0 4px;display:flex;box-shadow:0 4px 14px #7850321f}.flag{cursor:pointer;opacity:.55;background:0 0;border:none;justify-content:center;align-items:center;width:44px;height:44px;padding:0;line-height:0;transition:transform .12s,opacity .12s;display:flex}.flag svg{border-radius:5px;width:32px;height:22px;display:block;box-shadow:0 0 0 1px #50321e2e}.flag:hover{opacity:.9;transform:translateY(-1px)}.flag:active{transform:scale(.92)}.flag.active{opacity:1}.flag.active svg{box-shadow:0 0 0 2px var(--accent)}.hint{max-width:min(640px,100%);color:var(--ink-soft);text-align:center;background:#fffbf4e6;border-radius:16px;align-self:center;padding:7px 16px;font-size:14px;font-weight:600;transition:opacity .6s;box-shadow:0 3px 10px #7850321f;pointer-events:none!important}.hint.faded{opacity:0}.corner{right:calc(var(--edge) + var(--safe-r));top:calc(var(--edge) + var(--safe-t));align-items:flex-start;gap:10px;display:flex;position:absolute}.round{width:var(--round);height:var(--round);background:var(--panel);color:var(--ink);font-size:calc(var(--round) * .5);cursor:pointer;border:2px solid #0000;border-radius:50%;flex:none;padding:0;font-weight:700;line-height:1;transition:transform .12s,background .12s;position:relative;box-shadow:0 4px 14px #78503226}.round:hover{background:#fff;transform:translateY(-2px)}.round:active{transform:scale(.94)}.round.small{--round:46px;background:#fff;box-shadow:0 2px #966e5026}.basket .icon{font-size:calc(var(--round) * .52)}.basket.open{background:#fff;border-color:#f6c9d6}.basket.active{border-color:var(--accent);background:var(--accent-soft)}.basket .badge,.menu-button .mute{background:var(--accent);color:#fff;border-radius:12px;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 6px;font-size:13px;font-weight:800;display:flex;position:absolute;bottom:-6px;right:-6px;box-shadow:0 2px 4px #00000026}.basket .badge.zero{background:#cbb8a8}.basket.bump{animation:.35s inv-bump}.basket.shake{animation:.4s inv-shake}.menu-button .mute{background:#fff;padding:0 3px;font-size:12px}.dock{left:calc(var(--edge) + var(--safe-l));right:calc(var(--edge) + var(--safe-r));bottom:calc(var(--edge) + var(--safe-b));align-items:center;gap:var(--gap);flex-direction:column;display:flex;position:absolute;pointer-events:none!important}.dock>*{pointer-events:auto;max-width:100%}.groups,.tray,.options{gap:var(--gap);padding:var(--gap);background:var(--panel);border:1px solid var(--panel-edge);scrollbar-width:none;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:24px;display:flex;overflow:auto;box-shadow:0 6px 20px #78503229}.groups::-webkit-scrollbar{display:none}.tray::-webkit-scrollbar{display:none}.options::-webkit-scrollbar{display:none}.tray{background:#fff6ecf0}.options{align-items:center;gap:14px;padding:6px 12px}.more-start,.more-end{--fs:0px;--fe:0px;-webkit-mask-image:linear-gradient(var(--fdir,to right), transparent 0, #000 var(--fs), #000 calc(100% - var(--fe)), transparent 100%);-webkit-mask-image:linear-gradient(var(--fdir,to right), transparent 0, #000 var(--fs), #000 calc(100% - var(--fe)), transparent 100%);mask-image:linear-gradient(var(--fdir,to right), transparent 0, #000 var(--fs), #000 calc(100% - var(--fe)), transparent 100%)}.more-start{--fs:34px}.more-end{--fe:34px}.more-start.more-end{--fs:34px;--fe:34px}.vertical{--fdir:to bottom}.tray-sep{background:var(--panel-edge);border-radius:1px;flex:0 0 2px;align-self:stretch;margin:6px 2px}.tool{min-width:var(--btn);height:var(--btn);color:var(--ink);font:inherit;cursor:pointer;background:#fff;border:2px solid #0000;border-radius:18px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:3px;padding:6px 8px 5px;transition:transform .12s,border-color .12s,background .12s;display:flex;position:relative;box-shadow:0 2px #966e5026}.tool .icon{font-size:var(--icon);line-height:1}.tool .label{font-size:var(--label);white-space:nowrap;font-weight:700}.tool:hover{transform:translateY(-2px)}.tool:active{transform:scale(.95)}.tool.active{border-color:var(--accent);background:var(--accent-soft)}.tool.group.open:not(.active){border-color:#f6c9d6}.tool.action .icon{font-size:calc(var(--icon) * .93)}.tool.small{min-width:calc(var(--btn) * .89);height:calc(var(--btn) * .89)}.tool.small .icon{font-size:calc(var(--icon) * .8)}.tool.product{cursor:default}.tool.bump{animation:.35s inv-bump}.tool.shake{animation:.4s inv-shake}.tool .count{background:var(--accent);color:#fff;border-radius:11px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 5px;font-size:12px;font-weight:800;display:flex;position:absolute;top:4px;right:4px}.tool.empty .icon{opacity:.35}.tool.empty .count{background:#cbb8a8}.tool.product .count{background:#8fb7d9}.tool.product.empty .count{background:#cbb8a8}.axis{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.axis-label{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;padding-left:2px;font-size:11px;font-weight:800}.chips{gap:6px;display:flex}.chip{width:var(--chip);height:var(--chip);cursor:pointer;border:3px solid #fff;border-radius:50%;flex:none;transition:transform .12s;box-shadow:0 1px 4px #5a3c2840}.chip:hover{transform:scale(1.08)}.chip{font:inherit;color:var(--ink);padding:0;font-size:16px;font-weight:800}.chip.active{outline:3px solid var(--accent);outline-offset:1px;transform:scale(1.1)}.modal-back{background:#5a3c2840;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.modal{text-align:center;background:#fffaf2;border-radius:28px;min-width:min(320px,100%);padding:24px 28px;box-shadow:0 20px 50px #5a3c284d}.modal-q{margin-bottom:6px;font-size:22px;font-weight:800}.modal-d{color:var(--ink-soft);margin-bottom:18px;font-size:15px}.modal-row{justify-content:center;gap:12px;display:flex}.tool.wide{min-width:130px}.tool.yes{border-color:var(--ok);background:#eaf8e4}.menu{position:static}.menu-panel{right:0;top:calc(var(--round) + 8px);z-index:5;max-height:var(--panel-max,calc(100vh - var(--round) - 40px - var(--safe-t) - var(--safe-b)));scrollbar-width:none;background:var(--panel);border:1px solid var(--panel-edge);border-radius:22px;flex-direction:column;gap:8px;padding:10px;display:flex;position:absolute;overflow-y:auto;box-shadow:0 6px 20px #78503233}.menu-panel .langs{box-shadow:none;background:0 0;justify-content:center;padding:2px 0 4px}.menu-panel .flag svg{width:44px;height:30px}.menu-panel .flag{width:56px}.menu-view{justify-content:space-between;gap:6px;display:flex}.menu-reset{flex-direction:row;gap:10px;min-width:0;height:52px}.menu-reset .label{font-size:15px}.menu-backup{border-top:2px dashed var(--panel-edge);flex-direction:column;gap:8px;padding-top:4px;display:flex}.menu-section{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.5px;padding:2px 4px 0;font-size:12px;font-weight:800}.sound-toggle{width:262px;height:52px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border:2px solid #0000;border-radius:16px;align-items:center;gap:10px;padding:0 12px;font-size:16px;font-weight:800;display:flex;box-shadow:0 2px #966e5026}.sound-toggle .icon{font-size:26px}.sound-toggle .label{text-align:left;flex:1}.sound-toggle .pill{color:#8a7466;background:#e4d8cc;border-radius:12px;min-width:44px;padding:4px 8px;font-size:13px}.sound-toggle.on{border-color:var(--accent);background:var(--accent-soft)}.sound-toggle.on .pill{background:var(--ok);color:#fff}@media (width<=1000px),(height<=760px){.hud{--btn:62px;--icon:26px;--round:50px;--chip:44px}}@media (width<=900px),(height<=500px){.groups .tool.group:not(.open){min-width:var(--btn);width:var(--btn);padding:0}.groups .tool.group:not(.open) .label{display:none}}@media (width<=600px),(height<=500px){.hud{--btn:52px;--icon:24px;--label:10px;--round:46px;--gap:6px;--edge:8px;--chip:44px}.topleft .title,.topleft .langs{display:none}.corner{gap:8px}.tool{border-radius:15px;gap:2px;padding:4px 6px 3px}.groups,.tray,.options{border-radius:20px}.hint{padding:6px 12px;font-size:13px}.tool .count{min-width:18px;height:18px;font-size:11px;top:2px;right:2px}.hud .tool .price{font-size:10px}}@media (width<=420px){.corner .turn{display:none}}@media (height<=500px){.dock{top:calc(var(--edge) + var(--safe-t));grid-template-rows:1fr auto auto auto;grid-template-columns:auto minmax(0,1fr);place-items:end center;display:grid}.groups{flex-direction:column;grid-area:1/1/-1;align-self:stretch;max-height:100%}.groups,.groups *{touch-action:pan-y}.groups .tool.group .label{display:none}.groups .tool.group{width:var(--btn);padding:0}.hint{grid-area:2/2}.options{grid-area:3/2}.tray{grid-area:4/2}.menu-panel{max-height:var(--panel-max,calc(100vh - var(--round) - 24px - var(--safe-t) - var(--safe-b)))}}.energy-bars{pointer-events:none;position:fixed;inset:0;overflow:hidden}.ebar{will-change:transform;background:#ffffffd9;border-radius:6px;width:40px;height:9px;margin:-9px 0 0 -20px;padding:2px;position:absolute;top:0;left:0;box-shadow:0 1px 3px #5a3c2859}.ebar .fill{transform-origin:0;background:linear-gradient(#8fe07a,#5cc24f);border-radius:4px;width:100%;height:100%;transition:transform .35s,background .3s}.ebar[data-level=mid] .fill{background:linear-gradient(#ffd96a,#f4b73a)}.ebar[data-level=low] .fill{background:linear-gradient(#ff8a7a,#ee5547)}.ebar[data-level=low]{animation:.9s ease-in-out infinite ebar-blink}.ebar.bump{animation:.4s ebar-bump}@keyframes ebar-blink{50%{box-shadow:0 0 0 3px #ff5a5073}}@keyframes ebar-bump{40%{scale:1.25}}.float-emoji{font-size:26px;animation:1.1s ease-out forwards float-up;position:absolute;transform:translate(-50%,-50%)}@keyframes float-up{0%{opacity:0;transform:translate(-50%,-20%)scale(.6)}20%{opacity:1;transform:translate(-50%,-60%)scale(1.15)}to{opacity:0;transform:translate(-50%,-200%)scale(1)}}.ebar.grow{border-radius:8px;align-items:center;gap:2px;width:58px;height:14px;margin:-14px 0 0 -29px;padding:2px 3px 2px 2px;display:flex}.ebar.grow .bar-icon{text-align:center;width:13px;font-size:11px;line-height:1}.ebar.grow.wet:after{content:"💧";font-size:11px;line-height:1;position:absolute;top:50%;right:-15px;transform:translateY(-50%)}.ebar.grow .track{background:#78a0be2e;border-radius:4px;flex:1;height:7px;overflow:hidden}.ebar.grow .fill{background:linear-gradient(#8fd3ff,#4fa8e6);transition:none}.ebar.grow.full .fill{background:linear-gradient(#c9b8ff,#9b7fe8)}.ready-badge{color:var(--ink);white-space:nowrap;background:#fff;border-radius:12px;margin-bottom:4px;padding:2px 8px;font-size:15px;font-weight:800;animation:1.2s ease-in-out infinite badge-bob;position:absolute;bottom:100%;left:50%;transform:translate(-50%);box-shadow:0 2px 6px #5a3c2840}.ready-badge.hidden{display:none}@keyframes badge-bob{50%{transform:translate(-50%,-4px)}}.fly-emoji{pointer-events:none;z-index:10;font-size:30px;position:fixed}.ebar.grow.stacked{margin-top:-31px}.ebar.grow.paused .fill{background:linear-gradient(#d9d2cb,#b8aea5)}.ebar.grow.paused .bar-icon{filter:grayscale();opacity:.6}@keyframes inv-bump{40%{transform:scale(1.18)}}@keyframes inv-shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.coins{height:var(--round);border-radius:calc(var(--round) / 2);background:var(--panel);font-size:calc(var(--round) * .46);color:#b07a12;min-width:calc(var(--round) * 1.7);align-items:center;gap:6px;padding:0 16px 0 10px;font-weight:800;display:flex;box-shadow:0 4px 14px #78503226}.coins .coin{font-size:calc(var(--round) * .54)}.coins.bump{animation:.3s inv-bump}.ebar.grow.car .fill{background:linear-gradient(#ffd96a,#f4b73a)}.ebar.grow.dentist .fill{background:linear-gradient(#fff,#a9d8f5)}.nap .nap-bubble{transform-origin:10% 100%;background:#fff;border-radius:18px;justify-content:center;align-items:center;width:40px;height:34px;font-size:21px;line-height:1;animation:3.2s ease-in-out infinite nap-sway;display:flex;position:absolute;top:-46px;left:6px;box-shadow:0 2px 6px #5a3c2847}.nap .nap-bubble:after{content:"";background:#fff;border-radius:0 0 12px;width:12px;height:12px;position:absolute;bottom:-7px;left:4px;transform:rotate(35deg);box-shadow:2px 2px 3px #5a3c2826}@keyframes nap-sway{0%,to{transform:rotate(-6deg)translateY(0)}50%{transform:rotate(5deg)translateY(-3px)}}.zzz{pointer-events:none;will-change:transform;width:0;height:0;position:absolute;top:0;left:0}.zzz>span{color:#6f84d8;-webkit-text-stroke:3px #fff;paint-order:stroke fill;opacity:0;font:900 17px/1 system-ui,sans-serif;animation:2.4s ease-out infinite zzz;position:absolute;top:-14px;left:32px}.zzz>span:nth-child(2){font-size:21px;animation-delay:.8s}.zzz>span:nth-child(3){font-size:26px;animation-delay:1.6s}.zzz .wake{white-space:nowrap;letter-spacing:1px;color:#6f84d8;background:#ffffffd9;border-radius:8px;padding:2px 5px 2px 6px;font:900 13px/1 system-ui,sans-serif;position:absolute;top:7px;left:0;transform:translate(-50%);box-shadow:0 1px 3px #5a3c284d}@keyframes zzz{0%{opacity:0;transform:translate(0)scale(.6)}20%{opacity:1}to{opacity:0;transform:translate(18px,-30px)scale(1)}}.toothache{pointer-events:none;will-change:transform;width:30px;height:30px;margin:-40px 0 0 22px;position:absolute;top:0;left:0}.toothache svg{filter:drop-shadow(0 2px 2px #5a3c2859);animation:1.6s ease-in-out infinite tooth-ache;display:block}@keyframes tooth-ache{0%,60%,to{transform:rotate(0)}70%{transform:rotate(-14deg)scale(1.1)}80%{transform:rotate(12deg)scale(1.1)}90%{transform:rotate(-6deg)}}.coins{position:relative}.coins.shake{animation:.4s inv-shake}.coin-delta{pointer-events:none;font-size:20px;font-weight:800;animation:1.2s ease-out forwards coin-delta;position:absolute;top:100%;right:10px}.coin-delta.minus{color:#e5534b}.coin-delta.plus{color:#3fa34d}@keyframes coin-delta{0%{opacity:0;transform:translateY(-6px)}15%{opacity:1}to{opacity:0;transform:translateY(26px)}}.tool .price{color:#9a6a0a;background:#fff3c4;border-radius:9px;padding:1px 6px;font-size:11px;font-weight:800;position:absolute;top:-7px;right:-5px;box-shadow:0 1px 2px #0000001f}.tool.empty .price{color:#a8988a;background:#eee5dc}.energy-bars.compact .ebar:not([data-level=low]):not(.urgent),.energy-bars.compact .ebar.urgent .track,.energy-bars.compact .ebar.urgent .bar-icon{display:none}.energy-bars.compact .ebar.urgent{box-shadow:none;background:0 0}#app.soundboard{background:var(--bg,#fdf3e7);padding:16px;overflow:auto}.sb-head{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:14px;display:flex}.sb-head h1{color:var(--ink);margin:0;font-size:24px}.sb-music,.sb-card{font:inherit;color:var(--ink);border:2px solid var(--panel-edge);cursor:pointer;background:#fff;border-radius:18px;box-shadow:0 2px #966e5026}.sb-music{padding:10px 16px;font-weight:800}.sb-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;display:grid}.sb-card{flex-direction:column;align-items:center;gap:4px;padding:12px 8px;display:flex}.sb-card:active{transform:scale(.96)}.sb-card canvas{border-radius:8px;width:100%;height:auto}.sb-icon{font-size:36px;line-height:1}.sb-label{font-weight:800}.sb-name{color:var(--ink-soft);font-size:11px}.fly-scroll{z-index:30;pointer-events:none;font-size:34px;position:fixed;top:0;left:0}.quests{position:static}.quests-button .icon{font-size:calc(var(--round) * .5)}.quests-button .badge{color:#fff;background:#ff6b6b;border-radius:11px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:14px;font-weight:900;animation:1.2s ease-in-out infinite badge-pulse;display:flex;position:absolute;top:-4px;right:-4px;box-shadow:0 2px 4px #0000002e}@keyframes badge-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}.quests-button.pop{animation:.6s cubic-bezier(.3,1.6,.5,1) quest-pop}.quests-button.bump{animation:.35s inv-bump}@keyframes quest-pop{0%{transform:scale(1)}40%{transform:scale(1.3)}to{transform:scale(1)}}.quests-panel{right:0;top:calc(var(--round) + 8px);z-index:5;width:min(340px, calc(100vw - 2 * var(--edge) - var(--safe-l) - var(--safe-r)));max-height:var(--panel-max,calc(100vh - var(--round) - 40px - var(--safe-t) - var(--safe-b)));scrollbar-width:none;box-sizing:border-box;background:var(--panel);border:1px solid var(--panel-edge);transform-origin:100% 0;border-radius:22px;padding:12px;animation:.2s ease-out panel-in;position:absolute;overflow-y:auto;box-shadow:0 6px 20px #78503233}@keyframes panel-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}.quests-head{color:var(--ink);padding:2px 4px 10px;font-size:18px;font-weight:900}.quests-list{flex-direction:column;gap:8px;display:flex}.quests-empty{color:var(--ink-soft);padding:4px;font-size:14px;font-weight:600}.quest-row{background:#fff;border-radius:16px;align-items:center;gap:10px;padding:10px 12px;display:flex;box-shadow:0 2px #966e5026}.quest-row .check{box-sizing:border-box;background:#fff;border:3px solid #d8c6b6;border-radius:8px;flex:none;width:26px;height:26px;position:relative}.quest-row.done .check{border-color:var(--ok);background:var(--ok)}.quest-row.done .check:after{content:"";border:4px solid #fff;border-width:0 4px 4px 0;width:7px;height:13px;position:absolute;top:1px;left:6px;transform:rotate(45deg)}.quest-row.just-done .check{animation:.6s cubic-bezier(.3,1.8,.5,1) tick-pop}.quest-row.just-done{animation:1.6s row-glow}@keyframes tick-pop{0%{transform:scale(.3)}to{transform:scale(1)}}@keyframes row-glow{0%,60%{background:#eaf8e4}to{background:#fff}}.quest-row .q-icon{flex:none;font-size:26px}.quest-row .q-main{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.quest-row .q-title{color:var(--ink);font-size:15px;font-weight:800;line-height:1.2}.quest-row .q-bar{background:#efe3d7;border-radius:3px;height:6px;display:block;overflow:hidden}.quest-row .q-fill{transform-origin:0;background:linear-gradient(90deg,#ffc46b,#ff9f6b);border-radius:3px;height:100%;transition:transform .4s;display:block}.quest-row .q-count{color:var(--ink-soft);flex:none;font-size:15px;font-weight:900}.quest-row.done{background:#f6f9f2}.quest-row.done .q-title{color:#8fa58a;text-decoration:line-through;text-decoration-thickness:2px}.quest-row.done .q-fill{background:var(--ok)}.quest-row.done .q-count{color:var(--ok)}.quest-toast{left:50%;top:calc(var(--edge,14px) + 70px + var(--safe-t));z-index:20;box-sizing:border-box;text-align:center;cursor:pointer;background:linear-gradient(#fffaf0,#fff1dc);border:3px solid #ffd27a;border-radius:22px;max-width:min(520px,100vw - 32px);padding:16px 24px;animation:.5s cubic-bezier(.3,1.6,.5,1) toast-in;position:fixed;transform:translate(-50%);box-shadow:0 10px 30px #7850324d}.quest-toast .toast-text{color:var(--ink);font-size:20px;font-weight:900;line-height:1.3}.quest-toast.leaving{animation:.4s forwards toast-out}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-30px)scale(.6)}to{opacity:1;transform:translate(-50%)}}@keyframes toast-out{to{opacity:0;transform:translate(-50%,-20px)scale(.9)}}.quest-toast .confetti{pointer-events:none;opacity:0;font-size:22px;animation:2.8s ease-out forwards confetti;position:absolute;top:50%;left:50%}@keyframes confetti{0%{opacity:1;transform:translate(-50%,-50%)scale(.4)}70%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--dx)), calc(-50% + var(--dy) + 60px)) scale(1.1) rotate(var(--rot))}}@media (width<=600px),(height<=500px){.quest-toast{top:calc(8px + 56px + var(--safe-t));padding:12px 16px}.quest-toast .toast-text{font-size:16px}.quest-row{padding:8px 10px}.quest-row .q-title{font-size:14px}.quests-panel{max-height:var(--panel-max,calc(100vh - var(--round) - 24px - var(--safe-t) - var(--safe-b)))}}body.inside{background:radial-gradient(70% 60% at 50% 45%,#fff4e2 0%,#fff4e200 70%),linear-gradient(#f6dcc4 0%,#f3e4d0 55%,#ecd6bd 100%)}.hud.hidden,.energy-bars.hidden,.interior-hud.hidden,.interior-hud .hidden{display:none!important}.interior-hud{--edge:14px;pointer-events:none;position:fixed;inset:0}.interior-hud>*{pointer-events:auto}.interior-hud .exit{left:calc(var(--edge) + var(--safe-l));top:calc(var(--edge) + var(--safe-t));border-radius:20px;flex-direction:row;gap:8px;min-width:0;height:60px;padding:0 18px 0 14px;position:absolute;box-shadow:0 4px 14px #7850322e}.interior-hud .exit .icon{font-size:30px}.interior-hud .exit .label{font-size:18px;font-weight:800}.interior-hint{left:50%;bottom:calc(var(--edge) + var(--safe-b));max-width:calc(100vw - 32px);color:var(--ink-soft);text-align:center;background:#fffbf4e6;border-radius:16px;padding:7px 16px;font-size:14px;font-weight:600;transition:opacity .6s;position:absolute;transform:translate(-50%);box-shadow:0 3px 10px #7850321f;pointer-events:none!important}.interior-hint.faded{opacity:0}@media (width<=600px),(height<=500px){.interior-hud{--edge:8px}.interior-hud .exit{border-radius:18px;height:56px;padding:0 14px 0 10px}.interior-hud .exit .icon{font-size:26px}.interior-hud .exit .label{font-size:16px}.interior-hint{padding:6px 12px;font-size:13px}}.interior-hud .float-emoji{pointer-events:none}.interior-hud .note{color:#e57f6b;-webkit-text-stroke:3px #fff;paint-order:stroke fill;font-weight:900}.fade{z-index:40;pointer-events:none;opacity:0;background:radial-gradient(at 50% 45%,#fbe6cf 0%,#f0cfae 100%);transition:opacity .4s;position:fixed;inset:0}.fade.on{opacity:1}.interior-hud .furniture-button{right:calc(var(--edge) + var(--safe-r));top:calc(var(--edge) + var(--safe-t));border-radius:20px;flex-direction:row;gap:8px;min-width:0;height:60px;padding:0 18px 0 14px;position:absolute;box-shadow:0 4px 14px #7850322e}.interior-hud .furniture-button .icon{font-size:28px}.interior-hud .furniture-button .label{font-size:18px;font-weight:800}.room-tray{--btn:72px;--icon:30px;--label:12px;--gap:8px;left:var(--edge);right:var(--edge);width:fit-content;bottom:calc(var(--edge) + var(--safe-b));max-width:calc(100vw - 2 * var(--edge));padding:var(--gap);border:1px solid var(--panel-edge);gap:var(--gap);background:#fff6ecf2;border-radius:24px;flex-direction:column;margin:0 auto;display:flex;position:absolute;box-shadow:0 6px 20px #78503229}.room-items{justify-content:center;gap:var(--gap);flex-wrap:wrap;display:flex}.room-items .tool{touch-action:none}.room-items .tool.pressed{border-color:var(--accent);transform:scale(.94)}.interior-hud .trash{width:76px;height:76px;right:calc(var(--edge) + var(--safe-r));bottom:calc(var(--edge) + 70px + var(--safe-b));z-index:3;background:#fffaf5f2;border:3px dashed #e8b4b4;font-size:36px;position:absolute}.interior-hud .trash.hot{background:#ffe4e0;border-color:#ee5547;transform:scale(1.15)}.item-actions{z-index:2;gap:10px;display:flex;position:absolute;top:0;left:0}.item-actions .round{--round:52px;font-size:26px}@media (width<=1000px),(height<=760px){.room-tray{--btn:62px;--icon:26px}}@media (width<=600px),(height<=500px){.room-tray{--btn:54px;--icon:24px;--label:10px;--gap:6px;border-radius:20px}.room-tray .tool{border-radius:15px;gap:2px;padding:4px 6px 3px}.interior-hud .furniture-button{border-radius:18px;height:56px;padding:0 14px 0 10px}.interior-hud .furniture-button .icon{font-size:24px}.interior-hud .furniture-button .label{font-size:16px}.interior-hud .trash{width:64px;height:64px;bottom:calc(var(--edge) + 56px);font-size:30px}}@media (height<=500px){.room-tray{left:calc(var(--edge) + var(--safe-l));bottom:auto;right:auto;top:calc(var(--edge) + 64px + var(--safe-t));max-height:calc(100vh - 2 * var(--edge) - 64px);margin:0}.room-items{max-height:calc(100vh - 2 * var(--edge) - 64px - 2 * var(--gap));flex-flow:column wrap;align-content:flex-start}.room-items .tool .label{display:none}.room-items .tool{width:var(--btn);min-width:0;padding:0}}.room-tabs{justify-content:center;gap:6px;display:flex}.room-tabs .tab{height:44px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border:2px solid #0000;border-radius:14px;align-items:center;gap:6px;padding:0 12px;display:flex;box-shadow:0 2px #966e5026}.room-tabs .tab .icon{font-size:18px}.room-tabs .tab .label{font-size:13px;font-weight:800}.room-tabs .tab.active{border-color:var(--accent);background:var(--accent-soft)}.room-chips{flex-wrap:wrap;justify-content:center;gap:12px;padding:6px 8px 8px;display:flex}.room-chips .chip{--chip:52px}@media (width<=600px),(height<=500px){.room-tabs .tab{height:44px;padding:0 9px}.room-tabs .tab .label{font-size:12px}.room-chips .chip{--chip:44px}}@media (height<=500px){.room-tabs{flex-direction:column}.room-tabs .tab .label{display:none}.room-chips{max-height:calc(100vh - 2 * var(--edge) - 64px - 140px);flex-flow:column wrap;align-content:flex-start}}.quests-section{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.5px;padding:6px 4px 0;font-size:13px;font-weight:900}.quests-section:first-child{padding-top:0}.quest-row .q-reward{color:#b07a12;font-size:12px;font-weight:700;line-height:1.2}.quest-row.done .q-reward{color:#a9b8a4}.quest-toast .toast-reward{color:#b0507a;margin-top:6px;font-size:17px;font-weight:800}.tool.locked .icon{filter:grayscale(.85);opacity:.45}.tool.locked .lock{font-size:15px;line-height:1;position:absolute;top:2px;right:2px}.tool.locked{background:#f3ede6}.tool.gift{background:#fff8e6;border-color:#ffd27a}.tool.gift .count{background:#f0a020}.quests-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.album-button{height:44px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border:2px solid #f6c9d6;border-radius:14px;align-items:center;gap:6px;padding:0 12px;font-size:14px;font-weight:800;display:flex;position:relative;box-shadow:0 2px #966e5026}.album-button .icon{font-size:20px}.album-button .badge{color:#fff;background:#ff6b6b;border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;font-size:13px;font-weight:900;display:flex;position:absolute;top:-6px;right:-6px}.album{z-index:30;padding:calc(12px + var(--safe-t)) calc(12px + var(--safe-r)) calc(12px + var(--safe-b)) calc(12px + var(--safe-l));background:#5a3c2859;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.album.hidden{display:none}.album-box{background:#fffaf2 radial-gradient(circle at 20px 20px,#f08aa814 2px,#0000 3px) 0 0/28px 28px;border-radius:28px;flex-direction:column;gap:10px;width:min(760px,100%);max-height:100%;padding:16px;display:flex;box-shadow:0 20px 50px #5a3c284d}.album-head{align-items:center;gap:12px;display:flex}.album-title{flex:1;font-size:22px;font-weight:900}.album-count{color:#b07a12;background:#fff3c4;border-radius:14px;padding:4px 12px;font-size:18px;font-weight:900}.album-close{--round:48px;font-size:22px}.album-pages{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior:contain;min-height:0;display:flex;overflow:auto hidden}.album-pages,.album-pages *{touch-action:pan-x}.album-pages::-webkit-scrollbar{display:none}.album-page{scroll-snap-align:start;flex:0 0 100%;grid-template-columns:repeat(4,1fr);gap:12px 8px;padding:6px 4px 4px;display:grid}.sticker{text-align:center;flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}.sticker-disc{background:var(--bg,#eee);width:78px;height:78px;transform:rotate(var(--tilt,0deg));border:5px solid #fff;border-radius:50%;justify-content:center;align-items:center;font-size:42px;line-height:1;display:flex;box-shadow:0 3px 8px #5a3c2840}.sticker:not(.earned) .sticker-disc{color:#b9aea4;background:#e8e1da;border-style:dashed;border-color:#d6cbc0;font-size:34px;font-weight:900;box-shadow:inset 0 2px 6px #5a3c282e}.sticker-label{color:var(--ink);font-size:12px;font-weight:800;line-height:1.2}.sticker:not(.earned) .sticker-label{color:#a8988a;font-weight:700}.album-dots{justify-content:center;gap:4px;display:flex}.album-dot{cursor:pointer;background:0 0;border:none;width:44px;height:44px;padding:0;position:relative}.album-dot:after{content:"";background:#e4d8cc;border-radius:50%;width:12px;height:12px;margin:-6px;position:absolute;top:50%;left:50%}.album-dot.on:after{background:var(--accent)}.quest-toast .sticker-disc.slap{width:64px;height:64px;font-size:34px;animation:.7s cubic-bezier(.3,1.6,.5,1) .3s both slap;position:absolute;top:-26px;right:-22px}@keyframes slap{0%{opacity:0;transform:scale(2.4)rotate(-30deg)}to{transform:rotate(var(--tilt));opacity:1}}@media (width<=600px),(height<=500px){.album-box{border-radius:22px;padding:12px}.album-title{font-size:18px}.album-page{grid-template-columns:repeat(3,1fr)}.sticker-disc{width:64px;height:64px;font-size:34px}}@media (height<=500px){.album-page{grid-template-columns:repeat(6,1fr)}.sticker-disc{border-width:4px;width:54px;height:54px;font-size:28px}}.menu-panel>*,.quests-panel>*,.quests-head>*{flex-shrink:0}.album-button{min-height:44px}.volume-row{align-items:center;gap:8px;padding:0 6px;font-size:18px;display:flex}.volume{appearance:none;touch-action:none;background:0 0;flex:1;height:44px;margin:0}.volume::-webkit-slider-runnable-track{background:linear-gradient(90deg, #ffd1df, var(--accent));border-radius:5px;height:10px}.volume::-moz-range-track{background:linear-gradient(90deg, #ffd1df, var(--accent));border-radius:5px;height:10px}.volume::-webkit-slider-thumb{-webkit-appearance:none;border:3px solid var(--accent);background:#fff;border-radius:50%;width:34px;height:34px;margin-top:-12px;box-shadow:0 2px 6px #5a3c284d}.volume::-moz-range-thumb{border:3px solid var(--accent);background:#fff;border-radius:50%;width:30px;height:30px}.tutorial{z-index:25;pointer-events:none;position:fixed;inset:0}.tutorial.hidden{display:none}.tut-ring{border:4px solid #ffcf4d;border-radius:24px;animation:1.4s ease-in-out infinite tut-glow;position:absolute;box-shadow:0 0 0 9999px #5a3c282e,0 0 18px 4px #ffcf4dcc}.tut-ring.circle{border-radius:50%}@keyframes tut-glow{50%{box-shadow:0 0 0 9999px #5a3c282e,0 0 28px 10px #ffcf4df2}}.tut-arrow{font-size:44px;line-height:1;animation:.9s ease-in-out infinite tut-bob;position:absolute;transform:translate(-50%)}@keyframes tut-bob{50%{margin-top:8px}}.tut-bubble{width:min(400px, calc(100vw - 24px - var(--safe-l) - var(--safe-r)));box-sizing:border-box;pointer-events:auto;text-align:center;background:#fffaf2;border:3px solid #ffcf4d;border-radius:24px;padding:16px 18px 14px;position:absolute;box-shadow:0 12px 30px #5a3c284d}.tut-count{color:var(--ink-soft);margin-bottom:4px;font-size:13px;font-weight:900}.tut-text{color:var(--ink);margin-bottom:14px;font-size:20px;font-weight:800;line-height:1.3}.tut-row{justify-content:center;gap:12px;display:flex}.tut-row .tool{min-width:120px;height:56px}.tut-row .tool .label{font-size:17px}.tut-row .hidden{display:none}@media (width<=600px),(height<=500px){.tut-text{margin-bottom:10px;font-size:17px}.tut-row .tool{min-width:104px;height:52px}}.name-card{z-index:8;will-change:transform;flex-direction:column;align-items:center;gap:6px;animation:.25s ease-out card-in;display:flex;position:fixed;top:0;left:0}.name-card.hidden{display:none}@keyframes card-in{0%{opacity:0}to{opacity:1}}.name-label{color:var(--ink);white-space:nowrap;background:#fff;border:3px solid #ffcf4d;border-radius:16px;padding:6px 16px;font-size:18px;font-weight:900;box-shadow:0 3px 10px #5a3c2840}.name-label.hidden{display:none}.name-buttons{gap:8px;display:flex}.name-buttons .round.small{--round:48px;background:#fff;font-size:22px;box-shadow:0 3px 10px #5a3c2840}.name-dialog .modal{width:min(440px,100%)}.name-input{box-sizing:border-box;width:100%;height:56px;font:inherit;color:var(--ink);text-align:center;-webkit-user-select:text;user-select:text;touch-action:manipulation;background:#fff;border:3px solid #f6c9d6;border-radius:16px;margin:6px 0 12px;padding:0 16px;font-size:22px;font-weight:800}.name-input:focus{border-color:var(--accent);outline:none}.name-ideas{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:16px;display:flex}.name-idea{min-height:44px;font:inherit;color:var(--ink);cursor:pointer;background:#fff4e0;border:2px solid #0000;border-radius:22px;padding:0 14px;font-size:16px;font-weight:800}.name-idea.on{border-color:var(--accent);background:var(--accent-soft)}.brush-hud{left:50%;top:calc(14px + 56px + 12px + var(--safe-t));z-index:12;background:var(--panel);border-radius:30px;align-items:center;gap:12px;max-width:calc(100vw - 24px);padding:8px 10px 8px 8px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 20px #78503233}.brush-hud.hidden,.brush-cursor.hidden{display:none}.brush-ring{width:56px;height:56px;color:var(--ink);background:radial-gradient(circle, #fff 58%, transparent 60%), conic-gradient(#f08aa8 var(--p,0%), #efe3d7 0);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:900;display:flex}.brush-text{color:var(--ink);font-size:16px;font-weight:800}.brush-stop{--round:48px;font-size:20px}.brush-cursor{z-index:11;pointer-events:none;font-size:44px;transition:transform 50ms;position:fixed;top:0;left:0}@media (width<=1000px),(height<=760px){.brush-hud{top:calc(14px + 50px + 12px + var(--safe-t))}}@media (width<=600px),(height<=500px){.brush-hud{top:calc(8px + 46px + 10px + var(--safe-t))}}@media (width<=600px){.brush-text{font-size:13px}}.looks-dialog .modal{width:min(460px,100%)}.modal-back.looks-dialog{padding-bottom:calc(16px + var(--safe-b));background:#5a3c2814;align-items:flex-end}.looks-label{text-align:left;margin:10px 0 6px}.looks-chips{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.looks-chips .chip{--chip:48px}body.photo-mode .hud,body.photo-mode .energy-bars,body.photo-mode .name-card,body.photo-mode .tutorial{display:none!important}.photo-ui{z-index:14;pointer-events:none;position:fixed;inset:0}.photo-ui.hidden{display:none}.photo-ui>*{pointer-events:auto}.photo-shutter{left:50%;bottom:calc(24px + var(--safe-b));cursor:pointer;background:#ff8fb8;border:6px solid #fff;border-radius:50%;width:84px;height:84px;position:absolute;transform:translate(-50%);box-shadow:0 0 0 4px #f08aa880,0 8px 20px #5a3c284d}.photo-shutter:active{transform:translate(-50%)scale(.92)}.photo-close{right:calc(14px + var(--safe-r));top:calc(14px + var(--safe-t));--round:56px;font-size:24px;position:absolute}.photo-gallery-button{left:calc(14px + var(--safe-l));bottom:calc(36px + var(--safe-b));--round:60px;font-size:28px;position:absolute}.photo-last{left:50%;bottom:calc(124px + var(--safe-b));background:var(--panel);white-space:nowrap;border-radius:22px;align-items:center;gap:12px;max-width:calc(100vw - 24px);padding:8px 10px 8px 16px;display:flex;position:absolute;transform:translate(-50%);box-shadow:0 6px 20px #78503233}.photo-last.hidden{display:none}.photo-kept{color:var(--ink);font-weight:800}.photo-last.lost{text-align:center;white-space:normal;box-sizing:border-box;flex-wrap:wrap;justify-content:center;width:min(440px,100vw - 24px);padding:10px 12px}.photo-last.lost .photo-kept{flex:100%;font-size:16px;line-height:1.25}.photo-last .tool,.photo-big .tool{flex-direction:row;gap:8px;height:52px}.photo-flash{z-index:45;opacity:0;pointer-events:none;background:#fff;position:fixed;inset:0}.photo-flash.on{animation:.5s ease-out photo-flash}@keyframes photo-flash{0%{opacity:.95}to{opacity:0}}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;min-height:0;display:grid;overflow-y:auto}.photo-grid.hidden,.photo-big.hidden{display:none}.photo-grid,.photo-grid *{touch-action:pan-y}.photo-thumb{aspect-ratio:4/3;cursor:pointer;background:#eee;border:4px solid #fff;border-radius:14px;padding:0;overflow:hidden;box-shadow:0 2px 6px #5a3c2833}.photo-thumb img{object-fit:cover;width:100%;height:100%;display:block}.photo-big{flex-direction:column;gap:12px;min-height:0;display:flex}.photo-big img{object-fit:contain;border:5px solid #fff;border-radius:16px;align-self:center;max-width:100%;max-height:60vh}.photo-big .modal-row{flex-wrap:wrap}.photo-delete.sure{background:#ffe4e0;border-color:#ee5547}.menu-photos{flex-direction:column;gap:8px;display:flex}@media (width<=420px){.corner .photo-button{display:none}}.market-window{left:50%;top:calc(80px + var(--safe-t));z-index:9;width:min(420px, calc(100vw - 24px - var(--safe-l) - var(--safe-r)));box-sizing:border-box;max-height:calc(100vh - 340px - var(--safe-t) - var(--safe-b));background:#fffaf2;border:3px solid #ffd27a;border-radius:24px;flex-direction:column;gap:10px;padding:12px;animation:.2s ease-out panel-in;display:flex;position:fixed;overflow-y:auto;transform:translate(-50%);box-shadow:0 10px 30px #7850324d}.market-window.hidden{display:none}.market-window,.market-window *{touch-action:pan-y}.market-head{justify-content:space-between;align-items:center;display:flex}.market-title{font-size:20px;font-weight:900}.market-rows{flex-direction:column;gap:8px;display:flex}.market-window{overflow:hidden}.market-window .market-rows{scrollbar-width:none;flex:auto;min-height:0;overflow-y:auto}.market-window .market-all,.market-window .market-give,.market-window .market-car,.market-window .market-head{flex:none}.market-row{background:#fff;border-radius:16px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:8px;padding:6px 8px;display:grid;box-shadow:0 2px #966e5026}.market-what{align-items:center;gap:4px;font-size:18px;font-weight:900;display:flex}.market-emoji{font-size:28px}.market-price{color:#b07a12;font-size:13px;font-weight:700}.market-sell{min-width:44px;min-height:44px;font:inherit;color:var(--ink);cursor:pointer;background:#fff;border:2px solid #f6c9d6;border-radius:14px;padding:0 12px;font-size:14px;font-weight:800}.market-sell.all{border-color:var(--ok);background:#eaf8e4}.market-window .market-all,.market-window .market-give{flex-direction:row;gap:8px;height:52px}.market-window.waiting .market-all,.market-window.waiting .market-give{display:none}.market-window.waiting .market-row{grid-template-columns:auto 1fr}.market-car{color:var(--ink-soft);text-align:center;font-size:13px;font-weight:700}@media (width<=600px),(height<=500px){.market-window{top:calc(64px + var(--safe-t));gap:8px;padding:10px}.market-row{grid-template-columns:auto 1fr auto}.market-price,.market-window:not(.waiting) .market-car{display:none}.market-window .market-all,.market-window .market-give{height:46px}}.fps{left:calc(8px + var(--safe-l));bottom:calc(8px + var(--safe-b));z-index:50;color:#fff;pointer-events:none;background:#0000008c;border-radius:8px;padding:2px 8px;font:700 12px/1.4 ui-monospace,monospace;position:fixed}.worlds{z-index:30;padding:calc(12px + var(--safe-t)) calc(12px + var(--safe-r)) calc(12px + var(--safe-b)) calc(12px + var(--safe-l));background:#5a3c2859;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.worlds.hidden{display:none}.worlds-box{width:min(820px,100%)}.worlds-cards{grid-template-columns:repeat(3,1fr);gap:14px;min-height:0;padding:4px;display:grid;overflow-y:auto}.worlds-cards,.worlds-cards *{touch-action:pan-y}.world-card{background:#fff;border:4px solid #fff;border-radius:22px;flex-direction:column;min-width:0;display:flex;position:relative;box-shadow:0 3px 10px #5a3c282e}.world-card.active{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft), 0 3px 10px #5a3c282e}.world-pick{font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:6px;width:100%;min-height:44px;padding:0 0 12px;display:flex}.world-pic{aspect-ratio:4/3;background:#dff2d2;border-radius:18px 18px 8px 8px;justify-content:center;align-items:center;width:100%;font-size:56px;display:flex;overflow:hidden}.world-pic img{object-fit:cover;width:100%;height:100%;display:block}.world-name{text-align:center;overflow-wrap:anywhere;padding:0 8px;font-size:18px;font-weight:900}.world-mode{color:#8a5a10;background:#fff3c4;border-radius:12px;padding:3px 10px;font-size:14px;font-weight:800}.world-mode.build{color:#3f5aa8;background:#e4ecff}.world-now{color:var(--accent);font-size:13px;font-weight:800}.world-new{min-height:180px;font:inherit;color:var(--ink-soft);cursor:pointer;background:#fffaf2;border:4px dashed #e7d6c4;justify-content:center;align-items:center;gap:8px}.world-plus{color:var(--accent);font-size:54px;font-weight:900;line-height:1}.world-delete{--round:48px;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;background:#fff;font-size:22px;position:absolute;top:8px;right:8px;box-shadow:0 2px 8px #5a3c2840}.world-ring{pointer-events:none;background:conic-gradient(#ee5547 var(--p,0%), transparent 0);border-radius:50%;position:absolute;inset:0;-webkit-mask:radial-gradient(circle,#0000 58%,#000 60%);mask:radial-gradient(circle,#0000 58%,#000 60%)}.world-bin{pointer-events:none;position:relative}.world-delete.holding{transform:scale(1.12)}.worlds-note{text-align:center;min-height:20px;color:var(--ink-soft);font-weight:800}.new-world .modal{box-sizing:border-box;width:min(560px,100%);max-height:100%;overflow-y:auto}.new-world .modal,.new-world .modal *{touch-action:pan-y}.world-choice{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;display:grid}.world-option{min-height:44px;font:inherit;color:var(--ink);cursor:pointer;background:#fff;border:3px solid #f1e3d4;border-radius:18px;flex-direction:column;align-items:center;gap:2px;padding:10px 8px;display:flex}.world-option.on{border-color:var(--accent);background:var(--accent-soft)}.world-option-icon{font-size:32px;line-height:1.1}.world-option-label{font-size:17px;font-weight:900}.world-option-text{color:var(--ink-soft);font-size:13px;font-weight:600}@media (width<=600px),(height<=500px){.worlds-cards{grid-template-columns:1fr}.world-card{flex-direction:row}.world-pick{text-align:left;flex-flow:wrap;justify-content:flex-start;padding:6px}.world-pic{border-radius:14px;flex:0 0 96px;width:96px;font-size:36px}.world-name{text-align:left;flex:1;font-size:16px}.world-new{flex-direction:row;min-height:80px}.world-plus{font-size:36px}.world-delete{margin-top:-24px;top:50%}.world-card:has(.world-delete) .world-pick{padding-right:60px}.world-option-text{display:none}}.build-mode .tool .price,.build-mode .tool .lock{display:none}.worlds .modal-back{z-index:2;border-radius:0;position:absolute}.world-ask .tool.yes.danger{background:#ffe4e0;border-color:#ee5547}.sky-layer{z-index:-1;pointer-events:none;opacity:0;position:absolute;inset:0}.sky-sunset{background:linear-gradient(#f6a77f 0%,#fbc59a 45%,#ffe0c2 100%)}.sky-night{background:radial-gradient(1.5px 1.5px at 12% 18%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 27% 9%,#fff 50%,#0000 51%),radial-gradient(2px 2px at 41% 22%,#fff8d8 50%,#0000 51%),radial-gradient(1.5px 1.5px at 58% 12%,#fff 50%,#0000 51%),radial-gradient(2px 2px at 73% 26%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 88% 8%,#fff8d8 50%,#0000 51%),radial-gradient(1.5px 1.5px at 8% 42%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 93% 46%,#fff 50%,#0000 51%),radial-gradient(2px 2px at 20% 64%,#fff8d8 50%,#0000 51%),radial-gradient(1.5px 1.5px at 82% 70%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 50% 4%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 35% 36%,#fff 50%,#0000 51%),linear-gradient(#232a5c 0%,#3b4282 50%,#6c5d93 100%)}.sky-moon{right:14%;top:calc(110px + var(--safe-t));background:radial-gradient(circle at 35% 35%,#fffbe8 0%,#f6edc4 60%,#e9dca8 100%);border-radius:50%;width:54px;height:54px;position:absolute;box-shadow:0 0 30px 8px #fff6d259}.sky-moon:after{content:"";background:#c8ba8c73;border-radius:50%;width:9px;height:9px;position:absolute;top:55%;left:30%}body.inside .sky-layer{display:none}.race-hud{left:50%;top:calc(14px + 56px + 12px + var(--safe-t));z-index:12;background:var(--panel);box-sizing:border-box;border-radius:24px;grid-template-columns:1fr auto;align-items:center;column-gap:10px;min-width:220px;max-width:calc(100vw - 24px);padding:8px 10px 8px 18px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 6px 20px #78503233}.race-hud.hidden{display:none}.race-big{color:var(--ink);white-space:nowrap;font-size:26px;font-weight:900}.race-line{color:var(--ink-soft);grid-column:1;font-size:14px;font-weight:800}.race-close{--round:48px;grid-area:1/2/span 2;font-size:20px}.race-hud.done{border:3px solid #ffd27a}.race-hud.done .race-big{color:#b07a12}.race-arrow{z-index:8;pointer-events:none;font-size:36px;animation:.8s ease-in-out infinite alternate race-bob;position:fixed;top:-64px;left:-22px}.race-arrow.hidden{display:none}@keyframes race-bob{0%{margin-top:0}to{margin-top:-12px}}@media (width<=1000px),(height<=760px){.race-hud{top:calc(14px + 50px + 12px + var(--safe-t))}}@media (height<=500px){.new-world .modal{grid-template-columns:1fr 1fr;column-gap:10px;padding:10px 16px;display:grid}.new-world .modal>.modal-q,.new-world .modal>.name-input,.new-world .modal>.name-ideas,.new-world .modal>.modal-row{grid-column:1/-1}.new-world .modal-q{margin-bottom:2px;font-size:18px}.new-world .world-name-input{height:44px;margin:2px 0 6px;font-size:18px}.new-world .name-ideas{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;margin-bottom:6px;overflow-x:auto}.new-world .name-ideas,.new-world .name-ideas *{touch-action:pan-x}.new-world .name-idea{flex:none}.new-world .world-choice{gap:6px;margin-bottom:8px}.new-world .world-option{padding:4px 6px}.new-world .world-option-icon{font-size:24px}.race-hud{min-width:0;padding:4px 6px 4px 14px}.race-big{font-size:20px}.race-line{font-size:12px}.race-close{--round:44px;font-size:18px}}.install-guide{z-index:32}.install-box{box-sizing:border-box;width:min(640px,100%);max-height:100%;overflow-y:auto}.install-box,.install-box *{touch-action:pan-y}.install-steps{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:10px;margin:0 0 16px;padding:0;list-style:none;display:grid}.install-step{background:#fff;border-radius:20px;flex-direction:column;align-items:center;gap:8px;padding:14px 8px 12px;display:flex;position:relative;box-shadow:0 3px 10px #5a3c2824}.install-n{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:15px;font-weight:900;display:flex;position:absolute;top:8px;left:8px}.install-pic{justify-content:center;align-items:center;height:64px;display:flex}.install-pic svg{width:56px;height:56px}.install-emoji{font-size:52px;line-height:1}.install-icon{border-radius:14px;width:60px;height:60px;box-shadow:0 3px 8px #5a3c2840}.install-pill{color:#2f7cf6;background:#eef4ff;border-radius:14px;padding:8px 18px;font-size:18px;font-weight:800}.install-menu{white-space:nowrap;background:#f1ece6;border-radius:8px;padding:6px 12px;font-size:15px;font-weight:800}.install-text{text-align:center;font-size:16px;font-weight:800;line-height:1.2}.install-note{color:var(--ink-soft);font-size:13px;font-weight:700}.install-carry-note{font-weight:800}.install-arrow{right:calc(24px + var(--safe-r));top:calc(6px + var(--safe-t));pointer-events:none;font-size:44px;animation:.9s ease-in-out infinite alternate install-bob;position:absolute}.install-guide.phone .install-arrow{top:auto;left:50%;right:auto;bottom:calc(4px + var(--safe-b));margin-left:-22px}@keyframes install-bob{0%{transform:translateY(0)}to{transform:translateY(-10px)}}.install-guide.phone .install-arrow{animation-name:install-bob-down}@keyframes install-bob-down{0%{transform:translateY(0)}to{transform:translateY(10px)}}.install-nudge{z-index:12;left:50%;top:calc(var(--nudge-top,90px) + var(--safe-t));box-sizing:border-box;background:var(--panel,#fffaf2);border-radius:22px;align-items:center;gap:10px;width:min(460px,100% - 32px);padding:10px 10px 10px 12px;display:flex;position:absolute;transform:translate(-50%);box-shadow:0 8px 24px #5a3c2838}.install-nudge .install-icon{border-radius:12px;flex:none;width:48px;height:48px}.install-nudge-text{color:var(--ink);flex:1;font-size:15px;font-weight:800;line-height:1.25}.install-go{border-color:var(--ok);background:#eaf8e4;flex:none;min-height:48px;padding:0 14px}.install-go .label{font-size:15px;font-weight:800}.install-close{flex:none;font-size:20px}@media (width<=600px),(height<=500px){.install-nudge{--nudge-top:66px;flex-wrap:wrap}.install-nudge-text{flex-basis:calc(100% - 120px);font-size:14px}.install-go{flex:1}.install-steps{grid-template-columns:repeat(2,1fr)}.install-pic{height:52px}.install-pic svg{width:46px;height:46px}}
