:root{--ink: #1a1410;--parch: #efe3c4;--parch-2: #e3d3aa;--gold: #b8893a;--gold-2: #e0c068;--crimson: #8e2b2b;--leaf: #4a6b2e;--panel: rgba(26, 20, 16, .82);--panel-edge: #b8893a}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:#0c0a08;font-family:Georgia,Iowan Old Style,serif;color:var(--parch);-webkit-user-select:none;user-select:none}#app{position:fixed;top:0;right:0;bottom:0;left:0}canvas{display:block}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:center;justify-content:center;background:radial-gradient(120% 120% at 50% 0%,#2a3b25,#14110c 70%);padding:24px}.gate{width:min(520px,94vw);text-align:center;background:var(--panel);border:2px solid var(--panel-edge);border-radius:12px;box-shadow:0 12px 60px #0009;padding:28px 26px}.gate h1{margin:0 0 4px;color:var(--gold-2)}.gate h1 small{display:block;font-size:11px;letter-spacing:3px;color:#9a8c6a;margin-top:4px}.gatesub{color:#b8a98a;font-size:13px;margin:6px 0 18px}.gateform{display:flex;flex-direction:column;gap:10px}.gateform input{padding:11px 12px;border-radius:7px;font-size:15px;background:#1b1710;border:1px solid var(--panel-edge);color:#e8dcc0}.gateform input:focus{outline:none;border-color:var(--gold-2)}.gateerr{color:#e08a6a;font-size:13px}.gatebtns{display:flex;gap:10px;justify-content:center;margin-top:4px}.gatebtns .enter{flex:1}.linklike{background:none;border:none;color:#9a8c6a;cursor:pointer;font-size:13px;text-decoration:underline;margin-top:6px}.linklike:hover{color:var(--gold-2)}.croster{display:flex;flex-direction:column;gap:8px;margin:6px 0 16px;max-height:52vh;overflow:auto}.crow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:#1b1710;border:1px solid var(--panel-edge);border-radius:8px}.cinfo{text-align:left;display:flex;flex-direction:column}.cinfo b{color:#e8dcc0;font-size:15px}.cinfo span{color:#9a8c6a;font-size:12px}.cbtns{display:flex;gap:6px}.cbtns .danger{color:#e08a6a;border-color:#5a3a2a}.cbtns .danger:hover{background:#3a201a}.builder{width:min(960px,96vw);max-height:92vh;overflow:auto;background:var(--panel);border:2px solid var(--panel-edge);border-radius:10px;box-shadow:0 12px 60px #0009;display:grid;grid-template-columns:1.3fr 1fr;gap:0}.builder__form{padding:22px 26px}.builder__preview{border-left:2px solid var(--panel-edge);background:radial-gradient(120% 80% at 50% 20%,#243a4a,#0e1410);position:relative;min-height:420px}.builder__preview canvas{border-radius:0 8px 8px 0}.builder h1{font-size:26px;margin:0 0 2px;color:var(--gold-2);letter-spacing:.5px}.builder h1 small{display:block;font-size:12px;color:#c9b88f;letter-spacing:2px;font-weight:400}.builder h2{font-size:14px;color:var(--gold-2);margin:18px 0 8px;text-transform:uppercase;letter-spacing:1.5px;border-bottom:1px solid rgba(184,137,58,.4);padding-bottom:4px}.field{margin-bottom:6px}.field label{display:block;font-size:12px;color:#cdbf98;margin-bottom:3px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{cursor:pointer;padding:6px 10px;border-radius:999px;border:1px solid rgba(184,137,58,.5);background:#00000040;color:var(--parch);font-size:13px;transition:all .12s}.chip:hover{border-color:var(--gold-2)}.chip.sel{background:var(--gold);color:#1a1410;border-color:var(--gold-2);font-weight:700}.maptools .mapmode{background:#0000004d;border:1px solid rgba(184,137,58,.5);color:var(--parch);border-radius:6px;padding:5px 10px;cursor:pointer;margin-right:4px}.maptools .mapmode.sel{background:var(--gold);color:#1a1410;font-weight:700}.minimapwrap{position:fixed;top:12px;right:12px;z-index:6;text-align:center}.minimap{width:170px;height:170px;border-radius:8px;border:2px solid rgba(184,137,58,.6);box-shadow:0 2px 10px #00000080;background:#2a3320}.mmzoom{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:3px}.mmzoom button{width:20px;height:20px;line-height:1;border-radius:5px;border:1px solid rgba(184,137,58,.5);background:#00000059;color:var(--parch);cursor:pointer;font-size:14px;padding:0}.mmzoom button:hover{border-color:var(--gold-2)}.minihint{font-size:10px;color:#c8b88a;letter-spacing:.04em}.appear{display:flex;flex-direction:column;gap:5px}.arow{display:flex;align-items:center;gap:8px}.alabel{width:78px;font-size:12px;color:#b6c4a0;flex:0 0 auto}.achips{display:flex;flex-wrap:wrap;gap:6px}.chip.swatch{width:22px;height:22px;padding:0;border-radius:50%}.chip.swatch.sel{box-shadow:0 0 0 2px var(--gold-2)}.blurb{font-size:12px;color:#b6c4a0;min-height:30px;margin:6px 0 0;font-style:italic}.attrs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.attr{background:#00000040;border:1px solid rgba(184,137,58,.35);border-radius:6px;padding:6px 8px}.attr .row{display:flex;align-items:center;justify-content:space-between}.attr b{color:var(--gold-2);font-size:12px;text-transform:uppercase}.attr .val{font-size:18px;min-width:24px;text-align:center}.attr button{width:24px;height:24px;border-radius:4px;border:1px solid var(--gold);background:#b8893a33;color:var(--parch);cursor:pointer;font-size:15px}.attr button:disabled{opacity:.3;cursor:default}.points{font-size:13px;color:var(--gold-2);margin-top:8px}input[type=text]{width:100%;padding:8px 10px;border-radius:6px;font-size:15px;background:#0000004d;border:1px solid var(--gold);color:var(--parch);font-family:inherit}.enter{margin-top:18px;width:100%;padding:12px;font-size:17px;cursor:pointer;background:linear-gradient(#caa24a,#9a6f22);color:#1a1410;font-weight:700;border:1px solid var(--gold-2);border-radius:8px;letter-spacing:.5px;font-family:inherit}.enter:hover{filter:brightness(1.08)}.enter:disabled{opacity:.4;cursor:default}.err{color:#ffb0a0;font-size:13px;min-height:16px;margin-top:6px}.hud{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:10}.hud>*{pointer-events:auto}.labels{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9;overflow:hidden}.nplate{position:absolute;transform:translate(-50%,-100%);text-align:center;white-space:nowrap;font-size:11px;text-shadow:0 1px 3px #000,0 0 4px #000;line-height:1.25}.nplate small{font-size:9px;opacity:.8}.nplate .npn{color:var(--gold-2);font-weight:700}.nplate .pln{color:#cfe0f0}.nplate .mn{font-weight:700}.nplate .hpb{display:block;width:52px;height:4px;margin:1px auto 0;background:#0009;border-radius:2px;overflow:hidden}.nplate .hpb>i{display:block;height:100%;background:linear-gradient(#c0392b,#7a1f17)}.nplate .cc{display:block;color:#b0c0ff;font-size:9px}.nplate .ndn{color:#a9c7a0;font-size:10px;font-style:italic;opacity:.82}.nplate .ndn.nq{color:var(--gold-2);font-style:normal;font-weight:700;opacity:1;text-shadow:0 0 6px rgba(240,200,90,.7),0 1px 3px #000}.nplate.plated-target .mn{text-decoration:underline}.nplate.plated-target .hpb{box-shadow:0 0 0 1px #ff5050}.vitals{position:absolute;top:14px;left:14px;width:240px;background:var(--panel);border:1px solid var(--panel-edge);border-radius:8px;padding:10px 12px}.vitals .name{color:var(--gold-2);font-weight:700;font-size:15px}.vitals .sub{font-size:11px;color:#c9b88f;margin-bottom:6px}.bar{height:14px;border-radius:7px;background:#00000080;overflow:hidden;border:1px solid rgba(0,0,0,.5);margin-top:4px;position:relative}.bar>span{position:absolute;top:0;right:0;bottom:0;left:0;font-size:10px;text-align:center;line-height:14px;color:#fff;text-shadow:0 1px 1px #000}.bar .fill{height:100%;transition:width .2s}.fill.hp{background:linear-gradient(#c0392b,#7a1f17)}.fill.xp{background:linear-gradient(#caa24a,#8a6a1f)}.dharma{font-size:12px;margin-top:6px}.dharma .pos{color:#9affc0}.dharma .neg{color:#ff9a9a}.target{position:absolute;top:14px;left:50%;transform:translate(-50%);width:280px;background:var(--panel);border:1px solid var(--crimson);border-radius:8px;padding:8px 12px;text-align:center;display:none}.target.show{display:block}.target .tname{color:#ffb3a0;font-weight:700}.quests{position:fixed;top:210px;right:12px;width:220px;background:var(--panel);border:1px solid var(--panel-edge);border-radius:8px;padding:9px 11px;max-height:42vh;overflow:auto;z-index:5}.quests h3{margin:0 0 6px;color:var(--gold-2);font-size:13px;text-transform:uppercase;letter-spacing:1px}.quest{border-top:1px solid rgba(184,137,58,.3);padding:6px 0}.quest .qt{color:var(--parch);font-weight:700;font-size:13px}.quest .qo{font-size:12px;color:#c2d0ac;margin-left:8px}.quest .qo.done{color:#9affc0}.quests .empty{font-size:12px;color:#9a8c6a;font-style:italic}.feed{position:absolute;bottom:14px;left:14px;width:420px;max-height:32vh;display:flex;flex-direction:column;gap:4px;overflow:hidden}.msg{background:#14100cb3;border-left:3px solid var(--gold);padding:5px 10px;border-radius:4px;font-size:13px;animation:fade .3s}.msg.sys{border-left-color:#6a8aa8;color:#cfe0f0}.msg.chat{border-left-color:#9aa86a}.msg.npc{border-left-color:var(--gold-2);color:#f0e4c0}.msg.npc .who{color:var(--gold-2);font-weight:700}.msg.npc .src{float:right;font-size:9px;color:#8a7a52;letter-spacing:.5px}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1}}.dialog{position:absolute;bottom:90px;left:50%;transform:translate(-50%);width:min(560px,92vw);background:var(--panel);border:2px solid var(--panel-edge);border-radius:10px;padding:16px 18px;display:none}.dialog.show{display:block}.dialog h3{margin:0 0 4px;color:var(--gold-2)}.dialog .body{font-size:14px;color:#e8dcc0;margin-bottom:10px;white-space:pre-wrap}.dialog .row{display:flex;gap:8px;flex-wrap:wrap}.dialog button,.dialog input{font-family:inherit;font-size:13px;padding:8px 12px;border-radius:6px;cursor:pointer;background:linear-gradient(#caa24a,#9a6f22);color:#1a1410;border:1px solid var(--gold-2);font-weight:700}.dialog button.ghost{background:#0000004d;color:var(--parch)}.dialog input{background:#00000059;color:var(--parch);cursor:text;flex:1;font-weight:400}.chatbar{position:absolute;bottom:14px;left:50%;transform:translate(-50%);width:min(480px,90vw);display:none}.chatbar.show{display:block}.chatbar input{width:100%;padding:9px 12px;border-radius:6px;background:#14100ceb;border:1px solid var(--gold);color:var(--parch);font-family:inherit;font-size:14px}.help{position:absolute;bottom:14px;right:14px;width:230px;background:var(--panel);border:1px solid var(--panel-edge);border-radius:8px;padding:8px 12px;font-size:11px;color:#c9b88f}.help b{color:var(--gold-2)}.clock{position:absolute;top:14px;left:270px;font-size:12px;color:#d8cba0;background:var(--panel);border:1px solid var(--panel-edge);border-radius:8px;padding:6px 10px}.menubtn{position:absolute;top:14px;right:252px;width:38px;height:38px;font-size:18px;cursor:pointer;background:var(--panel);color:var(--gold-2);border:1px solid var(--panel-edge);border-radius:8px;line-height:1}.menubtn:hover{border-color:var(--gold-2)}.menu{position:absolute;top:0;right:0;bottom:0;left:0;z-index:25;display:none;align-items:center;justify-content:center;background:#080604b8}.menu.show{display:flex}.menupanel{width:min(340px,90vw);background:var(--panel);border:2px solid var(--panel-edge);border-radius:12px;padding:22px;text-align:center;box-shadow:0 12px 60px #0009}.menupanel h2{color:var(--gold-2);margin:0 0 16px;letter-spacing:.5px}.menupanel button{display:block;width:100%;margin:8px 0;padding:12px;font-family:inherit;font-size:15px;cursor:pointer;border-radius:8px;border:1px solid var(--gold-2);background:linear-gradient(#caa24a,#9a6f22);color:#1a1410;font-weight:700}.menupanel button:hover{filter:brightness(1.08)}.menupanel button.danger{background:linear-gradient(#b05038,#7a2f1f);color:#f0e0d8;border-color:var(--crimson)}.menupanel .menuhint{font-size:11px;color:#9a8c6a;margin:12px 0 0;font-style:italic}.exitscreen{text-align:center;max-width:520px;padding:30px}.exitscreen h1{font-size:30px;color:var(--gold-2);margin:0 0 6px}.exitscreen h1 small{display:block;font-size:12px;color:#c9b88f;letter-spacing:3px;font-weight:400}.exitscreen p{color:#d8cba0;font-style:italic;margin:14px 0 22px}.fill.mana{background:linear-gradient(#3a6ea8,#1f3f6a)}.vitals .buffs{font-size:12px;color:#9affc0;margin-top:4px;min-height:14px}.vitals .cc{font-size:12px;color:#ff9a9a;min-height:14px}.cast{display:none;margin-top:6px;height:16px;border-radius:6px;background:#00000080;position:relative;overflow:hidden;border:1px solid #b8893a}.cast.show{display:block}.castfill{position:absolute;top:0;right:0;bottom:0;left:0;width:0%;background:linear-gradient(#caa24a,#9a6f22);transition:width .08s linear}.casttxt{position:absolute;top:0;right:0;bottom:0;left:0;text-align:center;line-height:16px;font-size:11px;color:#fff;text-shadow:0 1px 1px #000}.target .tgcc{font-size:11px;color:#b0c0ff;margin-top:3px}.party{position:absolute;top:150px;left:14px;width:200px;display:flex;flex-direction:column;gap:6px}.pframe{background:var(--panel);border:1px solid var(--panel-edge);border-radius:6px;padding:5px 8px;cursor:pointer}.pframe.self,.pframe:hover{border-color:var(--gold-2)}.pframe .pn{font-size:12px;color:var(--parch);margin-bottom:3px}.pframe.offline{opacity:.5}.pframe.near{cursor:pointer}.pframe .pz{font-size:9px;color:#8fb0d8;background:#0000004d;border-radius:4px;padding:1px 4px}.pframe .pz.off{color:#b08a8a}.bar.thin{height:7px}.leaveparty{font-family:inherit;font-size:11px;padding:4px 8px;border-radius:6px;cursor:pointer;background:#0000004d;color:var(--parch);border:1px solid var(--gold)}.abilitybar{position:absolute;bottom:56px;left:50%;transform:translate(-50%);display:flex;gap:6px}.slot{width:64px;height:56px;background:var(--panel);border:1px solid var(--panel-edge);border-radius:8px;position:relative;cursor:pointer;display:flex;align-items:flex-end;justify-content:center;padding-bottom:4px;transition:all .1s}.slot:hover{border-color:var(--gold-2);transform:translateY(-2px)}.slot .key{position:absolute;top:3px;left:5px;font-size:10px;color:var(--gold-2)}.slot .cost{position:absolute;top:3px;right:5px;font-size:10px;color:#6a9ad0}.slot .abn{font-size:10px;color:var(--parch);text-align:center;line-height:1.1}.slot .cdmask{position:absolute;left:0;bottom:0;width:100%;height:0%;background:#0806049e;border-radius:8px;pointer-events:none}.slot .cdnum{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:19px;font-weight:700;color:#fff;text-shadow:0 1px 3px #000;pointer-events:none}.slot.cooling{cursor:default}.slot.cooling:hover{transform:none;border-color:var(--panel-edge)}.prompts{position:absolute;bottom:124px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:4px;align-items:center}.prompt{background:#14100cd1;border:1px solid var(--gold);border-radius:6px;padding:6px 12px;font-size:13px;color:var(--parch)}.prompt.corpse{border-color:#8a6a8a}.window{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(640px,94vw);max-height:80vh;overflow:auto;background:var(--panel);border:2px solid var(--panel-edge);border-radius:10px;padding:16px 20px;display:none;z-index:20}.window.show{display:block}.window h3{margin:0 0 10px;color:var(--gold-2)}.window h3 .coin{float:right;font-size:13px;color:#e0c068}.window h4{color:#c9b88f;font-size:12px;text-transform:uppercase;letter-spacing:1px;margin:0 0 6px}.window .cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}.wrow{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid rgba(184,137,58,.25);font-size:13px}.wrow.locked{opacity:.6}.wrow .abdesc{font-size:11px;color:#b6c4a0;font-style:italic}.wrow .reason{font-size:11px;color:#d0b070}.wrow button{font-family:inherit;font-size:12px;padding:5px 10px;border-radius:6px;cursor:pointer;background:linear-gradient(#caa24a,#9a6f22);color:#1a1410;border:1px solid var(--gold-2);font-weight:700;white-space:nowrap}.wrow button:disabled{opacity:.4;cursor:default;background:#555}.window .closew{margin-top:12px}.rvr{position:absolute;bottom:120px;right:14px;width:260px;background:var(--panel);border:1px solid var(--panel-edge);border-radius:8px;padding:10px 12px}.rvr:empty{display:none}.rvr h3{margin:0 0 6px;color:var(--gold-2);font-size:13px;text-transform:uppercase;letter-spacing:1px}.rvr .score{font-size:14px;margin-bottom:4px}.rvr .score .p{color:#7aa8ff}.rvr .score .k{color:#ff9a8a}.rvr .myrealm{font-size:12px;color:#cdbf98;margin-bottom:6px}.rvr .obj{font-size:12px;color:#e0d6bc;margin:3px 0}.rvr .obj .dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px}.rvr .conch{margin-top:8px;width:100%;font-family:inherit;font-size:13px;padding:7px;border-radius:6px;cursor:pointer;background:linear-gradient(#caa24a,#9a6f22);color:#1a1410;border:1px solid var(--gold-2);font-weight:700}.hud .assist{position:absolute;top:214px;right:14px;display:flex;flex-direction:column;align-items:flex-end;gap:6px;pointer-events:none;z-index:5}.hud .assist-item{display:flex;align-items:center;gap:6px;background:#1216109e;border:1px solid var(--c, #e0c068);border-radius:14px;padding:3px 11px;font-size:12px;color:#f0e6c8;white-space:nowrap}.hud .assist-arrow{color:var(--c, #e0c068);font-weight:700;display:inline-block;line-height:1}.hud .assist-label{font-weight:600}.hud .assist-dist{opacity:.65}.hud .charwin{position:absolute;top:214px;right:14px;width:320px;max-height:64vh;overflow-y:auto;background:#10140eed;border:1px solid #6a5a32;border-radius:10px;padding:12px 14px;color:#f0e6c8;display:none;pointer-events:auto;z-index:20}.hud .charwin.show{display:block}.hud .charwin h3{display:flex;justify-content:space-between;align-items:center;margin:0 0 8px}.hud .charwin h3 .closew{cursor:pointer;opacity:.7;font-size:16px}.hud .ctabs{display:flex;gap:4px;margin-bottom:10px}.hud .ctab{flex:1;padding:5px 2px;background:#2a2a1e;border:1px solid #4a4030;color:#cfc18a;border-radius:6px;cursor:pointer;font-size:12px}.hud .ctab.sel{background:#5a4a20;color:#fff}.hud .cbody .wrow{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.06)}.hud .cbody .rowbtns{display:flex;gap:4px}.hud .cbody button{font-size:11px;padding:3px 9px;cursor:pointer;background:#4a4020;color:#f0e6c8;border:1px solid #6a5a32;border-radius:5px}.hud .cbody button.ghost{background:transparent}.hud .cbody .coin{color:#e8c45a;margin-bottom:6px}.hud .cbody .abdesc{font-size:11px;opacity:.7}.hud .window .cols2{display:flex;gap:8px;margin-top:10px}.hud .window .cols2 button{flex:none}.hud .attrnudge{position:absolute;top:118px;left:14px;background:#5c4614e6;border:1px solid #e8c45a;color:#ffe8a0;padding:4px 11px;border-radius:8px;font-size:12px;font-weight:600;display:none;pointer-events:auto;cursor:pointer;z-index:6;box-shadow:0 0 10px #e8c45a59}.hud .attrnudge.show{display:block;animation:attrpulse 2s ease-in-out infinite}@keyframes attrpulse{0%,to{box-shadow:0 0 8px #e8c45a4d}50%{box-shadow:0 0 16px #e8c45a99}}.hud .window button{font-size:12px;min-width:96px;padding:5px 12px;cursor:pointer;text-align:center;background:#4a4020;color:#f0e6c8;border:1px solid #6a5a32;border-radius:5px}.hud .window button:disabled{opacity:.45;cursor:default}.hud .window button.ghost{background:transparent}.hud .window .wrow{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.06)}.touch{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:30}.touch .tc-stick{position:absolute;left:22px;bottom:26px;width:132px;height:132px;border-radius:50%;background:#14181252;border:2px solid rgba(232,196,90,.4);pointer-events:auto;touch-action:none}.touch .tc-thumb{position:absolute;left:50%;top:50%;width:58px;height:58px;border-radius:50%;background:#e8c45a8c;transform:translate(-50%,-50%)}.touch .tc-actions{position:absolute;right:22px;bottom:30px;display:flex;flex-direction:column-reverse;align-items:center;gap:12px;pointer-events:none}.touch .tc-btn{pointer-events:auto;touch-action:none;width:86px;height:86px;border-radius:50%;font-size:30px;background:#602a2a99;border:2px solid rgba(232,120,90,.6);color:#ffe8d0}.touch .tc-btn.tc-small{width:60px;height:60px;font-size:22px;background:#28342899;border-color:#78c89680}.touch .tc-menu{position:absolute;right:16px;top:64px;display:flex;gap:8px;pointer-events:none}.touch .tc-menu button{pointer-events:auto;touch-action:none;width:48px;height:48px;border-radius:10px;font-size:20px;background:#1418129e;border:1px solid #6a5a32;color:#f0e6c8}.hud .musicbtn{position:absolute;top:14px;right:206px;width:38px;height:38px;border-radius:8px;background:#1a1410d1;border:1px solid #b8893a;color:#f0e6c8;font-size:18px;cursor:pointer;pointer-events:auto;z-index:7}.hud .pvpbtn{position:absolute;top:14px;right:298px;height:38px;padding:0 12px;border-radius:8px;background:#1a1410d1;border:1px solid #b8893a;color:#f0e6c8;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;pointer-events:auto;z-index:7;white-space:nowrap}.hud .pvpbtn:hover{border-color:#e8c45a}.hud .pvpbtn.on{background:linear-gradient(#b05038,#7a2f1f);border-color:#e06048;color:#ffe8e0}.hud .mapwin{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#10140ef5;border:2px solid #6a5a32;border-radius:12px;padding:12px 14px;display:none;pointer-events:auto;z-index:22}.hud .mapwin.show{display:block}.hud .mapwin h3{display:flex;align-items:center;gap:10px;margin:0 0 8px;color:#e8c45a}.hud .mapwin .maphint{font-size:11px;color:#9a8c6a;font-weight:400;flex:1}.hud .mapwin h3 .closew{cursor:pointer;opacity:.7}.hud .mapcv{display:block;width:min(76vmin,520px);height:min(76vmin,520px);background:#2a3320;border-radius:6px;cursor:crosshair}.hud .maptools{margin-top:8px;text-align:right}.hud .maptools button{font-size:12px;padding:4px 12px;cursor:pointer;background:#4a4020;color:#f0e6c8;border:1px solid #6a5a32;border-radius:5px}.hud .help{transition:opacity 1.4s ease}.hud .help.fade{opacity:0;pointer-events:none}.hud .party .partybtns{display:flex;gap:6px;margin-top:6px}.hud .party .partybtns button{flex:1;cursor:pointer;font-size:12px;padding:5px 8px;background:#4a4020;color:#f0e6c8;border:1px solid #6a5a32;border-radius:5px}.hud .party .partybtns .disbandparty{background:#5a2a2a;border-color:#8a4a4a}.hud .chatpanel{position:absolute;bottom:12px;left:12px;width:460px;max-width:44vw;display:flex;flex-direction:column;background:#14100cb8;border:1px solid rgba(184,137,58,.4);border-radius:8px;overflow:hidden;pointer-events:auto}.hud .chattabs{display:flex;gap:2px;padding:4px 4px 0}.hud .chattabs .ctab{flex:1;font-family:inherit;font-size:11px;padding:4px 6px;cursor:pointer;background:#0000004d;color:#c9b88f;border:1px solid transparent;border-bottom:none;border-radius:5px 5px 0 0}.hud .chattabs .ctab.active{background:#4a402099;color:#f0e6c8;border-color:#b8893a80}.hud .chattabs .ctab.unread{color:#ffd86a}.hud .chattabs .ctab.unread:after{content:" ●";color:#ff6060;font-size:9px}.hud .chatlog{height:25vh;min-height:110px;overflow-y:auto;padding:6px 8px;display:flex;flex-direction:column;gap:2px}.hud .chatlog .msg{background:none;border:none;padding:1px 0;font-size:12.5px;animation:none;opacity:1}.hud .chatlog .msg.cmb{font-size:11.5px}.hud .chatlog .msg.cmb.out{color:#ffce9a}.hud .chatlog .msg.cmb.in{color:#ff9a9a}.hud .chatpanel .chatbar{position:static;padding:4px;width:auto;transform:none}.hud .chatpanel .chatbar input{width:100%}.hud .menuvol{margin:10px 0 4px;display:flex;flex-direction:column;gap:8px}.hud .menuvol label{display:flex;align-items:center;gap:8px;font-size:13px;color:#e0d3aa}.hud .menuvol .vmval{min-width:38px;text-align:right;color:#c9b88f;font-size:12px}.hud .menuvol input[type=range]{flex:1;accent-color:#b8893a;cursor:pointer}.builder .abilhi{margin:2px 0 6px;font-size:12px}.builder .abilhi .ablabel{color:#cdbf98;margin-right:6px}.builder .abilhi .abchip{display:inline-block;margin:2px 4px 2px 0;padding:2px 8px;border-radius:999px;background:#b8893a2e;border:1px solid rgba(184,137,58,.5);color:#f0e6c8;cursor:help}.builder .abilhi .abnote{margin-top:4px;color:#9aa07a;font-style:italic;font-size:11px}.hud .detmeter{position:absolute;top:70px;left:50%;transform:translate(-50%);width:200px;display:none;text-align:center;pointer-events:none}.hud .detmeter.show{display:block}.hud .detmeter .detlabel{font-size:12px;color:#e0c060;text-shadow:0 1px 2px #000}.hud .detmeter.hot .detlabel{color:#ff6a5a}.hud .detmeter .detbar{height:7px;margin-top:2px;border-radius:4px;background:#0000008c;border:1px solid #6a5a32;overflow:hidden}.hud .detmeter .detfill{height:100%;width:0%;background:linear-gradient(#e0c060,#b07020);transition:width .2s}.hud .detmeter.hot .detfill{background:linear-gradient(#ff8a5a,#c02020)}.hud button,.menupanel button,.dialog button{font-family:inherit;cursor:pointer;transition:filter .12s,border-color .12s,background .12s}.menupanel button,.dialog button,.hud .wrow button,.hud .rvr .conch{font-size:13px;padding:8px 14px;border-radius:6px;font-weight:700}.hud .window button,.hud .cbody button,.maptools button,.hud .party .partybtns button,.leaveparty{font-size:12px;padding:6px 11px;border-radius:6px}.hud .ctab{font-size:12px;padding:6px 9px;border-radius:6px 6px 0 0}.menubtn,.hud .musicbtn{width:38px;height:38px;font-size:18px;border-radius:8px}.hud .pvpbtn{height:38px;border-radius:8px}.mmzoom button{width:22px;height:22px;font-size:14px;border-radius:6px}.nplate .pltitle{display:block;text-align:center;font-size:11px;color:#e0c068;font-style:italic;text-shadow:0 1px 2px #000;margin-top:-1px}.nplate .pvpflag{color:#ff7a5a}.hud .titlepick{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 8px}.hud .titlepick button{font-size:12px;padding:5px 11px;border-radius:6px;background:#4a4020;color:#f0e6c8;border:1px solid #6a5a32;cursor:pointer}.hud .titlepick button.sel{background:linear-gradient(#caa24a,#9a6f22);color:#1a1410;border-color:var(--gold-2);font-weight:700}.hud .achrow{padding:6px 0;border-bottom:1px solid rgba(106,90,50,.35)}.hud .achhead{display:flex;align-items:center;gap:6px}.hud .achbar{height:6px;margin:4px 0 2px;border-radius:3px;background:#00000080;border:1px solid #6a5a32;overflow:hidden}.hud .achfill{height:100%;background:linear-gradient(#e0c060,#b07020)}.hud .achtoast{position:absolute;top:112px;left:50%;transform:translate(-50%) translateY(-8px);min-width:280px;max-width:70vw;padding:10px 18px;background:linear-gradient(#281e10f5,#1a140cf5);border:1px solid var(--gold-2);border-radius:10px;color:#f4ead0;text-align:center;box-shadow:0 8px 30px #00000080;opacity:0;pointer-events:none;z-index:30}.hud .achtoast b{color:var(--gold-2);display:block;font-size:15px}.hud .achtoast span{font-size:11px;color:#cfc18a}.hud .achtoast.show{animation:achpop 4s ease forwards}@keyframes achpop{0%{opacity:0;transform:translate(-50%) translateY(-8px)}8%{opacity:1;transform:translate(-50%) translateY(0)}82%{opacity:1}to{opacity:0;transform:translate(-50%) translateY(-8px)}}
