:root{--night:#130f1d;--panel:#1c1629;--line:#352b4e;--ink:#efe9f8;--muted:#aa9fc6;--amber:#f2a24e;--teal:#58c2c9;--lilac:#c3a1ef;--box:#0e0c22f0;--f-display:"Silkscreen","Courier New",monospace;--f-pixel:"Pixelify Sans","Trebuchet MS",sans-serif;--f-body:"Atkinson Hyperlegible",system-ui,-apple-system,sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%}body{color:var(--ink);font-family:var(--f-body);background:#000;margin:0;font-size:15px;line-height:1.5;overflow:hidden}.wrap{height:100dvh;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.stage{aspect-ratio:256/224;background:#000;outline:none;width:min(100vw,114.286dvh);position:relative;overflow:hidden;container-type:inline-size}.stage.aim{cursor:none}.stage.fade:after{content:"";pointer-events:none;z-index:3;background:#000;animation:.55s ease-out forwards fadein;position:absolute;inset:0}@keyframes fadein{0%{opacity:1}to{opacity:0}}.stage.aim .start{cursor:pointer}.status{font-family:var(--f-pixel);background:var(--box);color:#f4f0fb;pointer-events:none;border:2px solid #ece6f5b3;align-items:center;gap:.5em;padding:.3em .7em;font-size:clamp(10px,2.4cqw,15px);display:flex;position:absolute;top:3.5%;right:3.5%}.status:before{content:"";background:var(--amber);width:.6em;height:.6em}.status[data-state=offline]:before{background:#e0675a}.status[data-state=local]:before{background:var(--muted)}.btn:focus-visible{outline:2px solid var(--amber);outline-offset:2px}canvas{width:100%;height:100%;image-rendering:crisp-edges;image-rendering:pixelated;display:block}.roomname{white-space:nowrap;font-family:var(--f-display);letter-spacing:.04em;background:var(--box);color:#f4f0fb;opacity:0;pointer-events:none;border:2px solid #ece6f5b3;padding:.35em .75em;font-size:clamp(10px,2.8cqw,19px);transition:opacity .45s;position:absolute;top:3.5%;left:50%;translate:-50%}.roomname.show{opacity:1}.dialog{background:var(--box);min-height:25%;font-family:var(--f-pixel);color:#f6f2fc;border:3px solid #ece6f5;border-radius:4px;padding:2.4cqw 3.2cqw 3.2cqw;font-size:clamp(12px,3.5cqw,25px);line-height:1.4;position:absolute;bottom:4.5%;left:5%;right:5%;box-shadow:inset 0 0 0 2px #4d4380}.dialog p{max-width:60ch;margin:0}.dialog .who{color:#9fe0b0;margin-bottom:.2em;font-weight:600;display:block}.more{color:var(--amber);font-size:.8em;animation:.8s steps(2,end) infinite blink;position:absolute;bottom:1.6cqw;right:2.6cqw}.start{cursor:pointer;background:#0a081280;place-items:center;display:grid;position:absolute;inset:0}.startcard{background:var(--box);text-align:center;border:3px solid #ece6f5;flex-direction:column;align-items:center;gap:1.6cqw;max-width:82%;padding:4.5cqw 6cqw;display:flex;box-shadow:inset 0 0 0 2px #4d4380}.startlogo{width:clamp(160px,52cqw,440px);height:auto;image-rendering:pixelated;display:block}.startcard span{font-family:var(--f-pixel);color:#f6f2fc;font-size:clamp(11px,3cqw,19px)}.startcard em{font-style:normal;font-family:var(--f-pixel);color:var(--muted);font-size:clamp(10px,2.4cqw,15px)}.pad{--k:1;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;justify-content:space-between;align-items:center;gap:12px;width:min(100%,560px);padding-inline:12px;display:none}.pad[data-size=s]{--k:.82}.pad[data-size=l]{--k:1.2}.stickzone{min-height:calc(150px * var(--k));touch-action:none;flex:1;align-self:stretch;position:relative}.stick{width:calc(128px * var(--k));height:calc(128px * var(--k));background:var(--panel);border:2px solid var(--line);pointer-events:none;opacity:.85;border-radius:50%;position:absolute;top:50%;left:50%;translate:-50% -50%}.stick.on{opacity:1}.stick:before{content:"";border:1px dashed var(--line);border-radius:50%;position:absolute;inset:22%}.knob{pointer-events:none;background:#3b2f58;border:2px solid #5d4c88;border-radius:50%;width:44%;height:44%;position:absolute;top:50%;left:50%;translate:-50% -50%}.padright{align-items:flex-end;gap:calc(10px * var(--k));flex-direction:column;display:flex}.quick{gap:calc(8px * var(--k));display:flex}.qbtn{width:calc(40px * var(--k));height:calc(40px * var(--k));background:var(--box);color:#f6f2fc;font-size:calc(18px * var(--k));touch-action:none;cursor:pointer;border:2px solid #ece6f599;border-radius:8px;place-items:center;padding:0;line-height:1;display:grid;position:relative}.qbtn canvas{width:56%;height:auto;image-rendering:pixelated}.qbtn b{min-width:1.5em;font-family:var(--f-display);font-size:calc(10px * var(--k));color:#1a1226;background:#ffe66b;border-radius:2px;padding:0 .25em;line-height:1.5;position:absolute;bottom:-5px;right:-4px}.qbtn.empty{opacity:.4}.gearquick{gap:calc(8px * var(--k));display:none}.qbtn.gq{font-family:var(--f-display);color:#1a1226;border-color:#1a122680}.qbtn.gq.a{background:var(--amber)}.qbtn.gq.c{background:var(--lilac)}.qbtn.gq i{font-style:normal;font-size:calc(10px * var(--k));position:absolute;bottom:1px;right:3px}.qbtn.gq[disabled]{opacity:.45}.qbtn.gq[disabled] i{display:none}.qbtn.empty b{background:#9a91ad}.btns{gap:calc(10px * var(--k)) calc(14px * var(--k));grid-template-columns:auto auto;align-items:center;display:grid}.btns .a,.btns .d{translate:0 calc(18px * var(--k))}.btn{width:calc(64px * var(--k));height:calc(64px * var(--k));font-family:var(--f-display);font-size:calc(22px * var(--k));color:#1a1226;touch-action:none;cursor:pointer;border:none;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:2px;line-height:1;display:flex}.btn span{font-family:var(--f-body);font-size:calc(10px * var(--k));white-space:nowrap;font-weight:700}.btn.a{background:var(--amber)}.btn.b{background:var(--teal)}.btn.c{background:var(--lilac)}.btn.d{background:#e8d9b8}.btn.e{background:#5a4a7a;display:none;position:relative}.btn.e canvas{width:50%;height:auto;image-rendering:pixelated}.btn.e b{min-width:1.5em;font-family:var(--f-display);font-size:calc(10px * var(--k));color:#1a1226;background:#ffe66b;border-radius:2px;padding:0 .25em;line-height:1.5;position:absolute;bottom:-4px;right:-3px}.btn.e.empty{opacity:.45}.btn.on{filter:brightness(1.25)}.btn,.qbtn,.stickzone{-webkit-tap-highlight-color:transparent}.badge{font-family:var(--f-display);color:#fff;text-shadow:1px 1px #000;background:#b8343a;border:2px solid #ece6f5cc;align-self:flex-start;padding:.2em .5em;font-size:clamp(7px,1.9cqw,12px)}.badge[data-kind=safe]{background:#3c8a4a}.badge[data-kind=pvp]{align-items:center;gap:.4em;display:flex}.badge[data-kind=pvp]:before{content:"";background:var(--icon-pvp) center/contain no-repeat;width:1.4em;height:1.4em;image-rendering:pixelated}.hud{pointer-events:none;flex-direction:column;gap:clamp(3px,.8cqw,6px);display:flex;position:absolute;top:3.5%;left:3.5%}.bar{--pct:100%;--fill:#d94b4b;--hi:#f07a6c;background:#120c1e;border:2px solid #ece6f5cc;width:clamp(96px,28cqw,200px);height:clamp(14px,3.6cqw,24px);position:relative;box-shadow:inset 0 0 0 1px #000}.bar:before{content:"";width:calc(var(--pct) - 2px);background:linear-gradient(var(--hi) 0 30%,var(--fill) 30%);max-width:calc(100% - 2px);transition:width .15s steps(4,end);position:absolute;inset:1px auto 1px 1px}.bar.mp{--fill:#3f6fd1;--hi:#7aa2ef;width:clamp(70px,20cqw,150px)}.bar span{height:100%;font-family:var(--f-display);color:#fff;text-shadow:1px 1px #000;justify-content:flex-end;align-items:center;padding:0 .4em;font-size:clamp(8px,2.2cqw,14px);line-height:1;display:flex;position:relative}.boss{pointer-events:none;flex-direction:column;align-items:center;gap:.3em;display:flex;position:absolute;top:12%;left:50%;translate:-50%}.boss b{font-family:var(--f-display);color:#ffd94f;text-shadow:1px 1px #000;letter-spacing:.04em;font-size:clamp(9px,2.4cqw,15px)}.boss .bar{--fill:#b65cd8;--hi:#e4a6f3;width:clamp(140px,48cqw,340px);height:clamp(9px,2.2cqw,14px)}.boss[data-angry=true] .bar{--fill:#d94b4b;--hi:#f07a6c}.bar.hp.low{animation:.9s steps(2,end) infinite lowhp}.partyhud{flex-direction:column;gap:clamp(2px,.7cqw,5px);margin-top:.2em;display:flex}.pm{font-family:var(--f-pixel);color:#b6f09c;text-shadow:1px 1px #000;flex-direction:column;gap:1px;font-size:clamp(8px,2cqw,13px);line-height:1;display:flex}.pm .bar{--fill:#4fb35e;--hi:#8fe39a;border-width:1px;width:clamp(56px,15cqw,110px);height:clamp(6px,1.5cqw,10px)}.pm small{color:#d8d2e6;font-size:.85em}.pm[data-dead=true]{color:#ff8a7a}.pm[data-dead=true] .bar{--fill:#5a5266;--hi:#6d6479}.invite{background:var(--box);z-index:5;border:3px solid #ece6f5;align-items:center;gap:.7em;max-width:92%;padding:.5em .8em;font-size:clamp(10px,2.4cqw,15px);display:flex;position:absolute;top:3.5%;left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 2px #4d4380}.invite .primary{padding:.25em .7em}.invitebox{border:2px solid var(--amber);flex-wrap:wrap;align-items:center;gap:.7em;padding:.5em .7em;display:flex}.plist{flex-direction:column;gap:.35em;margin:0;padding:0;list-style:none;display:flex}.plist li{flex-wrap:wrap;align-items:baseline;gap:.2em .5em;display:flex}.plist li span{color:var(--muted)}.plist li em{color:#b6f09c;font-size:.85em}.plist li .link{margin-left:auto;padding:0}@keyframes lowhp{50%{border-color:#ff9f43}}.death{pointer-events:none;text-align:center;background:radial-gradient(#0000 20%,#1e000ab3);flex-direction:column;justify-content:center;align-items:center;gap:1cqw;display:flex;position:absolute;inset:0}.death strong{font-family:var(--f-display);color:#e2574c;text-shadow:2px 2px #000;font-size:clamp(18px,6cqw,40px)}.death span{font-family:var(--f-pixel);color:#f6f2fc;text-shadow:1px 1px #000;font-size:clamp(11px,3cqw,19px)}.xprow{align-items:center;gap:.4em;width:clamp(96px,28cqw,200px);display:flex}.lvl{font-family:var(--f-display);color:#ffe66b;text-shadow:1px 1px #000;white-space:nowrap;font-size:clamp(8px,2.2cqw,13px)}.xpbar{--pct:0%;background:#120c1e;border:2px solid #ece6f5cc;flex:1;height:clamp(5px,1.3cqw,8px);position:relative}.xpbar i{width:var(--pct);background:#e8c34a;position:absolute;inset:0 auto 0 0}.gold{font-family:var(--f-display);color:#ffe66b;text-shadow:1px 1px #000;align-items:center;gap:.35em;font-size:clamp(8px,2.2cqw,13px);display:flex}.clock{font-family:var(--f-display);color:#ffe9a8;text-shadow:1px 1px #000;font-size:clamp(8px,2.2cqw,13px)}.clock[data-night=true]{color:#bcd0ff}.raid{font-family:var(--f-display);color:#ff9a8a;text-shadow:1px 1px #000;white-space:nowrap;font-size:clamp(8px,2.2cqw,13px)}.raid[data-warn=true]{animation:1s steps(2,end) infinite raid-blink}@keyframes raid-blink{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.raid[data-warn=true]{animation:none}}.gold canvas{width:clamp(10px,2.6cqw,16px);height:auto;image-rendering:pixelated}.floaters{pointer-events:none;position:absolute;inset:0;overflow:hidden}.floater{font-family:var(--f-display);color:#fff;text-shadow:1px 1px #000,-1px 0 #000,0 -1px #000;white-space:nowrap;font-size:clamp(8px,2.2cqw,14px);animation:1.4s ease-out forwards floatup;position:absolute;transform:translate(-50%,-100%)}.floater.xp{color:#ffe66b}.floater.item{color:#9fd7a8}.floater.level{color:#ffd75a;font-size:clamp(11px,3.4cqw,22px);animation-duration:2.4s}.floater.notice{color:#ff8a7a}@keyframes floatup{0%{opacity:0;margin-top:0}12%{opacity:1}75%{opacity:1}to{opacity:0;margin-top:-6cqw}}.fishbar{background:var(--box);font-family:var(--f-pixel);color:#f6f2fc;pointer-events:none;border:2px solid #ece6f5cc;flex-direction:column;align-items:center;gap:.35em;min-width:44%;padding:.4em .8em;font-size:clamp(10px,2.5cqw,15px);display:flex;position:absolute;bottom:18%;left:50%;translate:-50%}.fishbar[data-phase=bite] span{color:#ffe66b;animation:.3s steps(2,end) infinite blink}.fishtrack{background:#0c0a1c;border:2px solid #4d4380;width:100%;height:clamp(8px,2.2cqw,14px);position:relative}.fishtrack .zone{background:#4fbf6a;position:absolute;top:0;bottom:0}.fishtrack .cursor{background:#fff;width:3px;margin-left:-1px;position:absolute;top:-3px;bottom:-3px;box-shadow:0 0 0 1px #000}.records{flex-direction:column;gap:.3em;margin:0;padding-left:1.4em;display:flex}.records li b{color:var(--amber)}.bag{cursor:auto;font-family:var(--f-pixel);color:#f6f2fc;z-index:4;background:#0a081280;place-items:center;font-size:clamp(12px,2.9cqw,18px);display:grid;position:absolute;inset:0}.bagcard{width:min(88%,420px)}.bagrid{grid-template-columns:repeat(5,1fr);gap:.35em;display:grid}.slot{aspect-ratio:1;cursor:pointer;font:inherit;color:inherit;background:#0c0a1c;border:2px solid #4d4380;place-items:center;padding:0;display:grid;position:relative}.slot canvas{width:62%;height:auto;image-rendering:pixelated}.slot b{font-family:var(--f-display);text-shadow:1px 1px #000;font-size:.62em;font-weight:400;position:absolute;bottom:.05em;right:.2em}.slot .eq{font-family:var(--f-display);color:#1a1226;background:var(--amber);padding:0 .2em;font-size:.55em;font-style:normal;position:absolute;top:.05em;left:.15em}.slot[style*=--rar]{border-color:var(--rar);box-shadow:inset 0 0 6px color-mix(in srgb,var(--rar) 45%,transparent)}.slot .roll{font-family:var(--f-display);color:#7be08a;text-shadow:1px 1px #000;font-size:.6em;font-style:normal;position:absolute;top:.05em;right:.2em}.slot[aria-selected=true]{border-color:var(--amber);background:#1e1838}.slot:focus-visible{outline:2px solid var(--amber);outline-offset:1px}.gearrow{gap:.5em;display:flex}.gearbtn{font:inherit;color:#f6f2fc;cursor:pointer;text-align:left;background:#0c0a1c;border:2px solid #4d4380;flex:1;padding:.35em .5em}.gearbtn:focus-visible,.gearbtn:hover{border-color:var(--amber)}.gearline{font-family:var(--f-display);pointer-events:auto;gap:.4em;font-size:clamp(7px,1.9cqw,11px);display:flex}.gearline button{font:inherit;color:#e4def0;text-shadow:1px 1px #000;cursor:pointer;touch-action:manipulation;background:#0e0c228c;border:1px solid #ece6f559;align-items:center;gap:.35em;padding:.25em .5em;display:flex}.gearline button:hover,.gearline button:focus-visible{border-color:#ffd94f}.gearline button[disabled]{cursor:default;opacity:.7}.gearline b{color:#ffd94f}.gearline span:after{content:" ⟳";opacity:.7}.gearline button[disabled] span:after{content:""}.doll{grid-template-columns:repeat(3,3.2em);grid-template-areas:".head.""neck body ring"".feet.";justify-content:center;gap:.3em;display:grid}.doll [data-wear=head]{grid-area:head}.doll [data-wear=neck]{grid-area:neck}.doll [data-wear=body]{grid-area:body}.doll [data-wear=ring]{grid-area:ring}.doll [data-wear=feet]{grid-area:feet}.slot.wear small{color:var(--muted);text-align:center;font-size:.5em;line-height:1.1}.bagtabs{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.6em;display:flex}.bagtabs .tabs{flex:1;font-size:.85em}.bagdetail{flex-direction:column;gap:.5em;min-height:4.2em;display:flex}.bagdetail p{margin:0}.menucard>*{flex-shrink:0}.gearstats{color:var(--muted);flex-direction:column;gap:.15em;font-size:.82em;display:flex}.gearstats b{color:#e4def0;font-weight:600}.iteminfo{color:#e4def0;flex-direction:column;gap:.15em;margin:0;padding:0;font-size:.88em;list-style:none;display:flex}.iteminfo .up{color:#7be08a}.iteminfo .down{color:#ff8a7a}.iteminfo .cmp{color:var(--muted)}.sheet{grid-template-columns:auto auto 1fr;align-items:baseline;gap:.35em 1em;margin:0;display:grid}.sheet dt{color:var(--amber)}.sheet dd{color:#f6f2fc;margin:0;font-weight:600}.sheet dd.note{color:var(--muted);font-size:.85em;font-weight:400}.sheetgear{flex-direction:column;gap:.5em;display:flex}.sheetgear div{flex-direction:column;gap:.1em;display:flex}.sheetgear b{color:#cfe8ff}.sheetgear span{color:#e4def0;font-size:.9em}.shoplist{flex-direction:column;gap:.4em;max-height:52cqh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.shoplist li{background:#0c0a1c;border:2px solid #4d4380;align-items:center;gap:.6em;padding:.35em .5em;display:flex}.shoplist li canvas{width:1.6em;height:auto;image-rendering:pixelated;flex:none}.shoplist li span{flex-direction:column;flex:1;min-width:0;line-height:1.2;display:flex}.shoplist li small{color:var(--muted);font-size:.8em}.shoplist li button{white-space:nowrap;padding:.3em .7em}.bag button:disabled{opacity:.45;cursor:not-allowed}.bagbtn{background:var(--box);cursor:pointer;opacity:.75;border:2px solid #ece6f5b3;place-items:center;width:clamp(28px,6.5cqw,40px);height:clamp(28px,6.5cqw,40px);padding:0;font-size:clamp(12px,3cqw,18px);line-height:1;display:grid;position:absolute;bottom:3%;right:calc(2.5% + 2*clamp(28px,6.5cqw,40px) + 1.2em)}.bagbtn:hover,.bagbtn:focus-visible{opacity:1}.names{pointer-events:none;position:absolute;inset:0;overflow:hidden}.nametag{font-family:var(--f-pixel);white-space:nowrap;color:#f6f2fc;text-shadow:0 1px #000;background:#0e0c229e;border-radius:2px;padding:.15em .4em;font-size:clamp(9px,2.3cqw,15px);line-height:1;position:absolute;transform:translate(-50%,-100%)}.nametag.me{color:var(--amber)}.nametag.pvp{color:#ff6b5b}.nametag.pvp:before{content:"";vertical-align:-.1em;background:var(--icon-skull) center/contain no-repeat;width:.9em;height:1em;image-rendering:pixelated;margin-right:.3em;display:inline-block}.nametag.npc{color:#9fe0b0}.nametag.party{color:#b6f09c}.bubble{width:max-content;max-width:44cqw;font-family:var(--f-pixel);color:#1a1226;text-align:center;overflow-wrap:anywhere;pointer-events:none;background:#fbf8ff;border:2px solid #1b1226;padding:.25em .5em;font-size:clamp(9px,2.3cqw,15px);line-height:1.25;position:absolute;transform:translate(-50%,calc(-100% - 1.6em))}.bubble.noname{transform:translate(-50%,calc(-100% - .3em))}.bubble:after{content:"";border:4px solid #0000;border-top-color:#1b1226;border-bottom:0;margin-left:-4px;position:absolute;bottom:-6px;left:50%}.chatlog{width:min(62%,420px);max-height:34%;font-family:var(--f-pixel);pointer-events:none;flex-direction:column;justify-content:flex-end;gap:.15em;font-size:clamp(9px,2.3cqw,14px);line-height:1.3;display:flex;position:absolute;bottom:calc(3% + clamp(28px,6.5cqw,40px) + .6em);left:2.5%;overflow:hidden}.chatlog .line{color:#f6f2fc;text-shadow:1px 1px #000,-1px 0 #000,0 -1px #000;overflow-wrap:anywhere;transition:opacity .6s}.chatlog .line.old{opacity:0}.chatlog .line b{color:#cfe8ff;font-weight:600}.chatlog .line.mine b{color:var(--amber)}.chatlog .line.global .tag{color:#9fd7a8}.chatlog .line.party .tag,.chatlog .line.party{color:#b6f09c}.chatlog .line.system{color:#ffe66b;font-style:italic}.chatlog.open{pointer-events:auto;background:#0e0c22b3;justify-content:flex-start;padding:.4em .6em;overflow-y:auto}.chatlog.open .line.old{opacity:1}.chatbar{height:clamp(28px,6.5cqw,40px);font-family:var(--f-pixel);font-size:clamp(11px,2.6cqw,16px);display:flex;position:absolute;bottom:3%;left:2.5%;right:calc(2.5% + 3*clamp(28px,6.5cqw,40px) + 1.8em)}.chatch{font:inherit;color:#1a1226;cursor:pointer;background:#9fd7a8;border:2px solid #ece6f5;border-right:0;flex:none;padding:0 .7em}.chatch[data-ch=local]{background:#cfe8ff}.chatch[data-ch=party]{background:#b6f09c}.chatbar input{font:inherit;color:#f6f2fc;background:var(--box);border:2px solid #ece6f5;flex:1;min-width:0;padding:0 .6em}.chatbar input:focus-visible,.chatch:focus-visible,.chatbtn:focus-visible{outline:2px solid var(--amber);outline-offset:1px}.chatbtn{background:var(--box);cursor:pointer;opacity:.75;border:2px solid #ece6f5b3;place-items:center;width:clamp(28px,6.5cqw,40px);height:clamp(28px,6.5cqw,40px);padding:0;font-size:clamp(12px,3cqw,18px);line-height:1;display:grid;position:absolute;bottom:3%;right:calc(2.5% + clamp(28px,6.5cqw,40px) + .6em)}.chatbtn:hover{opacity:1}.account{cursor:auto;font-family:var(--f-pixel);color:#f6f2fc;z-index:5;background:0 0;place-items:center;font-size:clamp(12px,2.9cqw,18px);display:grid;position:absolute;inset:0}.accountcard{width:min(88%,460px)}.logo{width:min(100%,320px);height:auto;image-rendering:pixelated;margin:0 auto;display:block}.stack{flex-direction:column;gap:.7em;margin:0;display:flex}.stack p{margin:0}.row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8em;display:flex}.err{color:#ff8a7a;min-height:1em}.err:empty{display:none}.link{font:inherit;color:#cfe8ff;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;align-self:flex-start;padding:.2em 0;text-decoration:underline}.danger{font:inherit;cursor:pointer;color:#fff;background:#b8343a;border:2px solid #ff8a7a;padding:.4em 1em}.account button:disabled{opacity:.6;cursor:wait}.chars{flex-direction:column;gap:.5em;margin:0;padding:0;list-style:none;display:flex}.char{background:#0c0a1c;border:2px solid #4d4380;align-items:center;gap:.7em;padding:.4em .6em;display:flex}.char canvas,.preview{aspect-ratio:1;width:clamp(36px,8cqw,54px);height:auto;image-rendering:pixelated;background:#2a3b26;flex:none}.preview{border:2px solid #4d4380;width:clamp(54px,13cqw,90px)}.cname{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.char .play{padding:.3em .9em}.del{font:inherit;color:#ff8a7a;cursor:pointer;background:0 0;border:2px solid #0000;padding:.2em .5em}.del:hover,.del:focus-visible{border-color:#ff8a7a}.newchar{font:inherit;color:#f6f2fc;cursor:pointer;background:0 0;border:2px dashed #4d4380;padding:.6em}.newchar:hover{border-color:var(--amber)}.account button:focus-visible,.account input:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.account input{font:inherit;color:#f6f2fc;background:#0c0a1c;border:2px solid #4d4380;width:100%;min-width:0;padding:.35em .5em}.field input[readonly]{color:var(--muted);border-style:dashed}.mapbtn{background:var(--box);cursor:pointer;opacity:.75;border:2px solid #ece6f5b3;place-items:center;width:clamp(28px,6.5cqw,40px);height:clamp(28px,6.5cqw,40px);padding:0;font-size:clamp(12px,3cqw,18px);line-height:1;display:grid;position:absolute;bottom:3%;right:calc(2.5% + 4*clamp(28px,6.5cqw,40px) + 2.4em)}.mapbtn:hover,.mapbtn:focus-visible{opacity:1}.minimap{aspect-ratio:4/3;width:clamp(64px,22cqw,132px);height:auto;image-rendering:pixelated;cursor:pointer;border:2px solid #ece6f5cc;position:absolute;top:3.5%;right:3.5%;box-shadow:0 0 0 2px #1b1226}.worldmap{font-family:var(--f-pixel);color:#f6f2fc;z-index:4;background:#0a08128c;place-items:center;font-size:clamp(12px,2.9cqw,18px);display:grid;position:absolute;inset:0}.mapcard{gap:.5em;width:min(94%,760px)}.mapcard canvas{object-fit:contain;width:100%;height:auto;max-height:68cqh;image-rendering:pixelated;cursor:crosshair;touch-action:none;border:2px solid #4d4380}.maprow{justify-content:flex-start;gap:1em}.fsbtn{color:#f4f0fb;background:var(--box);cursor:pointer;opacity:.75;border:2px solid #ece6f5b3;place-items:center;width:clamp(28px,6.5cqw,40px);height:clamp(28px,6.5cqw,40px);padding:0;font-size:clamp(14px,3.4cqw,20px);line-height:1;display:grid;position:absolute;bottom:3%;right:calc(2.5% + 3*clamp(28px,6.5cqw,40px) + 1.8em)}.fsbtn:hover,.fsbtn:focus-visible{opacity:1}.menubtn{color:#f4f0fb;background:var(--box);cursor:pointer;opacity:.75;border:2px solid #ece6f5b3;place-items:center;width:clamp(28px,6.5cqw,40px);height:clamp(28px,6.5cqw,40px);font-size:clamp(14px,3.4cqw,20px);line-height:1;display:grid;position:absolute;bottom:3%;right:2.5%}.menubtn:hover,.menubtn:focus-visible{opacity:1}.menubtn:focus-visible,.menu button:focus-visible,.menu input:focus-visible+span,.field input:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.menu{cursor:auto;font-family:var(--f-pixel);color:#f6f2fc;background:#0a08128c;place-items:center;font-size:clamp(12px,2.9cqw,18px);display:grid;position:absolute;inset:0}.menucard{background:var(--box);border:3px solid #ece6f5;flex-direction:column;gap:.9em;width:min(88%,560px);max-height:90%;padding:1em 1.2em;display:flex;overflow:auto;box-shadow:inset 0 0 0 2px #4d4380}.menu section{flex-direction:column;gap:.85em;display:flex}.tabs{border-bottom:2px solid #4d4380;flex-wrap:wrap;gap:.3em;display:flex}.tabs button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;margin-bottom:-2px;padding:.3em .6em}.tabs button[aria-selected=true]{color:#f6f2fc;border-bottom-color:var(--amber)}.charrow{align-items:center;gap:1em;display:flex}#preview{aspect-ratio:1;width:clamp(54px,13cqw,90px);height:auto;image-rendering:pixelated;background:#2a3b26;border:2px solid #4d4380;flex:none}.field{min-width:0;color:var(--muted);flex-direction:column;flex:1;gap:.3em;display:flex}.field input{font:inherit;color:#f6f2fc;background:#0c0a1c;border:2px solid #4d4380;width:100%;min-width:0;padding:.35em .5em}.group{border:0;flex-direction:column;gap:.4em;min-width:0;margin:0;padding:0;display:flex}.group>span,.group legend{color:var(--muted);padding:0}.swatches{flex-wrap:wrap;gap:.4em;display:flex}.swatch{background:var(--c);cursor:pointer;border:2px solid #1b1226;width:1.9em;height:1.9em;padding:0;box-shadow:0 0 0 2px #0000}.swatch[aria-checked=true]{box-shadow:0 0 0 2px #f6f2fc}.saverow{align-items:center;gap:.8em;display:flex}#charSaved{color:#6fd08c}.primary,.close{font:inherit;cursor:pointer;border:2px solid #ece6f5;padding:.4em 1em}.primary{color:#1a1226;background:var(--amber);border-color:var(--amber)}.close{color:#f6f2fc;background:0 0;align-self:flex-end}.seg{flex-wrap:wrap;gap:.4em;display:flex}.seg label{cursor:pointer}.seg input,.toggle input{opacity:0;pointer-events:none;position:absolute}.seg span{color:var(--muted);border:2px solid #4d4380;padding:.3em .7em;display:inline-block}.seg input:checked+span{border-color:var(--amber);color:#f6f2fc;background:#f2a24e26}.toggle{cursor:pointer;align-items:center;gap:.6em;display:flex}.toggle span{flex:1;align-items:center;gap:.6em;display:flex}.toggle span:before{content:"";width:2.2em;height:1.1em;box-shadow:inset 0 0 0 2px #0c0a1c,inset -1.1em 0 0 2px var(--muted);background:#0c0a1c;border:2px solid #4d4380;flex:none}.toggle input:checked+span:before{border-color:var(--amber);box-shadow:inset 0 0 0 2px #0c0a1c,inset 1.1em 0 0 2px var(--amber)}.menu kbd{font-family:var(--f-display);color:var(--ink);white-space:nowrap;background:#2a2141;border:1px solid #4a3d6c;border-bottom-width:3px;padding:.05em .4em;font-size:.75em}.hint{color:var(--muted);margin:0;font-size:.85em}.toggle input:disabled+span{opacity:.55;cursor:not-allowed}.keys{grid-template-columns:auto 1fr;gap:.5em 1em;margin:0;display:grid}.keys dt{color:var(--amber)}.keys dd{color:#e4def0;margin:0}@keyframes blink{50%{opacity:0}}.titlebg{z-index:4;background:#0e0c22;transition:opacity .45s;position:fixed;inset:0}.titlebg.out{opacity:0}.titlebg canvas{object-fit:cover;width:100%;height:100%;image-rendering:pixelated}@media (prefers-reduced-motion:reduce){.titlebg{transition:none}}.maintenance{z-index:50;background:#0e1222;border:0;width:100%;height:100%;position:fixed;inset:0}.touch-only,.assist-opt{display:none}body.gamepad .assist-opt{display:flex}body.gamepad .pad{display:none!important}body.gamepad .stage{width:min(100vw,114.286dvh)}@media (hover:none) and (pointer:coarse){html,body{overscroll-behavior:none}.stage{touch-action:none}.touch-only,.assist-opt{display:flex}.fsbtn{display:none}.mapbtn{right:calc(2.5% + 3*clamp(28px,6.5cqw,40px) + 1.8em)}.worldmap{z-index:10;position:fixed}.mapcard canvas{max-height:62vh}.pad{display:flex}.stage{width:min(100vw,114.286dvh - 228.571px)}.menu,.account,.bag{z-index:10;position:fixed}.titlebg{z-index:9}.gearline{gap:.6em;font-size:clamp(9px,2.6cqw,13px)}.gearline button{min-height:36px;padding:.3em .8em}}@media (hover:none) and (pointer:coarse) and (orientation:landscape){.stage{width:min(100vw,114.286dvh)}.pad{z-index:2;pointer-events:none;width:auto;padding:max(10px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));align-items:flex-end;position:fixed;inset:0}.stickzone{width:max(calc(150px * var(--k)),calc((100vw - 100dvh * 256 / 224) / 2 - 20px));pointer-events:auto;flex:none;align-self:auto;height:72%}.stick{top:auto;bottom:0;translate:-50%}.stick.on{translate:-50% -50%}.padright{--A:calc(76px * var(--k));--s:calc(50px * var(--k));--R:calc(100px * var(--k));right:max(16px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));width:var(--A);height:var(--A);pointer-events:auto;position:absolute}.btns{display:block;position:absolute;inset:0}.btns .btn{width:var(--s);height:var(--s);font-size:calc(16px * var(--k));opacity:.92;position:absolute;translate:none}.btns .btn span{font-size:calc(8px * var(--k))}.btns .btn.a{width:var(--A);height:var(--A);font-size:calc(26px * var(--k));opacity:1;inset:0}.btns .btn.a span{font-size:calc(11px * var(--k))}.btns .btn.e{display:flex}.btns .c{left:calc(50% - var(--R) - var(--s) / 2);top:calc(50% - var(--s) / 2)}.btns .b{left:calc(50% - var(--R) * .848 - var(--s) / 2);top:calc(50% - var(--R) * .53 - var(--s) / 2)}.btns .d{left:calc(50% - var(--R) * .407 - var(--s) / 2);top:calc(50% - var(--R) * .914 - var(--s) / 2)}.btns .e{left:calc(50% + var(--R) * .174 - var(--s) / 2);top:calc(50% - var(--R) * .985 - var(--s) / 2)}.quick{top:max(10px,env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right));position:fixed}#q3{display:none}.gearquick{top:max(10px,env(safe-area-inset-top));left:max(14px,env(safe-area-inset-left));pointer-events:auto;display:flex;position:fixed}.hud .gearline{display:none}}@media (prefers-reduced-motion:reduce){.fishbar[data-phase=bite] span{animation:none}.stage.fade:after{opacity:0;animation:none}.more{animation:none}.roomname,.bar:before{transition:none}.bar.hp.low{animation:none}}
