@font-face{font-family:Pixelify Sans;src:url(/assets/ui/fonts/PixelifySans.ttf)format("truetype");font-display:block}@font-face{font-family:Pixelify Sans;src:url(/assets/ui/fonts/fusion-pixel/FusionPixel-12px-proportional-zh_hans.woff2)format("woff2");font-display:block;unicode-range:U+400-52F,U+1C8?,U+2DE0-2DFF,U+A640-A69F,U+1A0-1A1,U+1AF-1B0,U+1EA0-1EF9,U+2E80-2FFF,U+3000-303F,U+3040-30FF,U+3100-312F,U+31A0-31FF,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FE30-FE4F,U+FF00-FFEF}@font-face{font-family:Pixelify Sans;src:url(/assets/ui/fonts/CoinIslandDigits-Regular.woff2)format("woff2");font-display:block;unicode-range:U+30-39}:root{--ink:#46261a;--ink-soft:#7a4b33;--cream:#fff0c8;--paper:#f5ddb0;--gold:#ffd75e;--sys:#ffe066;--me:#9fe7ff;--danger:#c0412b;--shade:#140c088c;--sat:env(safe-area-inset-top,0px);--sar:env(safe-area-inset-right,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--hotbar-h:90px;--kb:0px;--tap:44px}#ui{pointer-events:none;color:var(--ink);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;z-index:10;font-family:Pixelify Sans,PingFang SC,Microsoft YaHei,Noto Sans CJK SC,ui-monospace,monospace;font-size:17px;line-height:1.25;position:fixed;inset:0}#ui *{box-sizing:border-box}#ui .hidden{display:none!important}#ui button,#ui input{font:inherit;color:inherit}.px-panel{color:var(--ink);image-rendering:pixelated;border:44px solid #0000;border-image:url(/assets/ui/kit/panel_9slice.png) 44 fill/44px;padding:4px 6px}.px-btn{min-height:var(--tap);min-width:var(--tap);image-rendering:pixelated;text-shadow:0 2px #280a05cc;cursor:pointer;pointer-events:auto;white-space:nowrap;touch-action:manipulation;background:0 0;border:12px solid #0000;border-image:url(/assets/ui/kit/button_small.png) 12 fill/12px;justify-content:center;align-items:center;gap:6px;padding:2px 14px;font-size:18px;display:inline-flex;color:var(--cream)!important}.px-btn:active,.px-btn.down{border-image-source:url(/assets/ui/kit/button_small_pressed.png)}.px-btn.big{border-width:16px;border-image:url(/assets/ui/kit/button_big.png) 16 fill/16px;min-height:60px;padding:0 28px;font-size:24px}.px-btn.big:active{border-image-source:url(/assets/ui/kit/button_big_pressed.png)}.px-btn:disabled{filter:grayscale(.7)brightness(.8);cursor:default}.px-close{width:var(--tap);height:var(--tap);image-rendering:pixelated;cursor:pointer;pointer-events:auto;background:url(/assets/ui/kit/close.png) 50%/contain no-repeat;border:0;flex:none}.px-close:active{background-image:url(/assets/ui/kit/close_pressed.png)}.screen{pointer-events:auto;padding:calc(16px + var(--sat)) calc(16px + var(--sar)) calc(16px + var(--sab)) calc(16px + var(--sal));background:radial-gradient(#fff8e126,#fff4d673);justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:auto}.title-box{text-align:center;flex-direction:column;align-items:center;gap:14px;display:flex}.title-logo{object-fit:contain;width:min(440px,80vw);max-height:42vh;image-rendering:pixelated;filter:drop-shadow(0 6px #28140a59)}.title-tag{color:var(--cream);text-shadow:0 2px 0 var(--ink), 0 0 6px #46261a99;margin:0 0 6px;font-size:22px}.title-err,.form-err{color:var(--danger);max-width:420px;min-height:1.3em;font-size:16px}.title-err{background:#fff0c8eb;border-radius:4px;padding:4px 10px}.title-err:empty{display:none}.lang-switch{top:calc(10px + var(--sat));right:calc(10px + var(--sar));gap:6px;display:flex;position:absolute}.lang-switch .px-btn{padding:0 8px;font-size:16px}.lang-switch .px-btn.on{filter:brightness(1.25)saturate(1.2)}.lang-pick{white-space:nowrap;gap:6px;max-width:min(240px,60vw);position:relative}.lang-pick-cur{text-overflow:ellipsis;min-width:0;overflow:hidden}.lang-pick-arrow{opacity:.85;flex:none}.lang-pick-sel{opacity:0;cursor:pointer;pointer-events:auto;appearance:none;border:0;width:calc(100% + 24px);height:calc(100% + 24px);margin:0;font-size:16px;position:absolute;inset:-12px}.lang-pick:focus-within{filter:brightness(1.2)}.set-row .lang-pick{flex:0 auto;min-width:0}.create{width:min(760px,100%);max-height:100%;color:var(--ink);grid-template-columns:auto minmax(0,1fr);gap:12px 24px;padding:4px 12px 8px;display:grid;overflow:auto}.create h2{text-align:center;color:var(--ink);grid-column:1/-1;margin:0;font-size:26px;font-weight:400}.preview-col{flex-direction:column;align-items:center;gap:10px;min-width:0;display:flex}.preview-box{border:4px solid var(--ink);touch-action:none;cursor:grab;background:radial-gradient(at 50% 70%,#fff6dc,#f0d49c 75%);justify-content:center;align-items:center;width:clamp(168px,26vw,300px);height:clamp(160px,40vh,390px);display:flex;box-shadow:inset 0 0 0 3px #c9935a,inset 0 6px 0 3px #46261a26}.preview-canvas{image-rendering:pixelated;pointer-events:none;display:block}.rot-row{gap:12px;display:flex}#ui .rot-row .px-btn.rot{min-width:56px;min-height:var(--tap);font-size:24px;line-height:1}.form-col{flex-direction:column;gap:8px;min-width:0;display:flex}.field-label{color:var(--ink);margin-top:2px;font-size:19px}.create .hint{color:var(--ink-soft);font-size:14px}.create .form-err{color:var(--danger);min-height:1.2em;font-size:15px}.name-input{width:100%;height:52px;image-rendering:pixelated;pointer-events:auto;-webkit-user-select:text;user-select:text;background:0 0;border:14px solid #0000;border-image:url(/assets/ui/chat/input.png) 14 fill/14px;outline:none;padding:0 6px;font-size:20px!important}.body-pick{gap:6px;display:flex}.body-pick .px-btn{flex:1;min-width:0}.body-pick .px-btn.on{outline:3px solid var(--gold);outline-offset:1px}.swatches{flex-wrap:wrap;gap:6px;display:flex}.swatch{width:var(--tap);height:var(--tap);border:3px solid var(--ink);cursor:pointer;pointer-events:auto;padding:0;box-shadow:inset 0 -4px #00000040}.swatch.on{outline:3px solid var(--gold);outline-offset:1px;transform:translateY(-2px)}#ui .name-input{color:var(--ink)}.hats{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}#ui .hat{font-size:11px}.hat{border:3px solid var(--ink);cursor:pointer;pointer-events:auto;background:linear-gradient(#fff2d2,#ecd09a);flex-direction:column;justify-content:space-between;align-items:center;gap:4px;min-width:0;min-height:70px;padding:3px 2px;font-size:11px;line-height:1.1;display:flex;position:relative;box-shadow:inset 0 -4px #46261a2e;color:var(--ink)!important}.hat.on{outline:3px solid var(--gold);outline-offset:1px;background:linear-gradient(#fffbe8,#f5dca8)}.hat .hat-img{width:40px;height:40px;image-rendering:pixelated;flex:none}.hat .hat-name{text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;display:-webkit-box;overflow:hidden}.hat.locked{cursor:not-allowed;background:linear-gradient(#d8ccb4,#b9aa8c)}.hat.locked .hat-img{filter:grayscale()brightness(.55)contrast(.8);opacity:.7}.hat.locked .hat-name{color:#5e4a3c}.hat .lock{font-size:14px;position:absolute;top:3px;right:3px}.create-actions{z-index:2;background:linear-gradient(#f5ddb000, var(--paper) 30%);flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;gap:10px;padding:8px 0;display:flex;position:sticky;bottom:-8px}@media (width<=620px){.create{grid-template-columns:minmax(0,1fr);gap:10px}.create h2{font-size:22px}.preview-col{flex-direction:row;justify-content:center}.preview-box{width:min(176px,46vw);height:min(208px,27vh)}.rot-row{flex-direction:column}.hats{grid-template-columns:repeat(3,minmax(0,1fr))}.hat{min-height:72px}.hat .hat-img{width:32px;height:32px}}@media (height<=480px) and (orientation:landscape){.title-logo{max-height:34vh}.create{gap:8px 16px}.create h2{font-size:20px}.preview-box{width:140px;height:min(150px,38vh)}.hats{grid-template-columns:repeat(7,minmax(0,1fr))}.hat{min-height:64px}.hat .hat-img{width:32px;height:32px}}.chat{left:calc(10px + var(--sal));bottom:calc(var(--hotbar-h) + 10px + var(--sab));width:min(420px, calc(100vw - 20px - var(--sal) - var(--sar)));opacity:.7;flex-direction:column;transition:opacity .6s,bottom .15s;display:flex;position:absolute}.chat.flash{opacity:1;transition:opacity .1s}.chat.open{opacity:1;pointer-events:auto;bottom:calc(max(var(--hotbar-h) + 10px + var(--sab), var(--kb) + 8px))}.chat-frame{image-rendering:pixelated;border:18px solid #0000;border-image:url(/assets/ui/chat/panel.png) 40 fill/18px;flex-direction:column;gap:4px;display:flex}.chat:not(.open) .chat-frame{background:0 0;border-image:;padding:18px}.chat-tabs{gap:4px;display:flex}.chat:not(.open) .chat-tabs,.chat:not(.open) .chat-row{display:none}.chat-tab{cursor:pointer;pointer-events:auto;background:#46261a2e;border:0;min-height:28px;padding:2px 10px;font-size:16px;color:var(--ink-soft)!important}.chat-tab.on{background:#46261abf;color:var(--cream)!important}.chat-tab:disabled{opacity:.45;cursor:default}.chat-log{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;flex-direction:column;gap:1px;max-height:128px;font-size:17px;display:flex;overflow-y:hidden}.chat.open .chat-log{overscroll-behavior:contain;touch-action:pan-y;max-height:min(220px,34vh);overflow-y:auto}.chat:not(.open) .chat-log{color:var(--cream);text-shadow:0 1px #000,1px 0 #000,-1px 0 #000,0 -1px #000;-webkit-mask-image:linear-gradient(#0000,#000 30%);mask-image:linear-gradient(#0000,#000 30%)}.chat-line{overflow-wrap:anywhere}.chat-line .who{color:#2b6a8a}.chat-line.me .who{color:#1f7a3a}.chat:not(.open) .chat-line .who{color:var(--me)}.chat:not(.open) .chat-line.me .who{color:#b8ff9a}.chat-line.sys{color:#a07300}.chat:not(.open) .chat-line.sys{color:var(--sys)}.chat-row{align-items:stretch;gap:6px;display:flex}.chat-input{min-width:0;height:46px;image-rendering:pixelated;-webkit-user-select:text;user-select:text;pointer-events:auto;background:0 0;border:12px solid #0000;border-image:url(/assets/ui/chat/input.png) 14 fill/12px;outline:none;flex:1;padding:0 4px;font-size:16px!important}.chat-send{width:52px;height:46px;image-rendering:pixelated;cursor:pointer;pointer-events:auto;background:url(/assets/ui/chat/send.png) 50%/contain no-repeat;border:0;flex:none;font-size:0!important}.chat-hint{color:var(--cream);text-shadow:0 1px #000;padding-left:18px;font-size:15px}.chat.open .chat-hint,body.touch .chat-hint{display:none}.side-btns{top:calc(var(--hud-top,110px) + var(--sat));right:calc(8px + var(--sar));flex-direction:column;gap:8px;display:flex;position:absolute}.side-btns .px-btn{width:64px;padding:0 4px;font-size:15px}.modal-wrap{padding:calc(8px + var(--sat)) calc(8px + var(--sar)) calc(8px + var(--sab)) calc(8px + var(--sal));pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.modal-wrap.dim{background:var(--shade);pointer-events:auto}.window{pointer-events:auto;overscroll-behavior:contain;flex-direction:column;gap:10px;max-width:100%;max-height:100%;display:flex;position:relative;overflow:auto}.win-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.win-head h3{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;margin:0;font-size:24px;font-weight:400;overflow:hidden}html:is([lang|=de],[lang|=ru],[lang|=fr],[lang|=es],[lang|=pt],[lang|=id],[lang|=vi]) .win-head h3{font-size:21px}.px-btn{overflow-wrap:anywhere}.inv-grid{grid-template-columns:repeat(var(--cols,8), var(--slot,58px));touch-action:none;gap:4px;display:grid}.inv-sep{border-top:2px dashed #46261a66;grid-column:1/-1;height:4px;margin-top:2px}.inv-label{color:var(--ink-soft);font-size:16px}.slot{width:var(--slot,58px);height:var(--slot,58px);image-rendering:pixelated;cursor:pointer;pointer-events:auto;border:8px solid #0000;border-image:url(/assets/ui/kit/slot.png) 12 fill/8px;justify-content:center;align-items:center;display:flex;position:relative}.slot.hot:after{content:attr(data-key);color:var(--cream);text-shadow:0 1px #000;font-size:14px;position:absolute;top:-6px;left:-4px}.slot.sel,.slot.drop{border-image-source:url(/assets/ui/kit/slot_selected.png)}.slot.picked{outline:3px solid var(--gold);outline-offset:-2px}.slot.dragging .icon{opacity:.3}.icon{width:32px;height:32px;image-rendering:pixelated;transform:scale(var(--icon-scale,1.25));pointer-events:none;background-repeat:no-repeat}.qty{color:var(--cream);text-shadow:0 1px #000,1px 0 #000,-1px 0 #000,0 -1px #000;pointer-events:none;font-size:16px;position:absolute;bottom:-6px;right:-4px}.ghost{z-index:30;pointer-events:none;position:fixed;transform:translate(-50%,-50%)scale(1.6)}.inv-hint{color:var(--ink-soft);max-width:100%;font-size:15px}.tip{z-index:40;pointer-events:none;color:var(--cream);background:#28160ef0;border:2px solid #a8763f;max-width:min(300px,100vw - 16px);padding:8px 12px;font-size:18px;line-height:1.25;position:fixed;box-shadow:0 3px #00000073}.tip b{color:var(--gold);font-weight:400;display:block}.tip small{color:#e0c79a;font-size:15px;display:block}.tip .tip-desc,.info-card .tip-desc{color:var(--cream);margin:2px 0 4px;font-size:16px;display:block}.tip .tip-sell,.info-card .tip-sell{color:var(--gold)}.info-card{min-width:220px;max-width:min(340px,100vw - 24px);color:var(--cream);z-index:5;background:#28160ef5;border:2px solid #a8763f;flex-direction:column;gap:6px;padding:8px 10px;font-size:17px;display:flex;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.info-card b{color:var(--gold);font-weight:400}.info-card .row{justify-content:flex-end;gap:8px;display:flex}.settings{width:min(420px,100%)}.set-row{min-height:var(--tap);justify-content:space-between;align-items:center;gap:12px;display:flex}.set-row>span{font-size:18px}.seg{gap:6px;display:flex}.set-row.stack{flex-direction:column;align-items:stretch;gap:6px}.set-row.stack .seg>.px-btn{flex:1 1 0;min-width:0;padding-left:4px;padding-right:4px}.seg .px-btn.on{filter:brightness(1.3)saturate(1.2)}.set-note{opacity:.8;font-size:13px;line-height:1.3}.slider{flex:1;align-items:center;gap:8px;max-width:220px;display:flex}.slider input{height:var(--tap);accent-color:#a8582a;pointer-events:auto;touch-action:pan-x;flex:1}.slider output{text-align:right;width:3ch}.set-actions{flex-direction:column;gap:8px;margin-top:6px;display:flex}.touch-zone{width:50%;top:30%;left:0;bottom:var(--hotbar-real,var(--hotbar-h));pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;position:absolute}.touch-zone.touch-zone-low{height:var(--hotbar-real,var(--hotbar-h));width:clamp(0px, calc(var(--hotbar-cx,50vw) - var(--hotbar-w,100vw) / 2 - 4px), 50%);top:auto;bottom:0}.stick-layer{pointer-events:none;width:50%;position:absolute;top:30%;bottom:0;left:0}body.touch #ui .qt-box:not(.min),body.touch #ui .hp-tips.touch{pointer-events:none}body.touch #ui .qt-box:not(.min) .qt-tog,body.touch #ui .hp-tips.touch button{pointer-events:auto}.stick-base{background:#fff0c829;border:3px solid #fff0c88c;border-radius:50%;display:none;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #46261a59}.stick-base.on{display:block}.stick-knob{border:3px solid var(--ink);background:#fff0c8bf;border-radius:50%;width:46%;height:46%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.stick-run{left:50%;top:calc(50% + var(--sprint-y,-60px));color:#fff0c8e6;text-align:center;opacity:0;pointer-events:none;background:#46261a59;border:2px solid #fff0c899;border-radius:50%;width:30px;height:30px;margin:-15px 0 0 -15px;font:700 20px/24px sans-serif;transition:opacity .12s;position:absolute;transform:rotate(-90deg)}.stick-base.hint .stick-run{opacity:.75}.stick-base.sprint .stick-run{opacity:1;background:var(--gold);border-color:var(--ink);color:var(--ink)}.stick-base.sprint{border-color:var(--gold)}.stick-base.sprint .stick-knob{background:var(--gold)}.touch-buttons{right:calc(14px + var(--sar));bottom:calc(var(--hotbar-h) + 12px + var(--sab));align-items:flex-end;gap:12px;display:flex;position:absolute}.touch-btn{border:3px solid var(--ink);pointer-events:auto;touch-action:none;background:#fff0c8d1;border-radius:50%;width:72px;height:72px;font-size:16px;box-shadow:0 4px #46261a99;color:var(--ink)!important}.touch-btn.down{transform:translateY(3px);box-shadow:0 1px #46261a99}.touch-run{width:56px;height:56px;font-size:15px}.touch-run.active{background:var(--gold)}.toast{left:50%;top:calc(30% + var(--sat));color:var(--cream);background:#28160ee6;padding:8px 14px;font-size:18px;transition:opacity .4s;position:absolute;transform:translate(-50%)}#ui button:focus,#ui button:focus-visible,#ui .px-btn:focus,#ui .px-btn:focus-visible,button:focus,button:focus-visible{outline:none!important}.inv-bagbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inv-bagslot{min-height:var(--slot,52px);font:inherit;color:var(--ink,#3a2418);cursor:pointer;background:0 0;border:8px solid #0000;border-image:url(/assets/ui/kit/slot.png) 12 fill/8px;align-items:center;gap:6px;padding:2px 10px 2px 2px;display:flex;position:relative}.inv-bagslot .icon{flex:none;width:32px;height:32px}.inv-bagslot.empty .icon{opacity:.35}.inv-bagslot.drop{filter:brightness(1.25);outline:2px solid #f0c040}.inv-bagtxt{white-space:nowrap;color:#f3e2bd;text-shadow:1px 1px #1d120b;font-size:15px}.inv-bagslot.empty .inv-bagtxt{color:#c9b28a}.inv-tabs{gap:4px;display:flex}.inv-tab{font:inherit;cursor:pointer;min-height:36px;color:var(--ink-soft,#6b4a32);background:#fff0d280;border:2px solid #46261a80;padding:6px 10px;font-size:15px}.inv-tab.on{color:#fff3d6;text-shadow:1px 1px #3a2418;background:#8a5a36;border-color:#4a2a18}.inv-sort{margin-left:auto}.inv-bagbar{gap:6px}.inv-cat{flex:auto;justify-content:center;gap:3px;display:flex}.inv-cat-b{box-sizing:border-box;width:var(--tab,44px);height:var(--tab,44px);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:6px solid #0000;border-image:url(/assets/ui/kit/slot.png) 12 fill/6px;flex:none;padding:0;position:relative}.inv-cat-ico{pointer-events:none;width:32px;height:32px;image-rendering:pixelated;background:url(/assets/ui/hud/inv_cats.png) 0 0/256px 32px no-repeat;margin:-16px 0 0 -16px;position:absolute;top:50%;left:50%}.inv-cat-b.none .inv-cat-ico{opacity:.38;filter:grayscale(.7)}.inv-cat-b:hover .inv-cat-ico{filter:brightness(1.15)}.inv-cat-b.on{filter:drop-shadow(0 0 3px #ffd75e)drop-shadow(0 0 1px #fff3c0);z-index:1;border-image-source:url(/assets/ui/kit/slot_selected.png)}.inv-cat-b.on .inv-cat-ico{transform:scale(1.08)}.inv-cat-b.on:after{content:"";pointer-events:none;border:5px solid #0000;border-top-color:#ffd75e;margin-left:-5px;position:absolute;bottom:-12px;left:50%}.inv-cat-n{pointer-events:none;text-align:center;color:#fff3d6;background:#6b3f24;border:1px solid #2a170c;border-radius:3px;min-width:14px;padding:0 2px;font:13px/14px CoinIslandDigits,monospace;position:absolute;bottom:-6px;right:-5px}.inv-cat-n:empty{display:none}.inv-cat-b.on .inv-cat-n{color:#2a170c;background:#b8862d}.inv-cat-b:focus-visible{outline:2px solid var(--gold);outline-offset:1px}.inv-sortb{margin-left:auto}.inv-bagbar.stack .inv-cat{flex-basis:100%;order:5}.inv-cat-tip{z-index:60;pointer-events:none;white-space:nowrap;position:fixed}.inv-main{touch-action:pan-y;scrollbar-width:thin;scrollbar-gutter:stable;align-content:start;padding-right:2px;overflow:hidden auto}.inv-main .inv-bagsep{height:auto;color:var(--ink-soft);padding-top:3px;font-size:14px}body.touch .inv-main{flex-shrink:0}.inv-cat-empty{text-align:center;color:var(--ink-soft);grid-column:1/-1;padding:18px 4px;font-size:16px}.inv-cat-empty.hidden{display:none}.inv-trash{box-sizing:border-box;width:var(--slot,52px);height:var(--slot,52px);cursor:pointer;image-rendering:pixelated;touch-action:none;background:0 0;border:8px solid #0000;border-image:url(/assets/ui/kit/slot.png) 12 fill/8px;flex:none;justify-content:center;align-items:center;padding:0;display:flex}.inv-trash-ico{pointer-events:none;width:32px;height:32px;image-rendering:pixelated;transform:scale(var(--icon-scale,1));transform-origin:50%;background:url(/assets/ui/hud/trash.png) 50%/32px 32px no-repeat}.inv-trash:hover .inv-trash-ico,.inv-trash.drop .inv-trash-ico,.inv-trash.armed .inv-trash-ico{background-image:url(/assets/ui/hud/trash_open.png)}.inv-trash.drop,.inv-trash.armed{border-image-source:url(/assets/ui/kit/slot_selected.png)}.inv-trash.drop{filter:drop-shadow(0 0 3px #e0502c)}.inv-trash:focus-visible{outline:2px solid var(--gold);outline-offset:1px}.inv-status{color:#f3e2bd;background:#3a2418e6;border:1px solid #8a5a36;margin:4px 0;padding:4px 8px;font-size:15px}.inv-status.warn{color:#ffb09a}
