.tut{z-index:70;pointer-events:none;font-family:var(--k-font);position:fixed;inset:0}.tut *{box-sizing:border-box}.tut-catch{pointer-events:auto;touch-action:manipulation;display:none;position:fixed;inset:0}.tut-catch.on{display:block}.tut-say{width:min(250px,100vw - 16px);font:600 16.5px/1.3 var(--k-font);opacity:0;visibility:hidden;pointer-events:none;transform-origin:var(--tx,120px) 100%;padding:16px 15px 24px;transition:opacity .14s,transform .18s cubic-bezier(.3,1.5,.5,1),visibility 0s linear .14s;position:fixed;top:0;left:0;transform:scale(.88)}.tut-say.show{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .14s,transform .18s cubic-bezier(.3,1.5,.5,1);transform:none}.tut-say:after{content:"";left:calc(var(--tx,120px) - 8px);border-right:var(--k-olw) solid var(--k-ol);border-bottom:var(--k-olw) solid var(--k-ol);background:#fff;width:16px;height:16px;position:absolute;bottom:-11px;transform:rotate(45deg)}.tut-say .tut-text .rest{visibility:hidden}.tut-more{font:800 13px/1 var(--k-font);color:var(--k-coral);opacity:0;transition:opacity .2s;position:absolute;bottom:4px;right:12px}.tut-say.cdone .tut-more{opacity:1}.tut-tag{white-space:nowrap;position:absolute;top:-17px;left:14px}.tut-text{margin:0}.tut-bub{width:min(344px,100vw - 20px);font:600 16px/1.28 var(--k-font);opacity:0;visibility:hidden;pointer-events:none;padding:14px 14px 10px;transition:opacity .18s,top .25s,visibility 0s linear .18s;position:fixed;top:60px;left:50%;translate:-50%}.tut-bub.show{opacity:1;visibility:visible;transition:opacity .18s,top .25s}.tut-bub.low{top:auto;bottom:calc(var(--bar-h,74px) + 56px);width:min(250px,100vw - 150px);left:10px;translate:0}.tut-bub.tap{pointer-events:auto;cursor:pointer}.tut-bub.last:after{content:"▾ chạm";text-align:right;font:800 13px/1 var(--k-font);color:var(--k-coral);margin-top:2px;display:block}.tut-skip{border:2.5px solid var(--k-ol);background:var(--k-white);min-height:26px;color:var(--k-ink2);font:700 13px/21px var(--k-font);cursor:pointer;pointer-events:auto;border-radius:12px;padding:0 10px;position:absolute;top:-13px;right:12px}.tut-skip:before{content:"";position:absolute;inset:-12px -8px -8px}.tut-skip[hidden]{display:none}.tut-ring{border:3px solid var(--k-orange);opacity:0;pointer-events:none;background:#ffeaa024;transition:opacity .2s;animation:1.5s ease-in-out infinite tut-pulse;position:fixed;top:0;left:0;box-shadow:0 0 0 4px #ffeaa08c,0 0 16px 4px #ffb34780}.tut-ring.show{opacity:1}@keyframes tut-pulse{0%,to{filter:brightness();scale:1}50%{filter:brightness(1.12);scale:1.07}}@media (prefers-reduced-motion:reduce){.tut-ring{animation:none}.tut-say,.tut-say.show,.tut-bub,.tut-bub.show{transition:opacity .15s;transform:none}.tut-bub{animation:none}}.tut.calm .tut-ring{animation:none}.tut.calm .tut-say,.tut.calm .tut-say.show,.tut.calm .tut-bub,.tut.calm .tut-bub.show{transition:opacity .15s;transform:none}.tut.calm .tut-bub{animation:none}.hub.tui:not(.tui-hud) .daycard,.hub.tui:not(.tui-hud) .coins,.hub.tui:not(.tui-arrange) .bar [data-act=arrange],.hub.tui:not(.tui-book) .bar [data-act=book],.hub.tui:not(.tui-walk) .bar [data-act=walk],.hub.tui:not(.tui-album) .bar [data-act=album],.hub.tui:not(.tui-decor) .bar [data-act=decor]{visibility:hidden;pointer-events:none}.ed.tui #list,.ed.tui #menu,.ed.tui #trayTabs .tab[data-tab=phu],.ed.tui #trayTabs .tab[data-tab=la],.ed.tui:not(.tui-goi) #trayTabs .tab[data-tab=goi]{display:none}.ed.tui:not(.tui-tools) #tools{display:none!important}.hub .bar button .tut-new{z-index:2;border:2px solid var(--k-ol);background:var(--k-red);box-shadow:0 2px 0 var(--k-ol);color:#fff;font:800 11px/17px var(--k-font);pointer-events:none;border-radius:10px;padding:0 7px;font-style:normal;position:absolute;top:-9px;right:-5px}.hub{--desk:#5b4334;--page:#f8f0de;--ink:#3b3127;--muted:#85745f;--warm:#e08a2e;--warm-light:#f2a541;--line:#785a3c38;--stamp:#c8433a;--hand:"Patrick Hand", "Segoe Print", cursive;--paper-bg:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .45  0 0 0 0 .35  0 0 0 0 .2  0 0 0 .07 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");color:var(--ink);font-family:Be Vietnam Pro,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}:root{--bar-h:74px}.hub,.hub *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}.hub [hidden]{display:none!important}.hub button:where(:not(.k-btn,.k-tab)){font:inherit;color:inherit;cursor:pointer}.hub.off .daycard,.hub.off .coins,.hub.off .bar,.hub.off .endday,.hub.off .hint,.hub.off .gain{visibility:hidden}.hub .daycard{z-index:3;background:var(--k-cream);font-family:var(--k-font);color:var(--k-ink);border-radius:20px;padding:8px 12px 11px;line-height:1.1;transition:opacity .2s;position:fixed}.hub .daycard b{font:800 26px/1 var(--k-font);display:block}.hub .daycard span{font:600 14px/1.1 var(--k-font);color:var(--k-ink2);margin:1px 0 6px;display:block}.hub .pips{--pip:30px;flex-wrap:wrap;gap:5px 6px;display:flex}.hub .pips.many{--pip:26px;gap:5px}.hub .pips i{width:var(--pip);height:var(--pip);flex:none;place-items:center;display:grid;position:relative}.hub .pips img{width:var(--pip);height:var(--pip);border:2.5px solid var(--k-ol);opacity:.5;background:#e8dccb;border-radius:50%;transition:opacity .25s,transform .25s;display:block;transform:scale(.92)}.hub .pips i.here img,.hub .pips i.on img{opacity:1;transform:none}.hub .pips i.here:after{content:"";border:3px solid var(--k-orange);border-radius:50%;animation:1.8s ease-in-out infinite pip-here;position:absolute;inset:-4px}.hub .pips i.on.has:after{content:"✓";border:2px solid var(--k-ol);background:var(--k-green);color:#fff;width:16px;height:16px;font:800 10px/12px var(--k-font);text-align:center;border-radius:50%;position:absolute;bottom:-5px;right:-4px}@keyframes pip-here{0%,to{opacity:.45}50%{opacity:1}}.hub .pips .dot{width:var(--pip);height:var(--pip);border:2.5px solid var(--k-ol);opacity:.5;background:#e8dccb;border-radius:50%}.hub .pips i.on .dot{background:var(--k-butter);opacity:1}.hub .pips i.new{animation:.42s cubic-bezier(.3,1.8,.5,1) pip}@keyframes pip{0%{transform:scale(.4)}to{transform:scale(1)}}.hub .coins{z-index:3;position:fixed}.hub .coins small{font:700 14px/1 var(--k-font);color:var(--k-ink2);margin-left:4px}.hub .coins.bump{animation:.4s bump}@keyframes bump{40%{transform:scale(1.12)}}.hub .gain{z-index:3;border:2.5px solid var(--k-ol);background:var(--k-green);box-shadow:0 3px 0 var(--k-ol);color:#fff;font:800 14px/24px var(--k-font);white-space:nowrap;pointer-events:none;opacity:0;border-radius:12px;padding:0 10px;transition:opacity .35s;position:fixed}.hub .gain.stay{opacity:1;transform:translateY(-8px)}.hub .bar{z-index:4;padding:0 10px calc(10px + env(safe-area-inset-bottom));pointer-events:none;justify-content:space-between;align-items:flex-end;gap:6px;transition:transform .28s cubic-bezier(.3,.7,.3,1);display:flex;position:fixed;bottom:0;left:0;right:0}.hub .bar.away{transform:translateY(calc(100% + 56px))}.hub .bar button{pointer-events:auto;min-width:0;max-width:68px;height:66px;min-height:66px;font:700 13px/1 var(--k-font);letter-spacing:-.01em;white-space:nowrap;border-radius:20px;flex-direction:column;flex:1 1 0;gap:2px;padding:0;position:relative}.hub .bar svg{flex:none;width:30px;height:30px}.hub .bar button.new:after{content:"";border:2.5px solid var(--k-ol);background:var(--k-red);border-radius:50%;width:14px;height:14px;position:absolute;top:-5px;right:-4px}.hub .bar .main{--m:clamp(78px, 22vw, 90px);z-index:1;width:var(--m);height:var(--m);min-height:var(--m);max-width:none;margin-top:calc(66px - var(--m));color:#fff;font:800 15px/1 var(--k-font);letter-spacing:0;text-shadow:0 2px #5b3a2980;background:radial-gradient(circle at 40% 28%,#ffb27a,coral);border-radius:50%;flex:none}.hub .bar .main svg{width:40px;height:40px;margin-top:-6px}.hub .bar .main .k-spark{text-shadow:0 1px 0 var(--k-ol);font-size:18px;line-height:1}.hub .bar .main .sp-l{font-size:15px;top:8px;left:-11px}.hub .bar .main .sp-r{animation-delay:.7s;top:-9px;right:-7px}.hub .endday{z-index:4;min-height:48px;padding:0 20px;font-size:16px;position:fixed;right:12px}.hub .hint{z-index:5;text-align:left;max-width:calc(100vw - 20px);font:700 14.5px/1.25 var(--k-font);align-items:center;gap:2px;padding:2px 2px 2px 14px;display:flex;position:fixed;right:10px}.hub .hint:after{content:"";bottom:-10px;right:calc(var(--arrow,30px) - 4px);border-right:var(--k-olw) solid var(--k-ol);border-bottom:var(--k-olw) solid var(--k-ol);background:#fff;width:14px;height:14px;position:absolute;transform:rotate(45deg)}.hub .hint button{min-width:44px;min-height:44px;color:var(--k-ink2);font:800 22px/1 var(--k-font);background:0 0;border:0;flex:none;position:relative}.hub .toast{left:50%;bottom:calc(var(--bar-h) + 34px);opacity:0;pointer-events:none;z-index:30;max-width:86vw;transition:all .25s;position:fixed;transform:translate(-50%,16px)}.hub .toast.show{opacity:1;transform:translate(-50%)}body.deco .hub .toast{bottom:calc(var(--tray-h,280px) + 12px)}.hub .tray{z-index:6;height:calc(var(--tray-h,280px) + env(safe-area-inset-bottom));padding:5px 0 env(safe-area-inset-bottom);background:var(--k-peach);border:var(--k-olw) solid var(--k-ol);border-radius:var(--k-r-lg) var(--k-r-lg) 0 0;color:var(--k-ink);font-family:var(--k-font);visibility:hidden;border-bottom:0;flex-direction:column;gap:0;transition:transform .28s cubic-bezier(.3,.7,.3,1),visibility 0s linear .28s;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(calc(100% + 80px));box-shadow:0 -6px 18px #3c230f38}.hub .tray.open{visibility:visible;transition:transform .28s cubic-bezier(.3,.7,.3,1),visibility;transform:none}.hub .trayhead{align-items:center;gap:6px;padding:0 10px;display:flex}.hub .zones,.hub .styles{touch-action:pan-x;overscroll-behavior-x:contain;min-width:0;padding:5px 0}.hub .zones{flex:1}.hub .styles{align-items:center;padding:5px 10px}.hub .zones .k-tab,.hub .styles .k-tab{white-space:nowrap;font:700 14px/1.55 var(--k-font);touch-action:manipulation;padding:4px 12px;position:relative}.hub .zones .k-tab:before,.hub .styles .k-tab:before{content:"";position:absolute;inset:-5px -3px}.hub .zones .k-tab.k-on,.hub .styles .k-tab.k-on{text-shadow:0 2px #5b3a2973}.hub .setbtn{z-index:1;box-shadow:0 3px 0 var(--k-ol), -10px 0 8px -2px var(--k-peach);white-space:nowrap;font-family:var(--k-font);flex:none;margin-left:auto;font-size:14px;position:sticky;right:0}.hub .setbtn:before,.hub .info .k-btn:before{content:"";position:absolute;inset:-5px -3px}.hub .done{--k-lip:5px;min-width:88px;position:absolute;top:-68px;left:10px}.hub .info{min-height:40px;font-family:var(--k-font);align-items:center;gap:8px;padding:0 10px;display:flex}.hub .info .what{min-width:0;line-height:1.15;font-family:var(--k-font);flex:1}.hub .info .what b{font:800 16px/1.15 var(--k-font);color:var(--k-ink);display:block}.hub .info .what small{color:var(--k-ink);font:600 13px/1.25 var(--k-font);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.hub .info .k-btn{flex:none;position:relative}.hub .items{overscroll-behavior:contain;scrollbar-width:none;flex:1;align-items:stretch;gap:10px;min-height:0;padding:7px 10px 9px;display:flex;overflow:auto hidden}.hub .items::-webkit-scrollbar{display:none}.hub .item{text-align:center;width:96px;max-height:140px;font:700 13px/1.15 var(--k-font);color:var(--k-ink);touch-action:manipulation;flex-direction:column;flex:none;align-items:center;gap:2px;padding:5px 4px 6px;transition:transform .12s,background-color .12s;display:flex;position:relative}.hub .item.has{background:var(--k-butter)}.hub .item.on{background:var(--k-butter);transform:translateY(-3px)rotate(-1.5deg)}.hub .item.preview{background:var(--k-butter);border-style:dashed;border-color:var(--k-coral)}.hub .item.locked{color:var(--k-ink2);background:#efe5d3;border-color:#a98f74;box-shadow:0 4px #a98f74}.hub .item.locked .pic{filter:grayscale(.85)opacity(.5)}.hub .item .pic{object-fit:contain;flex:1;width:100%;min-height:36px}.hub .item .nm{height:2.3em;overflow:hidden}.hub .item .tag{box-shadow:0 2px 0 var(--k-ol);font:800 13px/20px var(--k-font);white-space:nowrap;border-width:2px;border-radius:11px;flex:none;gap:4px;padding:0 8px}.hub .item .tag.price{background:var(--k-butter);color:var(--k-ink)}.hub .item .tag.own{background:var(--k-mint);color:var(--k-ink)}.hub .item .tag.lock{color:var(--k-ink);background:#e4d8c4;border-color:#a98f74;font-weight:700;box-shadow:0 2px #a98f74}.hub .item .tag .k-coin{border-width:1.5px;width:12px;height:12px}.hub .item .placed{width:20px;height:20px;font-size:12px;position:absolute;top:4px;right:4px}.hub .empty-note{color:var(--k-ink);font:700 15px/1.3 var(--k-font);align-self:center;padding:0 8px}.hub .album{z-index:10;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);font-family:var(--k-font);color:var(--k-ink);background:radial-gradient(#ffffff4d 2px,#0000 2.5px) 0 0/24px 24px,linear-gradient(#ffd9b8,#ffc29a);flex-direction:column;transition:opacity .22s,transform .22s,scale .3s cubic-bezier(.3,1.3,.6,1);display:flex;position:fixed;inset:0}.hub .album.off{opacity:0;pointer-events:none;transform:translateY(18px)scale(.94)}.hub .atop{align-items:center;gap:8px;padding:10px 12px 4px;display:flex}.hub .round{flex:none;padding-bottom:3px;font-size:26px;line-height:1}.hub .atop h1{flex:1;justify-content:center;margin:0;display:flex}.hub .atop h1>span{height:46px;padding:0 30px;font-size:22px}.hub .atop .sum{background:var(--k-butter);color:var(--k-ink);font:800 14px/26px var(--k-font);flex:none}.hub .pickbar{background:var(--k-butter);font:700 14px/1.2 var(--k-font);align-items:center;gap:8px;margin:4px 12px 6px;padding:6px 6px 6px 14px;display:flex}.hub .pickbar span{flex:1}.hub .pickbar button{--k-lip:4px;border-radius:14px;min-height:44px;padding:0 12px;font-size:14px}.hub .apage{flex-direction:column;flex:1;min-height:0;margin:10px 12px 16px;display:flex;position:relative;overflow:hidden}.hub .atabs{flex:none;padding:12px 12px 10px}.hub .atabs button.k-tab{min-height:48px;font:700 14px/1.15 var(--k-font);text-align:center;flex:1 0 auto;padding:2px 8px}.hub .atabs button.k-tab small{font:600 13px/1.1 var(--k-font);margin:1px 0 0;display:block}.hub .atabs button.k-tab.k-on{background:var(--k-mint);color:var(--k-ink)}.hub .grid{overscroll-behavior:contain;flex:1;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));align-content:start;gap:18px 10px;padding:14px 14px 24px;display:grid;overflow-y:auto}.hub .pol{border:2.5px solid var(--k-ol);background:var(--k-white);box-shadow:0 4px 0 var(--k-ol);transform:rotate(var(--tilt,0deg));text-align:left;font-family:var(--k-font);color:var(--k-ink);border-radius:12px;flex-direction:column;padding:5px 5px 0;transition:transform 80ms,box-shadow 80ms;display:flex;position:relative}.hub .pol:active{transform:rotate(var(--tilt,0deg)) translateY(3px);box-shadow:0 1px 0 var(--k-ol)}.hub .pol canvas{aspect-ratio:9/10;background:#ffe6d0;border-radius:7px;width:100%;display:block}.hub .pol .cap{font:700 14px/1.1 var(--k-font);white-space:nowrap;text-overflow:ellipsis;padding:5px 1px 6px;overflow:hidden}.hub .pol .cap small{font:600 13px/1.15 var(--k-font);color:var(--k-ink2);display:block}.hub .seal{border:2px solid var(--k-ol);background:var(--k-pink);width:26px;height:26px;color:var(--k-red);border-radius:50%;place-items:center;font-size:15px;display:grid;position:absolute;top:3px;right:3px;transform:rotate(-12deg)}.hub .pin{border:2px solid var(--k-ol);background:radial-gradient(circle at 35% 35%, #ff9b8f, var(--k-red));border-radius:50%;width:15px;height:15px;margin-left:-7px;position:absolute;top:-9px;left:50%}.hub .fav{border:2px solid var(--k-ol);background:var(--k-green);color:#fff;font:800 13px/18px var(--k-font);border-radius:10px;padding:0 8px;position:absolute;top:-9px;left:-4px}.hub .grid .none{text-align:center;color:var(--k-ink2);font:600 16px/1.35 var(--k-font);grid-column:1/-1;padding:40px 10px}.hub .detail{z-index:2;background:var(--k-cream);flex-direction:column;transition:transform .3s cubic-bezier(.3,.7,.3,1),opacity .25s;display:flex;position:absolute;inset:0}.hub .detail.off{opacity:0;pointer-events:none;transform:translate(30%)}.hub .dtop{align-items:center;gap:10px;padding:12px 12px 0;display:flex}.hub .dtop .kind{border:2.5px solid var(--k-ol);background:var(--k-lilac);font:800 14px/24px var(--k-font);border-radius:12px;padding:0 12px}.hub .dscroll{flex-direction:column;flex:1;align-items:center;padding:6px 16px 16px;display:flex;overflow-y:auto}.hub .bigpol{border:var(--k-olw) solid var(--k-ol);background:var(--k-white);box-shadow:0 5px 0 var(--k-ol);border-radius:16px;margin:10px 0 14px;padding:10px 10px 0;position:relative;transform:rotate(-1.2deg)}.hub .bigpol .photo{background:linear-gradient(#ffe9d6,#ffd2ae);border-radius:9px;place-items:center;display:grid}.hub .bigpol canvas{display:block}.hub .bigpol .cap{font:700 18px/1.2 var(--k-font);padding:6px 2px 10px}.hub .bigpol .seal{width:34px;height:34px;font-size:19px;top:8px;right:8px}.hub .note{font:600 17px/1.3 var(--k-font);color:var(--k-ink);text-align:center;max-width:320px;margin:0 0 6px}.hub .stampline{font:700 14px/1.25 var(--k-font);color:#b84a47;text-align:center;margin-bottom:6px}.hub .actions{border-top:2.5px dashed #5b3a2938;flex-direction:column;gap:12px;padding:14px 16px 18px;display:flex}.hub .actions .row{gap:12px;display:flex}.hub .actions .row button{flex:1}.hub .actions button.del{color:#b8403b;background:#ffd9d4;flex:none;padding:0 20px}@media (prefers-reduced-motion:reduce){.hub .tray,.hub .item,.hub .bar,.hub .album,.hub .detail,.hub .pol,.hub .toast{transition:none}}.hub .ccatch{z-index:5;touch-action:manipulation;display:none;position:fixed;inset:0}.hub .ccatch.on{display:block}.hub .cwait{z-index:2;border:2.5px solid var(--k-ol);width:46px;height:30px;box-shadow:0 3px 0 var(--k-ol);transform:translate(var(--x,0px), var(--y,0px));opacity:0;visibility:hidden;pointer-events:none;background:#fff;border-radius:16px;justify-content:center;align-items:center;gap:5px;padding:0;transition:opacity .2s,visibility 0s linear .2s;display:flex;position:fixed;top:0;left:0}.hub .cwait.show{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .2s}.hub .cwait:after{content:"";border-right:2.5px solid var(--k-ol);border-bottom:2.5px solid var(--k-ol);background:#fff;width:10px;height:10px;position:absolute;bottom:-7px;left:14px;transform:rotate(45deg)}.hub .cwait:before{content:"";position:absolute;inset:-10px -8px -8px}.hub .cwait i{z-index:1;background:var(--k-ink2);border-radius:50%;width:7px;height:7px;animation:1.4s ease-in-out infinite cdot;position:relative}.hub .cwait i:nth-child(2){animation-delay:.18s}.hub .cwait i:nth-child(3){animation-delay:.36s}@keyframes cdot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}.hub .cwait b{z-index:1;color:var(--k-coral);font:400 18px/1 system-ui,sans-serif;display:none;position:relative}.hub .cwait.order i{display:none}.hub .cwait.order b{display:block}.hub .cbub{z-index:6;width:186px;transform:translate(var(--x,0px), var(--y,0px));opacity:0;visibility:hidden;pointer-events:none;transition:opacity .14s,visibility 0s linear .14s;position:fixed;top:0;left:0}.hub .cbub.show{opacity:1;visibility:visible;transition:opacity .14s}.hub .cin{font:600 16.5px/1.25 var(--k-font);transform-origin:var(--tx,88px) 100%;border-radius:22px;padding:14px 14px 22px;transition:transform .18s cubic-bezier(.3,1.5,.5,1);position:relative;transform:scale(.84)}.hub .cbub.show .cin{transform:none}.hub .cbub.pop .cin{animation:.16s ease-out cpop}@keyframes cpop{0%{transform:scale(.95)}to{transform:none}}.hub .cin:after{content:"";left:calc(var(--tx,88px) - 11px);border-right:var(--k-olw) solid var(--k-ol);border-bottom:var(--k-olw) solid var(--k-ol);background:#fff;width:16px;height:16px;position:absolute;bottom:-11px;transform:rotate(45deg)}.hub .ctag{white-space:nowrap;position:absolute;top:-17px;left:14px}.hub .ctext{margin:0}.hub .ctext .rest{visibility:hidden}.hub .cmore{font:800 13px/1 var(--k-font);color:var(--k-coral);opacity:0;transition:opacity .2s;position:absolute;bottom:4px;right:12px}.hub .cbub.cdone .cmore{opacity:1}.hub .ocard{left:10px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:6;opacity:0;visibility:hidden;pointer-events:none;border-radius:22px;width:min(236px,60vw);padding:12px 14px 14px;transition:transform .22s ease-in,scale .22s ease-in,opacity .2s,visibility 0s linear .22s;position:fixed;transform:translateY(125%)scale(.9)}.hub .ocard.show{opacity:1;visibility:visible;pointer-events:auto;transition:transform .38s cubic-bezier(.25,1.2,.45,1),scale .4s cubic-bezier(.3,1.5,.6,1),opacity .2s;transform:scale(1)}.hub .ocard h4{font:800 18px/1.1 var(--k-font);color:var(--k-ink);margin:0 0 6px;padding-right:68px}.hub .ocard .q{border-left:3px solid var(--k-peach);font:600 14px/1.3 var(--k-font);color:var(--k-ink2);margin:0 0 6px;padding-left:9px}.hub .ocard ul{font:600 16px/1.25 var(--k-font);color:var(--k-ink);margin:0 0 8px;padding:0;list-style:none}.hub .ocard li{align-items:flex-start;gap:8px;padding:1px 0;display:flex}.hub .ocard li:before{content:"";border:2.5px solid var(--k-ol);width:18px;height:18px;box-shadow:0 2px 0 var(--k-ol);background:#fff;border-radius:6px;flex:none;margin-top:1px}.hub .ocard .go{width:132px;min-height:44px;margin-left:auto;font-size:18px;display:flex}.hub .ocard .again{min-width:44px;min-height:44px;font:700 13px/1 var(--k-font);color:var(--k-ink2);background:0 0;border:0;align-items:center;padding:0 10px 0 8px;display:flex;position:absolute;top:6px;right:4px}.hub.card .bar{transform:translateY(calc(100% + 56px))}.hub.talk .hint,.hub.talk .endday,.hub.off .cust,body.deco .hub .cwait{visibility:hidden}.hub.off .cust.over{visibility:visible}.hub .cust.over .ccatch{z-index:11}.hub .cust.over .cbub{z-index:12}@media (prefers-reduced-motion:reduce){.hub .cwait i,.hub .pips i.here:after{opacity:1;animation:none}.hub .cin,.hub .cbub.pop .cin{transition:none;animation:none;transform:none}.hub .ocard,.hub .ocard.show{transition:opacity .2s,visibility;transform:scale(1)}.hub .album,.hub .album.off{scale:1}.hub.card .bar,.hub .coins.bump,.hub .pips i.new{transition:none;animation:none}}.hub.calm .cwait i,.hub.calm .pips i.here:after{opacity:1;animation:none}.hub.calm .cin,.hub.calm .cbub.pop .cin{transition:none;animation:none;transform:none}.hub.calm .ocard,.hub.calm .ocard.show{transition:opacity .2s,visibility;transform:scale(1)}.hub.calm .album,.hub.calm .album.off{scale:1}.hub.calm.card .bar{transition:none}.hub.calm .k-spark{opacity:1;animation:none}.hub .banote{z-index:200;opacity:0;background:#281c1261;place-items:center;padding:16px;transition:opacity .25s;display:grid;position:fixed;inset:0}.hub .banote.show{opacity:1}.hub .banote .paper{width:min(340px,100%);max-height:86vh;font-family:var(--hand);color:#4a3826;background:#fffaf0 repeating-linear-gradient(#0000 0 27px,#96785029 27px 28px);border-left:2px solid #d6786e73;border-radius:6px;padding:22px 22px 18px 34px;font-size:19px;line-height:28px;transition:transform .3s;overflow-y:auto;transform:translateY(14px)rotate(-1deg);box-shadow:0 14px 34px #28190a52}.hub .banote.show .paper{transform:none}.hub .banote .kind{letter-spacing:.08em;text-transform:uppercase;color:#9a7f60;margin-bottom:6px;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:12px}.hub .banote p{margin:0 0 8px}.hub .banote .tip b{color:#b5603a}.hub .banote .sign{text-align:right;margin-top:4px}.hub .banote .box{color:#6b7f55;font-size:16px}.hub .banote .ok{width:100%;margin-top:14px;font-size:16px;display:flex}.hub .banote .ok.quiet{margin-top:12px}.explore{--ex-mint:#4fc08d;--ex-sky:#5aa9ee;z-index:12;color:var(--k-ink);font-family:var(--k-font);background:#d7dfc5;position:fixed;inset:0;overflow:hidden}.explore[hidden],.explore [hidden]{display:none!important}:where(.explore button){font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;border:0}.explore button:focus-visible{outline-offset:3px;outline:3px solid #2f7fd8}.explore-frame{width:100%;height:100%;position:relative}.explore-hud{padding:calc(12px + env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 5px max(12px,env(safe-area-inset-left));z-index:1;pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:absolute;inset:0 0 auto}.explore-day{background:var(--k-cream);font:800 26px/1.05 var(--k-font);color:var(--k-ink);padding:6px 14px 8px}.explore-day small{font:600 14px/1.25 var(--k-font);color:#a77a55;display:block}.explore-coins{margin-top:10px;margin-right:6px}.explore-coins .ex-xun{font-variant-numeric:tabular-nums}.explore-coins small{font:700 14px/1 var(--k-font);color:var(--k-ink2);margin-left:5px}.explore-world{position:absolute;inset:0}.explore-art{object-fit:fill;width:100%;height:100%;position:absolute;inset:0}.explore-life{pointer-events:none;visibility:hidden;position:absolute;inset:0;overflow:hidden}.explore-world.ready .explore-life{visibility:visible}.explore-life-point{width:0;height:0;position:absolute}.explore-ribbon{clip-path:polygon(0 0,100% 0,85% 100%,45% 82%,0 100%);transform-origin:50% 0;background:#ce8292;width:4px;height:18px;animation:4.8s ease-in-out infinite explore-ribbon-sway;display:block}.explore-ribbon-gold{background:#dcb76a;height:15px;animation-duration:5.7s;animation-delay:-2s}.explore-butterfly{width:16px;height:12px;animation:18s ease-in-out infinite explore-butterfly-visit;position:absolute}.butterfly-second{animation-duration:23s;animation-delay:-9s}.explore-wing{background:#f2c675;border-radius:75% 55% 70% 40%;width:8px;height:10px;animation:1.1s ease-in-out infinite alternate explore-wingbeat;position:absolute;top:0}.wing-left{transform-origin:100%;left:0}.wing-right{transform-origin:0;animation-delay:-.18s;left:8px}.butterfly-second .explore-wing{background:#e1b6d9;animation-duration:1.4s}.explore-butterfly-body{background:#776b51;border-radius:50%;width:2px;height:8px;position:absolute;top:2px;left:7px}.explore-sprig{position:absolute;bottom:0;left:-12px;overflow:visible}.explore-sprig-stems{transform-origin:14px 33px;animation:5.8s ease-in-out infinite explore-sprig-sway}@keyframes explore-ribbon-sway{0%,to{transform:rotate(-7deg)}45%{transform:rotate(12deg)}70%{transform:rotate(2deg)}}@keyframes explore-sprig-sway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(5deg)}}@keyframes explore-wingbeat{0%{transform:scaleX(.28)rotate(-9deg)}to{transform:scaleX(1)rotate(8deg)}}@keyframes explore-butterfly-visit{0%,18%,to{transform:translate(0,0)rotate(-8deg)}35%{transform:translate(19px,-23px)rotate(14deg)}55%{transform:translate(-12px,-34px)rotate(-16deg)}78%{transform:translate(-22px,-9px)rotate(5deg)}90%{transform:translate(0,0)rotate(-8deg)}}.explore.breeze-paused .explore-life *{animation-play-state:paused!important}.explore-breeze{pointer-events:none;position:absolute;inset:0;overflow:hidden}.explore-petal{left:-22px;top:var(--drift-y);opacity:0;animation:explore-drift var(--drift-time) var(--drift-delay) linear infinite;position:absolute}.explore-petal i{background:var(--petal-color);border-radius:80% 15% 75% 25%;width:9px;height:6px;animation:5s ease-in-out infinite alternate explore-flutter;display:block}.explore-petal:nth-child(2n) i{width:6px;height:4px;animation-duration:7s}.explore-air{opacity:0;border-top:1px solid #fff8e6;border-radius:50%;width:100px;height:24px;animation:26s linear infinite explore-drift;position:absolute;left:-120px}.explore-air-one{animation-delay:-9s;top:36%}.explore-air-two{width:70px;animation-duration:31s;animation-delay:-21s;top:72%}.explore:not(:has(.explore-world.ready)) .explore-breeze{visibility:hidden}.explore.breeze-paused .explore-breeze *{animation-play-state:paused!important}@keyframes explore-drift{0%{opacity:0;transform:translateY(18px)}15%{opacity:.48}45%{opacity:.55;transform:translate(48vw,-16px)}75%{opacity:.38}to{opacity:0;transform:translate(calc(100vw + 145px),-65px)}}@keyframes explore-flutter{0%{transform:rotate(-25deg)scaleX(.7)}to{transform:rotate(150deg)scaleX(1)}}.explore-locations{position:absolute;inset:0}.explore-place{--pc:var(--k-pink);background:var(--pc);width:max-content;max-width:min(250px,100vw - 20px);min-height:52px;color:var(--k-ink);text-align:center;box-shadow:0 5px 0 var(--k-ol);-webkit-tap-highlight-color:transparent;border-radius:20px;padding:6px 14px 7px;transition:transform 80ms,box-shadow 80ms,filter .15s;position:absolute;transform:translate(-50%,-100%);border:var(--k-olw) solid var(--k-ol)!important;font:800 19px/1.1 var(--k-font)!important}.explore-place[data-place=flowers]{--pc:var(--k-pink)}.explore-place[data-place=na]{--pc:var(--k-mint)}.explore-place[data-place=tu]{--pc:var(--k-sky)}.explore-place small{font:600 13px/1.25 var(--k-font);color:var(--k-ink2);margin-top:2px;display:block}.explore-place:after{content:"";background:var(--pc);border:var(--k-olw) solid var(--k-ol);border-top:0;border-left:0;border-bottom-right-radius:4px;width:14px;height:14px;position:absolute;bottom:-10px;left:calc(50% - 8px);transform:rotate(45deg)}.explore-place:active{box-shadow:0 2px 0 var(--k-ol);transform:translate(-50%,calc(3px - 100%))}.explore-loading{background:var(--k-cream);max-width:85%;font:700 14px/1.4 var(--k-font);text-align:center;padding:10px 14px;position:absolute;top:45%;left:50%;transform:translate(-50%)}.explore-footer{padding:12px max(14px,env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));z-index:1;pointer-events:none;align-items:center;gap:12px;display:flex;position:absolute;inset:auto 0 0}.explore-footer button{pointer-events:auto;flex-shrink:0}.explore-leave,.explore-map-back{min-height:50px;padding:0 18px;font-size:17px!important}.explore-footer p{min-width:0;font:700 14px/1.25 var(--k-font);background:var(--k-white);border-radius:16px;flex:auto;margin:0;padding:6px 11px 7px}.explore-footer small{font:600 13px/1.3 var(--k-font);color:var(--k-ink2);margin-top:1px;display:block}.explore-detail{z-index:3;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:calc(12px + env(safe-area-inset-top)) 12px calc(12px + env(safe-area-inset-bottom));background:#5b3a2940;grid-template-columns:minmax(0,1fr);place-items:center;display:grid;position:absolute;inset:0}.explore-card{--rib:var(--k-coral);flex-direction:column;width:min(100%,368px);min-width:0;min-height:0;max-height:calc(100% - 30px);margin-top:30px;padding:36px 14px 16px;display:flex;position:relative}.explore-card[data-sheet=na]{--rib:var(--ex-mint)}.explore-card[data-sheet=tu]{--rib:var(--ex-sky)}.ex-rib{z-index:2;position:absolute;top:-28px;left:-8px;right:-8px}.ex-rib>span{background:var(--rib);white-space:nowrap;font-size:23px}.explore-card-head{justify-content:space-between;align-items:center;gap:10px;padding:0 4px 8px;display:flex}.explore-card-head .explore-coins{flex-shrink:0;height:38px;margin:0 4px 0 8px;padding-left:40px;font-size:20px}.explore-card-head .k-bigcoin{width:42px;height:42px;top:-5px}.explore-eyebrow{font:700 13px/1.2 var(--k-font);letter-spacing:.4px;color:#a77a55;display:block}.explore-kind{color:var(--k-ink2);font:700 15px/1.25 var(--k-font);margin:2px 0 0}.explore-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:120px;font:700 14px/1.3 var(--k-font);flex:auto;margin:0 -6px;padding:4px 6px 10px;overflow-y:auto}.explore-body:focus{outline:none}.explore-map-back{flex-shrink:0;width:100%;margin-top:10px}.explore-place.locked{--pc:#e9e0cf;color:#8f7a64;filter:saturate(.35);cursor:default}.explore-place.locked small{color:#8f7a64}.explore-place.fresh:before{content:"Mới";background:var(--k-red);color:#fff;font:800 13px/20px var(--k-font);border:2.5px solid var(--k-ol);box-shadow:0 3px 0 var(--k-ol);border-radius:12px;padding:0 9px;position:absolute;top:-13px;right:-8px}.explore-toast{width:max-content;left:50%;bottom:calc(92px + env(safe-area-inset-bottom));opacity:0;pointer-events:none;z-index:6;max-width:min(88%,340px);transition:opacity .2s,transform .2s;position:absolute;transform:translate(-50%,8px)}.explore-toast.show{opacity:1;transform:translate(-50%)}.explore:has(.explore-detail:not([hidden])) .explore-toast{bottom:calc(84px + env(safe-area-inset-bottom))}.ex-note{font:600 14px/1.45 var(--k-font);color:var(--k-ink2);margin:2px 2px 10px}.ex-foot{font:600 13px/1.5 var(--k-font);color:#a77a55;border-top:2px dashed var(--k-mute);margin:12px 2px 2px;padding-top:10px}.ex-sub{font:800 20px/1.2 var(--k-font);color:var(--k-ink2);margin:16px 2px 4px}.ex-tabs{z-index:1;background:var(--k-cream);margin:0 -2px;padding:4px 2px 10px;position:sticky;top:-4px}.ex-tab{white-space:nowrap;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;min-width:0;min-height:48px;padding:2px 6px;line-height:1.15;display:flex}.ex-tab small{margin:0;font-size:13px}.ex-tab.on{background:var(--k-mint);color:var(--k-ink);box-shadow:0 3px 0 var(--k-ol)}.ex-group h3{font:800 18px/1.2 var(--k-font);color:var(--k-ink2);margin:6px 2px 8px}.ex-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px;padding-bottom:2px;display:grid}.ex-tile{flex-direction:column;align-items:center;gap:2px;min-width:0;padding:8px 3px 6px;display:flex}.ex-tile.own,.ex-good.sold{background:#f3ead7}.ex-thumb{width:54px;height:54px;display:block}.ex-name{font:700 14px/1.2 var(--k-font);text-align:center;overflow-wrap:anywhere}.ex-tag{border:2.5px solid var(--k-ol);background:var(--k-mute);color:var(--k-ink);font:800 13px/22px var(--k-font);text-align:center;border-radius:12px;padding:0 10px;display:inline-block}.ex-tag.own{color:var(--k-ink2);background:#e6dcc7}.ex-tag.house{background:var(--k-lilac)}.ex-buy:not(.k-btn){-webkit-tap-highlight-color:transparent;background:0 0;justify-content:center;align-items:center;width:100%;min-height:44px;margin-top:auto;padding:0;display:flex}.ex-buy:not(.k-btn) .ex-chip{transition:transform 80ms,box-shadow 80ms}.ex-buy:not(.k-btn):active .ex-chip{box-shadow:0 0 0 var(--k-ol);transform:translateY(3px)}.ex-chip{font-size:15px;line-height:24px}.ex-chip b{font-weight:800}.ex-chip .k-coin{flex:none}.ex-buy.poor .ex-chip{background:var(--k-mute);color:var(--k-ink)}.ex-tile .ex-chip b{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ex-buy.plant{width:auto;min-width:84px;min-height:46px;margin:0;padding:0 16px;font-size:16px}.ex-buy.plant.poor{background:var(--k-mute);color:var(--k-ink);text-shadow:none}.ex-goods{grid-template-columns:repeat(2,1fr);gap:10px;padding-bottom:2px;display:grid}.ex-good{flex-direction:column;align-items:center;gap:3px;min-width:0;padding:9px 8px 6px;display:flex}.ex-pic{place-items:center;width:100%;height:78px;display:grid}.ex-pic img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:78px}.ex-pic canvas{width:72px;height:72px}.ex-good .ex-name{font-size:15px}.ex-kind{font:600 13px/1.2 var(--k-font);color:var(--k-ink2)}.ex-good .ex-tag{margin:6px 0 4px}.ex-empty{text-align:center;background:var(--k-butter);padding:22px 14px}.ex-empty b{font:800 22px/1.2 var(--k-font);margin-bottom:4px;display:block}.ex-empty p{font:600 14px/1.5 var(--k-font);color:var(--k-ink2);margin:0}.ex-plots{grid-template-columns:1fr 1fr;gap:10px;padding-bottom:4px;display:grid}.ex-plot{text-align:center;background:#fff3de;border-style:dashed;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:8px 6px 10px;display:flex}.ex-plot.grow{background:var(--k-mint);border-style:solid}.ex-plot.bloom{background:var(--k-butter);border-style:solid}.ex-plot b{font:800 15px/1.25 var(--k-font)}.ex-plot small{font:600 13px/1.3 var(--k-font);color:var(--k-ink2)}.ex-plant{place-items:end center;height:58px;display:grid}.ex-plant svg{display:block}.ex-plot.grow .ex-plant svg{transform-origin:50% 100%;animation:4.2s ease-in-out infinite ex-sway}.ex-pot{margin-top:-8px;line-height:0}.ex-plot.bloom .ex-plant{z-index:1;height:96px;position:relative}.ex-plot.bloom .ex-plant canvas{display:block;transform:translateY(4px)}.ex-seeds{flex-direction:column;gap:9px;padding-bottom:3px;display:flex}.ex-seed{align-items:center;gap:10px;padding:6px 10px 8px 8px;display:flex}.ex-seed .ex-name{text-align:left;flex:1;font-size:15px}.ex-celebrate{background:var(--k-butter);text-align:center;flex-direction:column;align-items:center;gap:3px;margin-bottom:12px;padding:16px 12px 14px;display:flex;position:relative;overflow:hidden}.ex-celebrate b{font:800 24px/1.2 var(--k-font)}.ex-celebrate p{font:600 14px/1.45 var(--k-font);margin:0 0 6px}.ex-celebrate .k-spark{font-size:20px;line-height:1}.ex-celebrate .k-spark:first-of-type{top:12px;left:14px}.ex-celebrate .k-spark:nth-of-type(2){font-size:26px;animation-delay:-.6s;top:18px;right:16px}.ex-celebrate .k-spark:nth-of-type(3){font-size:16px;animation-delay:-1.1s;bottom:60px;left:22px}.ex-bloomrow{justify-content:center;gap:10px;display:flex}.ex-celebrate .ex-thumb{width:64px;height:64px;animation:.6s cubic-bezier(.3,1.5,.5,1) both ex-pop}.ex-ok{min-height:46px;padding:0 22px;font-size:17px!important}.ex-burst{pointer-events:none;width:0;height:0;position:absolute;top:44px;left:50%}.ex-burst i{opacity:0;background:#ff8fa8;border-radius:80% 15% 75% 25%;width:8px;height:6px;animation:1.3s ease-out .15s both ex-petal;position:absolute;top:-3px;left:-4px}.ex-burst i:nth-child(odd){background:#ffb347}.ex-burst i:nth-child(3n){background:#b59cff}.ex-burst i:first-child{--dx:-92px;--dy:-34px}.ex-burst i:nth-child(2){--dx:-60px;--dy:-52px}.ex-burst i:nth-child(3){--dx:-26px;--dy:-60px}.ex-burst i:nth-child(4){--dx:26px;--dy:-60px}.ex-burst i:nth-child(5){--dx:60px;--dy:-52px}.ex-burst i:nth-child(6){--dx:92px;--dy:-34px}.ex-burst i:nth-child(7){--dx:-76px;--dy:-8px}.ex-burst i:nth-child(8){--dx:76px;--dy:-8px}@keyframes ex-petal{0%{opacity:0;transform:translate(0)rotate(0)scale(.6)}20%{opacity:.95}to{opacity:0;transform:translate(var(--dx),calc(var(--dy) + 44px)) rotate(200deg) scale(1)}}@keyframes ex-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes ex-sway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@media (max-width:380px){.explore-card{padding-left:11px;padding-right:11px}.ex-rib>span{padding:0 26px;font-size:21px}.explore-footer p{font-size:13px}.explore-leave{padding:0 14px}}@media (max-width:350px){.explore-place{padding:6px 10px 7px;font-size:17px!important}.explore-hud{padding-left:10px;padding-right:10px}.explore-footer{gap:10px;padding-left:10px;padding-right:10px}}@media (prefers-reduced-motion:reduce){.ex-burst{display:none}.ex-celebrate .ex-thumb,.ex-plot.grow .ex-plant svg{animation:none}.explore-toast,.explore-place,.ex-buy .ex-chip{transition:none}.explore-breeze{display:none}.explore-breeze *,.explore-life *{animation:none!important}.explore-butterfly{display:none}}
