:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-obsidian-950:#0b0a09;--color-obsidian-900:#12100e;--color-obsidian-800:#1a1713;--color-obsidian-700:#25211b;--color-obsidian-600:#342e25;--color-obsidian-500:#4a4235;--color-bone-100:#f3ead4;--color-bone-200:#e6dbc1;--color-bone-300:#cfc3a6;--color-bone-400:#a99f87;--color-bone-500:#8a8169;--color-jade-300:#7fe0c8;--color-jade-400:#45c2a6;--color-jade-500:#25957f;--color-jade-700:#124c42;--color-ember-300:#ffa36b;--color-ember-400:#f2793a;--color-ember-500:#d95a1f;--color-ember-700:#7a2f10;--color-gold-300:#f4d27a;--color-gold-400:#e0b24a;--color-gold-500:#b98a2c;--color-gold-700:#6d4f17;--color-danger-400:#f0594a;--color-danger-500:#cf3a2e;--color-danger-700:#7c1e17;--color-success-400:#9bd25f;--color-success-500:#6fae3c;--color-success-700:#38591d;--surface-scrim:#0b0a099e;--surface-panel:#12100edb;--surface-panel-solid:var(--color-obsidian-900);--surface-raised:var(--color-obsidian-800);--surface-inset:#0b0a09b8;--surface-hover:var(--color-obsidian-700);--surface-active:var(--color-obsidian-600);--text:var(--color-bone-100);--text-muted:var(--color-bone-400);--text-on-accent:var(--color-obsidian-950);--text-gold:var(--color-gold-300);--text-danger:var(--color-danger-400);--text-success:var(--color-success-400);--border-frame:var(--color-gold-700);--border-frame-strong:var(--color-gold-500);--border-hair:var(--color-obsidian-600);--accent:var(--color-ember-400);--focus-ring:var(--color-gold-300);--focus-halo:var(--color-obsidian-950);--hp:var(--color-danger-500);--hp-hi:var(--color-danger-400);--mp:var(--color-jade-500);--mp-hi:var(--color-jade-400);--xp:var(--color-gold-400);--pass:var(--color-ember-400);--chat-all:var(--color-bone-200);--chat-trade:var(--color-gold-300);--chat-party:var(--color-jade-300);--chat-guild:var(--color-ember-300);--chat-system:var(--color-bone-400);--font-display:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--font-ui:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--fs-xs:.75rem;--fs-sm:.8125rem;--fs-md:.875rem;--fs-lg:1rem;--fs-xl:1.25rem;--fs-2xl:1.625rem;--fs-3xl:2.25rem;--lh-tight:1.15;--lh-ui:1.35;--lh-body:1.5;--tracking-caps:.08em;--fw-regular:450;--fw-medium:560;--fw-bold:700;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--sp-8:4rem;--hud-margin:var(--sp-4);--hit-min:2.75rem;--r-xs:2px;--r-sm:4px;--r-md:8px;--r-lg:14px;--r-pill:999px;--bw-hair:1px;--bw-frame:2px;--bw-focus:3px;--shadow-panel:0 6px 18px #0000008c, 0 1px 0 #ffffff0a inset;--shadow-slot:0 2px 6px #0009, 0 0 0 1px #00000080;--shadow-inset:inset 0 1px 3px #000000b3;--glow-ember:0 0 14px #f2793a8c;--glow-jade:0 0 12px #45c2a680;--glow-gold:0 0 12px #e0b24a80;--glow-danger:0 0 16px #f0594aa6;--text-shadow-hud:0 1px 2px #000000e6, 0 0 6px #0009;--blur-scrim:8px;--alpha-disabled:.45;--alpha-dim:.7;--alpha-ghost:.35;--z-scene:0;--z-world-ui:10;--z-vignette:5;--z-hud:20;--z-panel:30;--z-toast:40;--z-banner:50;--z-debug:60;--z-modal:70;--z-loading:100;--dur-instant:80ms;--dur-fast:.14s;--dur-base:.22s;--dur-slow:.36s;--dur-ambient:1.6s;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-snap:cubic-bezier(.3, 1.4, .5, 1);--motion-ambient:running;--bp-tablet:1024px;--bp-mobile:640px;--slot-size:3.5rem;--slot-gap:var(--sp-1);--bar-h:1.125rem}@media (max-width:1100px){:root{--slot-size:3.25rem;--hud-margin:var(--sp-3)}}@media (min-width:1900px){html{font-size:18px}}@media (prefers-reduced-motion:reduce){:root{--dur-instant:1ms;--dur-fast:1ms;--dur-base:1ms;--dur-slow:1ms;--dur-ambient:1ms;--motion-ambient:paused}}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html,body{background:var(--color-obsidian-950);overscroll-behavior:none;height:100%;margin:0;overflow:hidden}body{color:var(--text);font:var(--fw-regular) var(--fs-md) / var(--lh-ui) var(--font-ui);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}#app{position:fixed;inset:0}.scene{z-index:var(--z-scene);touch-action:none;cursor:crosshair;width:100%;height:100%;display:block;position:absolute;inset:0}.scene:focus-visible{outline-offset:-6px}.scene.is-locked{cursor:none}.pointer-hint{left:50%;bottom:calc(var(--hud-margin) + 6.25rem);z-index:15;border:1px solid var(--border-frame-strong);border-radius:var(--r-pill);color:var(--text);font:500 var(--fs-xs) / 1 var(--font-ui);box-shadow:var(--shadow-panel);pointer-events:none;transition:opacity var(--dur-base) var(--ease-out), visibility var(--dur-base);background:#0b0a09d6;align-items:center;gap:.45rem;padding:.45rem .8rem;display:flex;position:fixed;transform:translate(-50%)}.pointer-hint kbd{border:1px solid var(--border-frame);border-radius:var(--r-xs);color:var(--text-gold);font:600 .7rem / 1 var(--font-mono);padding:.1rem .3rem}body[data-pointer-locked=true] .pointer-hint,body[data-pointer-hint=off] .pointer-hint{opacity:0;visibility:hidden}@media (pointer:coarse){.pointer-hint{display:none}}@media (max-width:640px){.pointer-hint{bottom:calc(var(--hud-margin) + 10rem)}}@media (prefers-reduced-motion:reduce){.pointer-hint{transition:none}}.reticle{z-index:16;pointer-events:none;opacity:0;width:18px;height:18px;transition:opacity var(--dur-fast) var(--ease-out);position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.reticle:before,.reticle:after{content:"";background:var(--gold-300);position:absolute;box-shadow:0 0 3px #000000e6}.reticle:before{width:1px;height:100%;top:0;left:50%;transform:translate(-50%)}.reticle:after{width:100%;height:1px;top:50%;left:0;transform:translateY(-50%)}.reticle span{border:1px solid var(--gold-300);border-radius:50%;width:4px;height:4px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}body[data-pointer-locked=true] .reticle{opacity:1}@media (pointer:coarse){.reticle{display:none}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}:where(button,input,select,textarea,[tabindex]):focus-visible{outline:var(--bw-focus) solid var(--focus-ring);outline-offset:2px;box-shadow:0 0 0 calc(var(--bw-focus) + 2px) var(--focus-halo)}.icon{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1.25em;height:1.25em}.btn,.icon-btn,.select{font:var(--fw-medium) var(--fs-sm) / 1 var(--font-ui);color:var(--text);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), transform var(--dur-instant) var(--ease-out)}.btn{justify-content:center;align-items:center;gap:var(--sp-2);min-height:2rem;padding:var(--sp-1) var(--sp-3);background:linear-gradient(180deg, var(--color-obsidian-700), var(--color-obsidian-800));border:var(--bw-hair) solid var(--border-frame-strong);border-radius:var(--r-sm);display:inline-flex}.btn--sm{min-height:1.75rem;padding:var(--sp-1) var(--sp-2)}.btn:hover{background:linear-gradient(180deg, var(--color-obsidian-600), var(--color-obsidian-700));border-color:var(--color-gold-400)}.btn:active{background:var(--surface-active);transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:var(--alpha-disabled);cursor:not-allowed}.icon-btn{border:var(--bw-hair) solid transparent;border-radius:var(--r-sm);width:1.75rem;height:1.75rem;color:var(--text-muted);background:0 0;place-items:center;padding:0;display:inline-grid}.icon-btn:hover{color:var(--text);background:var(--surface-hover);border-color:var(--border-frame)}.icon-btn:active{transform:translateY(1px)}.icon-btn[aria-pressed=true]{color:var(--text-gold);border-color:var(--color-gold-400);background:var(--surface-active)}.icon-btn .icon{width:1.1rem;height:1.1rem}.select{appearance:none;min-width:0;padding:var(--sp-1) 1.6rem var(--sp-1) var(--sp-2);background:linear-gradient(45deg, transparent 50%, var(--text-muted) 50%) calc(100% - .85rem) 55% / .35rem .35rem no-repeat, linear-gradient(135deg, transparent 50%, var(--text-muted) 50%) calc(100% - .5rem) 55% / .35rem .35rem no-repeat, var(--surface-inset);border:var(--bw-hair) solid var(--border-frame-strong);border-radius:var(--r-sm);min-height:1.75rem}.select:hover{border-color:var(--color-gold-400)}@media (pointer:coarse){.btn,.btn--sm,.icon-btn,.select{min-height:var(--hit-min)}.icon-btn{width:var(--hit-min);height:var(--hit-min)}}.loading,.fatal{z-index:var(--z-loading);background:radial-gradient(ellipse at 50% 40%, var(--color-obsidian-700), var(--color-obsidian-950) 70%);place-items:center;display:grid;position:fixed;inset:0}.loading{transition:opacity var(--dur-slow) var(--ease-in-out), visibility 0s linear var(--dur-slow)}.loading[data-done=true]{opacity:0;visibility:hidden;pointer-events:none}.loading__card,.fatal__card{justify-items:center;gap:var(--sp-3);padding:var(--sp-6);text-align:center;display:grid}.loading__title{font:var(--fw-bold) var(--fs-2xl) / 1 var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:var(--text-gold);margin:0}.loading__text{max-width:28rem;color:var(--text-muted);margin:0}.loading__sigil{border:3px solid var(--color-gold-700);border-top-color:var(--color-ember-400);border-radius:50%;width:4.5rem;height:4.5rem;animation:2.4s linear infinite spin;position:relative}.loading__sigil:after{content:"";border:2px solid var(--color-gold-400);position:absolute;inset:1.2rem;transform:rotate(45deg)}.loading__bar{background:var(--surface-inset);border:var(--bw-hair) solid var(--border-frame);border-radius:var(--r-pill);width:14rem;height:.4rem;overflow:hidden}.loading__bar>span{background:linear-gradient(90deg, var(--color-ember-500), var(--color-gold-400));width:40%;height:100%;animation:slide 1.4s var(--ease-in-out) infinite;display:block}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(250%)}}@media (prefers-reduced-motion:reduce){.loading__sigil,.loading__bar>span{animation:none}.loading__bar>span{width:100%}}.hud{z-index:var(--z-hud);gap:var(--sp-2);padding:max(var(--hud-margin), env(safe-area-inset-top)) max(var(--hud-margin), env(safe-area-inset-right)) max(var(--hud-margin), env(safe-area-inset-bottom)) max(var(--hud-margin), env(safe-area-inset-left));pointer-events:none;-webkit-user-select:none;user-select:none;--chat-h:8.5rem;grid-template:"tl tc tr"". . ."minmax(0,1fr)"bl bc br"/minmax(0,1fr) auto minmax(0,1fr);display:grid;position:absolute;inset:0}.hud__zone{gap:var(--sp-2);pointer-events:none;flex-direction:column;min-width:0;display:flex}.hud__zone--tl{grid-area:tl;place-self:start;width:100%;max-width:22rem}.hud__zone--tc{grid-area:tc;align-self:start;width:24rem;max-width:100%}.hud__zone--tr{grid-area:tr;place-self:start end;width:15rem;max-width:100%}.hud__zone--bl{grid-area:bl;place-self:end start;width:100%;max-width:26rem}.hud__zone--bc{grid-area:bc;align-self:end}.hud__zone--br{grid-area:br;place-self:end}.panel,.hotbar,.menubar__list{pointer-events:auto;color:var(--text);background:linear-gradient(180deg, var(--color-obsidian-800), var(--surface-panel));border:var(--bw-hair) solid var(--border-frame);border-radius:var(--r-sm);box-shadow:var(--shadow-panel);--corner:var(--color-gold-400);position:relative}.panel{padding:var(--sp-2) var(--sp-3)}.panel:before,.hotbar:before,.menubar__list:before{content:"";pointer-events:none;background:linear-gradient(var(--corner), var(--corner)) 0 0 / .75rem 2px, linear-gradient(var(--corner), var(--corner)) 0 0 / 2px .75rem, linear-gradient(var(--corner), var(--corner)) 100% 0 / .75rem 2px, linear-gradient(var(--corner), var(--corner)) 100% 0 / 2px .75rem, linear-gradient(var(--corner), var(--corner)) 0 100% / .75rem 2px, linear-gradient(var(--corner), var(--corner)) 0 100% / 2px .75rem, linear-gradient(var(--corner), var(--corner)) 100% 100% / .75rem 2px, linear-gradient(var(--corner), var(--corner)) 100% 100% / 2px .75rem;border-radius:inherit;background-repeat:no-repeat;position:absolute;inset:-1px}.panel__head{align-items:center;gap:var(--sp-2);display:flex}.panel__head-icon{color:var(--text-gold)}.panel__title{font:var(--fw-bold) var(--fs-sm) / 1 var(--font-ui);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-gold);margin:0 auto 0 0}.bar{--bar-color:var(--color-bone-400);--bar-pattern:none;align-items:center;gap:var(--sp-1);height:var(--bar-h);font-size:var(--fs-xs);background:var(--surface-inset);border:var(--bw-hair) solid var(--color-obsidian-950);border-radius:var(--r-xs);box-shadow:var(--shadow-inset);line-height:1;display:flex;position:relative;overflow:hidden}.bar__track{position:absolute;inset:0}.bar__fill{width:calc(var(--fill,0) * 100%);background:var(--bar-color);transition:width var(--dur-base) var(--ease-out);position:absolute;inset:0 auto 0 0}.bar__fill:after{content:"";background:var(--bar-pattern);opacity:.4;position:absolute;inset:0}.bar__glyph{margin-left:var(--sp-1);color:var(--color-bone-100);filter:drop-shadow(0 0 2px var(--color-obsidian-950));display:grid;position:relative}.bar__glyph .icon{width:.9rem;height:.9rem}.bar__text{margin:0 var(--sp-1) 0 auto;padding:.12rem var(--sp-1);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;color:var(--text);border-radius:var(--r-xs);white-space:nowrap;background:#0b0a09a8;position:relative}.bar__flag{padding:.12rem var(--sp-1);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);color:var(--color-obsidian-950);background:var(--color-gold-300);border-radius:var(--r-xs);align-items:center;gap:.15rem;display:inline-flex;position:relative}.bar__flag .icon{width:.8rem;height:.8rem}.bar--hp{--bar-color:linear-gradient(180deg, var(--hp-hi), var(--hp));--bar-pattern:repeating-linear-gradient(135deg, #0000008c 0 2px, transparent 2px 7px)}.bar--mp{--bar-color:linear-gradient(180deg, var(--mp-hi), var(--mp));--bar-pattern:radial-gradient(circle, #0009 1px, transparent 1.4px) 0 0 / 6px 6px}.bar--xp{--bar-color:linear-gradient(180deg, var(--color-gold-300), var(--xp));--bar-pattern:repeating-linear-gradient(90deg, #00000080 0 1px, transparent 1px 10%);height:.9rem}.bar--pass{--bar-color:linear-gradient(180deg, var(--color-ember-300), var(--pass));--bar-pattern:repeating-linear-gradient(45deg, #0006 0 3px, transparent 3px 8px);height:.9rem}.bar[data-low=true]{border-color:var(--color-danger-400);box-shadow:var(--shadow-inset), var(--glow-danger);animation:low-pulse var(--dur-ambient) var(--ease-in-out) infinite alternate}@keyframes low-pulse{to{box-shadow:var(--shadow-inset), 0 0 4px #f0594a40}}.vitals{align-items:center;gap:var(--sp-3);grid-template-columns:auto minmax(0,1fr);display:grid}.vitals[data-low=true]{border-color:var(--color-danger-400);--corner:var(--color-danger-400)}.vitals__portrait{background:radial-gradient(circle at 50% 30%, var(--color-obsidian-500), var(--color-obsidian-900));border:var(--bw-frame) solid var(--border-frame-strong);width:3.75rem;height:3.75rem;box-shadow:var(--shadow-slot);border-radius:50%;place-items:center;display:grid;position:relative}.vitals__portrait-icon{width:2rem;height:2rem;color:var(--color-bone-300)}.vitals__level-badge{min-width:1.6rem;height:1.5rem;padding:0 var(--sp-1);font:var(--fw-bold) var(--fs-md) / 1 var(--font-display);color:var(--text-on-accent);background:linear-gradient(180deg, var(--color-gold-300), var(--color-gold-500));border:var(--bw-hair) solid var(--color-obsidian-950);border-radius:var(--r-sm);box-shadow:var(--shadow-slot);place-items:center;display:grid;position:absolute;bottom:-.2rem;right:-.35rem}.vitals__body{flex-direction:column;gap:.2rem;min-width:0;display:flex}.vitals__head{align-items:baseline;gap:var(--sp-2);min-width:0;display:flex}.vitals__name{font:var(--fw-bold) var(--fs-lg) / 1.1 var(--font-display);text-overflow:ellipsis;white-space:nowrap;text-shadow:var(--text-shadow-hud);overflow:hidden}.vitals__sub{font-size:var(--fs-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted)}.pass{flex-direction:column;gap:.35rem;display:flex}.pass__head{align-items:center;gap:var(--sp-2);display:flex}.pass__tier{padding:.1rem var(--sp-2);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;background:var(--color-ember-700);border:var(--bw-hair) solid var(--color-ember-400);border-radius:var(--r-pill);align-items:center;gap:.2rem;display:inline-flex}.pass__titles{flex-direction:column;min-width:0;line-height:1.15;display:flex}.pass__name{font-size:var(--fs-sm);font-weight:var(--fw-bold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pass__days{font-size:var(--fs-xs);color:var(--text-muted)}.pass__foot{justify-content:space-between;align-items:center;gap:var(--sp-2);font-size:var(--fs-xs);color:var(--text-muted);display:flex}.pass__next{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.target{flex-direction:column;gap:.3rem;display:flex}.target[data-rank=metin]{border-color:var(--color-ember-500);--corner:var(--color-ember-400)}.target__head{align-items:center;gap:var(--sp-2);min-width:0;display:flex}.target__rank{color:var(--accent);display:grid}.target__name{font:var(--fw-bold) var(--fs-lg) / 1.1 var(--font-display);text-overflow:ellipsis;white-space:nowrap;text-shadow:var(--text-shadow-hud);overflow:hidden}.target__meta{font-size:var(--fs-sm);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin-left:auto;overflow:hidden}.chips{gap:var(--sp-1);margin:0;padding:0;list-style:none;display:flex}.chip{background:var(--surface-inset);border:var(--bw-hair) solid var(--border-frame);border-radius:var(--r-xs);place-items:center;width:1.6rem;height:1.6rem;display:grid;position:relative}.chip .icon{width:1rem;height:1rem}.chip--buff{color:var(--color-jade-300);border-color:var(--color-jade-500)}.chip--debuff{color:var(--text-danger);border:var(--bw-hair) dashed var(--color-danger-400)}.chip__time{font:var(--fw-bold) var(--fs-xs) / 1.1 var(--font-mono);color:var(--text);background:var(--color-obsidian-950);border-radius:var(--r-xs);padding:0 2px;position:absolute;bottom:-.45rem;right:-.15rem}.status{align-items:center;gap:var(--sp-2) var(--sp-3);padding:var(--sp-1) var(--sp-2);flex-wrap:wrap;display:flex}.currency{gap:var(--sp-1) var(--sp-3);flex-wrap:wrap;margin:0 auto 0 0;padding:0;list-style:none;display:flex}.currency__item{font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;align-items:center;gap:.3rem;display:inline-flex}.currency__item--gold{color:var(--text-gold)}.currency__item--premium{color:var(--color-jade-300)}.conn{font-size:var(--fs-xs);color:var(--text-success);align-items:center;gap:.25rem;display:inline-flex}.conn__icon{display:grid}.conn[data-conn=reconnecting]{color:var(--color-ember-300)}.conn[data-conn=offline]{color:var(--text-danger)}.hud:not([data-layout=mobile]) .status .conn{flex-basis:100%;order:3}.hud:not([data-layout=mobile]) .status .icon-btn{margin-left:auto}.hud:not([data-layout=mobile]) .currency{margin:0}.minimap{--mm:9rem;align-items:center;gap:var(--sp-2);padding:var(--sp-2);flex-direction:column;display:flex}.minimap__frame{width:calc(var(--mm) + 2.2rem);height:calc(var(--mm) + 2.2rem);place-items:center;display:grid;position:relative}.minimap__disc{width:var(--mm);height:var(--mm);background:var(--color-obsidian-900);border:var(--bw-frame) solid var(--border-frame-strong);box-shadow:var(--shadow-inset), 0 0 0 3px var(--color-obsidian-950);border-radius:50%;position:relative;overflow:hidden}.minimap__world{width:calc(var(--mm) * 2);height:calc(var(--mm) * 2);margin:calc(var(--mm) * -1) 0 0 calc(var(--mm) * -1);transform:rotate(var(--heading,0deg)) translate(calc(var(--nx,0) * -100%), calc(var(--nz,0) * -100%));will-change:transform;position:absolute;top:50%;left:50%}.minimap__canvas{width:100%;height:100%;display:block}.minimap__marker{top:calc(var(--mz,.5) * 100%);left:calc(var(--mx,.5) * 100%);width:1.3rem;height:1.3rem;color:var(--color-ember-300);filter:drop-shadow(0 0 2px var(--color-obsidian-950)) drop-shadow(0 0 4px var(--color-obsidian-950));transform:rotate(calc(var(--heading,0deg) * -1));margin:-.65rem 0 0 -.65rem;display:grid;position:absolute}.minimap__marker .icon{stroke-width:2.4px;width:100%;height:100%}.minimap__compass{pointer-events:none;transform:rotate(var(--heading,0deg));margin:0;padding:0;list-style:none;position:absolute;inset:0}.minimap__compass li{width:1rem;height:1rem;font:var(--fw-bold) var(--fs-xs) / 1 var(--font-display);color:var(--text-muted);transform:rotate(var(--a)) translateY(calc(var(--mm) / -2 - .55rem)) rotate(calc(var(--a) * -1 - var(--heading,0deg)));place-items:center;margin:-.5rem 0 0 -.5rem;display:grid;position:absolute;top:50%;left:50%}.minimap__compass li.is-north{color:var(--color-ember-300)}.minimap__player{border-right:.4rem solid #0000;border-bottom:.9rem solid var(--color-bone-100);width:0;height:0;filter:drop-shadow(0 0 2px var(--color-obsidian-950)) drop-shadow(0 0 1px var(--color-obsidian-950));border-left:.4rem solid #0000;position:absolute;top:50%;left:50%;transform:translate(-50%,-55%)}.minimap__row{align-items:center;gap:var(--sp-2);width:100%;display:flex}.minimap__row .select{flex:1}.minimap__coords{font:var(--fs-xs) / 1 var(--font-mono);color:var(--text-muted);white-space:nowrap}.quest{margin-top:var(--sp-2)}.quest__title{font:var(--fw-bold) var(--fs-md) / 1.2 var(--font-display);margin:0}.quest__zone{font-size:var(--fs-xs);color:var(--text-muted);margin:.1rem 0 .25rem}.quest__objectives{gap:.15rem;margin:0;padding:0;list-style:none;display:grid}.objective{gap:var(--sp-2);font-size:var(--fs-sm);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;display:grid}.objective__mark{color:var(--text-muted);margin-top:.1rem}.objective__count{font-variant-numeric:tabular-nums;color:var(--text-gold)}.objective[data-done=true] .objective__mark{color:var(--text-success)}.objective[data-done=true] .objective__text{color:var(--text-muted);text-decoration:line-through}.chat{gap:var(--sp-1);width:100%;padding:var(--sp-1) var(--sp-2) var(--sp-2);flex-direction:column;display:flex}.chat__title{display:none}.chat[data-collapsed=true] .chat__title{display:block}.chat[data-collapsed=true] .tabs{display:none}.tabs{gap:.15rem;margin-right:auto;display:flex}.tab{min-height:1.75rem;padding:.2rem var(--sp-2);font:var(--fw-medium) var(--fs-sm) / 1 var(--font-ui);color:var(--text-muted);cursor:pointer;border-radius:var(--r-xs) var(--r-xs) 0 0;background:0 0;border:0;border-bottom:2px solid #0000}.tab:hover{color:var(--text);background:var(--surface-hover)}.tab[aria-selected=true]{color:var(--text-gold);background:var(--surface-inset);border-bottom-color:var(--color-gold-400)}.chat__body{gap:var(--sp-1);flex-direction:column;display:flex}.chat__log{height:var(--chat-h);padding:var(--sp-1) var(--sp-2);overscroll-behavior:contain;font-size:var(--fs-sm);-webkit-user-select:text;user-select:text;background:var(--surface-inset);border-radius:var(--r-xs);scrollbar-color:var(--color-gold-700) transparent;scrollbar-width:thin;margin:0;line-height:1.4;list-style:none;overflow-y:auto}.msg{--msg-c:var(--chat-all);overflow-wrap:anywhere}.msg--trade{--msg-c:var(--chat-trade)}.msg--party{--msg-c:var(--chat-party)}.msg--guild{--msg-c:var(--chat-guild)}.msg--system{--msg-c:var(--chat-system);font-style:italic}.msg__time{font-size:var(--fs-xs);font-variant-numeric:tabular-nums;color:var(--text-muted);margin-right:.35rem}.msg__tag,.msg__author{font-weight:var(--fw-bold);color:var(--msg-c);margin-right:.25rem}.chat__input{width:100%;min-height:1.9rem;padding:.25rem var(--sp-2);font:inherit;font-size:var(--fs-sm);color:var(--text);-webkit-user-select:text;user-select:text;background:var(--surface-inset);border:var(--bw-hair) solid var(--border-frame-strong);border-radius:var(--r-xs)}.chat__input::placeholder{color:var(--text-muted)}.chat__input:hover{border-color:var(--color-gold-400)}.hotbar{grid-template-columns:repeat(var(--slot-cols,8), var(--slot-size));gap:var(--slot-gap);padding:.4rem;display:grid}.slot{width:var(--slot-size);height:var(--slot-size);color:var(--color-bone-200);cursor:pointer;background:radial-gradient(circle at 50% 28%, var(--color-obsidian-600), var(--color-obsidian-900) 80%);border:var(--bw-frame) solid var(--border-frame-strong);border-radius:var(--r-sm);box-shadow:var(--shadow-slot);transition:transform var(--dur-fast) var(--ease-snap), border-color var(--dur-fast) var(--ease-out);place-items:center;padding:0;display:grid;position:relative}.slot:hover{border-color:var(--color-gold-400);transform:translateY(-2px)}.slot:active{transform:scale(.95)}.slot__icon{display:grid}.slot__icon .icon{width:1.8rem;height:1.8rem}.slot__key,.slot__cost{font:var(--fw-bold) var(--fs-xs) / 1 var(--font-mono);text-shadow:0 0 3px var(--color-obsidian-950), 0 1px 1px var(--color-obsidian-950);align-items:center;display:inline-flex;position:absolute}.slot__key{color:var(--color-bone-100);top:2px;left:4px}.slot__cost{color:var(--color-jade-300);gap:1px;bottom:2px;right:3px}.slot__cost-icon{width:.65rem;height:.65rem}.slot__sweep{border-radius:calc(var(--r-sm) - 1px);background:conic-gradient(from 0deg, #0b0a09c7 calc(var(--cd,0) * 360deg), transparent 0);pointer-events:none;position:absolute;inset:0}.slot__cd-text{font:var(--fw-bold) var(--fs-xl) / 1 var(--font-display);color:var(--color-bone-100);text-shadow:0 0 4px var(--color-obsidian-950), 0 1px 2px var(--color-obsidian-950);pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.slot__lock{color:var(--color-bone-100);display:grid;position:absolute;top:3px;right:3px}.slot__lock .icon{width:.9rem;height:.9rem}.slot[data-state=cooldown] .slot__icon{opacity:.4;filter:grayscale()}.slot[data-state=nomana]{border-color:var(--color-jade-700)}.slot[data-state=nomana] .slot__icon{opacity:.5}.slot[data-state=nomana] .slot__cost{color:var(--text-danger)}.slot[data-state=nomana]:after{content:"";pointer-events:none;background:linear-gradient(135deg, transparent 46%, var(--color-danger-400) 46% 54%, transparent 54%);opacity:.85;position:absolute;inset:3px}.slot[data-state=locked] .slot__icon,.slot[data-state=offline] .slot__icon{opacity:.35}.slot[data-state=locked],.slot[data-state=offline],.slot[data-state=cooldown],.slot[data-state=nomana]{cursor:not-allowed}.slot[data-state=locked]:hover,.slot[data-state=offline]:hover,.slot[data-state=cooldown]:hover,.slot[data-state=nomana]:hover{border-color:var(--border-frame-strong);transform:none}.slot__tip{z-index:var(--z-panel);min-width:9rem;padding:var(--sp-1) var(--sp-2);font-size:var(--fs-xs);color:var(--text);text-align:left;white-space:nowrap;pointer-events:none;background:var(--color-obsidian-950);border:var(--bw-hair) solid var(--border-frame-strong);border-radius:var(--r-sm);flex-direction:column;gap:.15rem;line-height:1.25;display:none;position:absolute;bottom:calc(100% + .6rem);left:50%;transform:translate(-50%)}.slot__tip strong{font-size:var(--fs-sm);color:var(--text-gold)}.slot:hover .slot__tip,.slot:focus-visible .slot__tip{display:flex}.menubar{position:relative}.menu-toggle{display:none}.menubar__list{gap:var(--sp-1);padding:.3rem;display:flex}.menu-btn{width:3.75rem;color:var(--color-bone-200);cursor:pointer;border:var(--bw-hair) solid transparent;border-radius:var(--r-sm);transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:0 0;align-content:center;place-items:center;gap:.1rem;padding:.35rem .2rem .3rem;display:grid;position:relative}.menu-btn:hover{background:var(--surface-hover);border-color:var(--border-frame)}.menu-btn:active{background:var(--surface-active)}.menu-btn[aria-pressed=true]{color:var(--text-gold);background:var(--surface-active);border-color:var(--color-gold-400);box-shadow:inset 0 -3px 0 var(--color-gold-400)}.menu-btn__icon{display:grid;position:relative}.menu-btn__icon .icon{width:1.5rem;height:1.5rem}.menu-btn__label{font-size:var(--fs-xs);line-height:1.1}.menu-btn__key{font:var(--fw-bold) var(--fs-xs) / 1 var(--font-mono);color:var(--text-muted);position:absolute;top:2px;right:4px}.menu-btn__badge{min-width:1rem;height:1rem;font:var(--fw-bold) var(--fs-xs) / 1rem var(--font-ui);color:var(--color-obsidian-950);text-align:center;background:var(--color-ember-400);border-radius:var(--r-pill);padding:0 .2rem;position:absolute;top:-.35rem;right:-.6rem}.toasts{pointer-events:none;flex-direction:column;gap:.4rem;display:flex}.toast{--toast-c:var(--color-gold-400);gap:var(--sp-2);padding:var(--sp-2);pointer-events:auto;background:var(--color-obsidian-900);border:var(--bw-hair) solid var(--toast-c);border-radius:var(--r-sm);box-shadow:var(--shadow-panel);animation:toast-in var(--dur-slow) var(--ease-snap);border-left-width:4px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;display:grid}.toast--success{--toast-c:var(--color-success-500)}.toast--warn{--toast-c:var(--color-ember-400)}.toast--danger{--toast-c:var(--color-danger-400)}.toast--info{--toast-c:var(--color-jade-400)}.toast__icon{color:var(--toast-c);margin-top:.1rem;display:grid}.toast__text{flex-direction:column;gap:.1rem;min-width:0;display:flex}.toast__title{font-size:var(--fs-md);line-height:1.2}.toast__body{font-size:var(--fs-sm);color:var(--color-bone-300);line-height:1.3}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)scale(.98)}}.floating{z-index:var(--z-world-ui);pointer-events:none;position:absolute;inset:0;overflow:hidden}.float{--float-life:.95s;top:var(--y);left:var(--x);font:var(--fw-bold) var(--fs-xl) / 1 var(--font-display);color:var(--color-bone-100);white-space:nowrap;text-shadow:0 0 3px var(--color-obsidian-950), 0 2px 2px var(--color-obsidian-950), 0 0 10px var(--color-obsidian-950);animation:float-rise var(--float-life) var(--ease-out) forwards;will-change:transform, opacity;position:absolute;transform:translate(-50%,-50%)}.float--crit{font-size:var(--fs-3xl);color:var(--color-gold-300)}.float--heal{color:var(--color-success-400)}.float--taken{color:var(--color-danger-400)}.float--miss,.float--status{font-size:var(--fs-lg);color:var(--color-bone-300);font-style:italic}.float--xp{font-size:var(--fs-lg);color:var(--color-jade-300)}@keyframes float-rise{0%{opacity:0;transform:translate(-50%,-30%)scale(.7)}12%{opacity:1;transform:translate(-50%,-60%)scale(1.15)}to{opacity:0;transform:translate(calc(-50% + var(--dx,0px)), -260%) scale(1)}}@keyframes float-fade{0%,70%{opacity:1}to{opacity:0}}.vignette{z-index:var(--z-vignette);pointer-events:none;opacity:0;transition:opacity var(--dur-slow) var(--ease-out);background:radial-gradient(#0000 52%,#7c1e1799 100%);position:absolute;inset:0}.vignette[data-active=true]{opacity:1;animation:vignette-pulse var(--dur-ambient) var(--ease-in-out) infinite alternate}@keyframes vignette-pulse{to{opacity:.55}}.banner{z-index:var(--z-banner);align-items:center;gap:var(--sp-3);min-width:min(24rem,100% - 2rem);padding:var(--sp-3) var(--sp-4);pointer-events:auto;background:var(--color-obsidian-950);border:var(--bw-frame) solid var(--color-ember-400);border-radius:var(--r-md);box-shadow:var(--shadow-panel), var(--glow-ember);display:flex;position:absolute;top:22%;left:50%;transform:translate(-50%)}.banner[data-conn=offline]{border-color:var(--color-danger-400);box-shadow:var(--shadow-panel), var(--glow-danger)}.banner__text{flex-direction:column;flex:1;gap:.15rem;display:flex}.banner__title{font:var(--fw-bold) var(--fs-lg) / 1.2 var(--font-display)}.banner__detail{font-size:var(--fs-sm);color:var(--color-bone-300)}.banner__icon{color:var(--text-danger);display:grid}.banner__icon .icon{width:1.6rem;height:1.6rem}.spinner{border:3px solid var(--color-obsidian-500);border-top-color:var(--color-ember-400);border-radius:50%;flex:none;width:1.6rem;height:1.6rem;animation:1s linear infinite spin}.perf{top:50%;left:var(--hud-margin);z-index:var(--z-debug);gap:var(--sp-2);flex-direction:column;width:14rem;display:flex;position:absolute;transform:translateY(-50%)}.perf__grid{gap:.1rem var(--sp-3);font:var(--fs-sm) / 1.35 var(--font-mono);grid-template-columns:auto 1fr;margin:0;display:grid}.perf__grid dt{color:var(--text-muted)}.perf__grid dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.perf__budget{font-size:var(--fs-xs);color:var(--text-muted);margin:0}.perf__actions{gap:var(--sp-1);flex-wrap:wrap;display:flex}.stick{width:7rem;height:7rem;margin-top:var(--sp-2);pointer-events:auto;touch-action:none;border:var(--bw-frame) solid var(--border-frame-strong);background:radial-gradient(circle,#0b0a0980,#0b0a094d);border-radius:50%;flex:none;display:none;position:relative}.stick__knob{background:radial-gradient(circle at 40% 30%, var(--color-gold-300), var(--color-gold-500));border:var(--bw-frame) solid var(--color-obsidian-950);width:3rem;height:3rem;box-shadow:var(--shadow-slot);transform:translate(var(--kx,0px), var(--ky,0px));border-radius:50%;margin:-1.5rem 0 0 -1.5rem;position:absolute;top:50%;left:50%}.stick[data-active=false] .stick__knob{transition:transform var(--dur-fast) var(--ease-out)}.hud[data-conn=reconnecting] .hotbar,.hud[data-conn=offline] .hotbar{filter:saturate(.5)}@media (max-width:1279px){.menubar__list{grid-template-columns:repeat(3,2.75rem);display:grid}.menu-btn{width:2.75rem;height:2.75rem;padding:0}.menu-btn__label,.menu-btn__key{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}}.hud[data-layout=tablet]{--slot-size:3rem;--chat-h:6.5rem}.hud[data-layout=tablet] .hud__zone--tc{width:min(19rem,42vw)}.hud[data-layout=tablet] .hud__zone--tr{width:13.5rem}.hud[data-layout=tablet] .minimap{--mm:7.5rem}.hud[data-layout=tablet] .hud__zone--bl{max-width:19rem}.hud[data-layout=tablet] .pass__foot{display:none}@media (max-width:760px){.hud[data-layout=tablet]{--slot-cols:4}}.hud[data-layout=mobile]{--hud-margin:var(--sp-2);--slot-size:3rem;--chat-h:6rem;grid-template:"tl tr""tc tr"".br"". ."minmax(0,1fr)"bl bl"/minmax(0,1fr) 10.5rem}.hud[data-layout=mobile] .hud__zone--tl,.hud[data-layout=mobile] .hud__zone--tc,.hud[data-layout=mobile] .hud__zone--tr{width:100%;max-width:none}.hud[data-layout=mobile] .panel{padding:var(--sp-1) var(--sp-2)}.hud[data-layout=mobile] .vitals{gap:var(--sp-2)}.hud[data-layout=mobile] .vitals__portrait{width:2.75rem;height:2.75rem}.hud[data-layout=mobile] .vitals__portrait-icon{width:1.5rem;height:1.5rem}.hud[data-layout=mobile] .vitals__sub,.hud[data-layout=mobile] .bar__max,.hud[data-layout=mobile] .pass__titles,.hud[data-layout=mobile] .pass__foot,.hud[data-layout=mobile] .target__meta,.hud[data-layout=mobile] .minimap__coords{display:none}.hud[data-layout=mobile] .vitals__name,.hud[data-layout=mobile] .target__name{font-size:var(--fs-md)}.hud[data-layout=mobile] .minimap{--mm:5.75rem;padding:var(--sp-1)}.hud[data-layout=mobile] .pass{flex-direction:row;align-items:center}.hud[data-layout=mobile] .pass .bar{flex:1;min-width:0}.hud[data-layout=mobile] .pass__tier-max{display:none}.hud[data-layout=mobile] .status{gap:var(--sp-1) var(--sp-2)}.hud[data-layout=mobile] .hud__zone--br{place-self:start end}.hud[data-layout=mobile] .hud__zone--bl{align-self:end;width:10rem;max-width:none}.hud[data-layout=mobile] .chat:not([data-collapsed=true]){right:max(var(--hud-margin), env(safe-area-inset-right));bottom:max(var(--hud-margin), env(safe-area-inset-bottom));left:max(var(--hud-margin), env(safe-area-inset-left));z-index:var(--z-modal);background:var(--surface-panel-solid);--chat-h:9rem;width:auto;position:fixed}.hud[data-layout=mobile] .stick{display:block}.hud[data-layout=mobile] .hud__zone--bc{right:max(var(--hud-margin), env(safe-area-inset-right));bottom:max(var(--hud-margin), env(safe-area-inset-bottom));grid-area:auto;position:absolute}.hud[data-layout=mobile] .hotbar{--p:4.5rem;width:12.5rem;height:12rem;box-shadow:none;background:0 0;border:0;padding:0;display:block}.hud[data-layout=mobile] .hotbar:before{display:none}.hud[data-layout=mobile] .slot{--s:3rem;--r:5.2rem;--a:0deg;right:calc(var(--p) / 2 + cos(var(--a)) * var(--r) - var(--s) / 2);bottom:calc(var(--p) / 2 + sin(var(--a)) * var(--r) - var(--s) / 2);width:var(--s);height:var(--s);background:radial-gradient(circle at 50% 28%, var(--color-obsidian-600), var(--color-obsidian-900) 80%);position:absolute}.hud[data-layout=mobile] .slot:first-child{--s:var(--p);--r:0rem}.hud[data-layout=mobile] .slot:first-child .slot__icon .icon{width:2.4rem;height:2.4rem}.hud[data-layout=mobile] .slot:nth-child(2){--a:0deg}.hud[data-layout=mobile] .slot:nth-child(3){--a:45deg}.hud[data-layout=mobile] .slot:nth-child(4){--a:90deg}.hud[data-layout=mobile] .slot:nth-child(n+5){--r:9.6rem}.hud[data-layout=mobile] .slot:nth-child(5){--a:10deg}.hud[data-layout=mobile] .slot:nth-child(6){--a:35deg}.hud[data-layout=mobile] .slot:nth-child(7){--a:60deg}.hud[data-layout=mobile] .slot:nth-child(8){--a:85deg}.hud[data-layout=mobile] .slot__key,.hud[data-layout=mobile] .slot__tip{display:none}.hud[data-layout=mobile] .slot:hover{transform:none}.hud[data-layout=mobile] .menu-toggle{align-items:center;gap:var(--sp-2);min-height:var(--hit-min);padding:0 var(--sp-3);font:var(--fw-bold) var(--fs-sm) / 1 var(--font-ui);color:var(--text-gold);cursor:pointer;background:var(--surface-panel);border:var(--bw-hair) solid var(--color-gold-500);border-radius:var(--r-pill);box-shadow:var(--shadow-panel);pointer-events:auto;display:inline-flex}.hud[data-layout=mobile] .menubar{justify-content:flex-end;display:flex}.hud[data-layout=mobile] .menubar__list{top:calc(100% + var(--sp-1));z-index:var(--z-panel);gap:var(--sp-1);grid-template-columns:repeat(2,1fr);width:15rem;display:grid;position:absolute;right:0}.hud[data-layout=mobile] .menubar[data-collapsed=true] .menubar__list{display:none}.hud[data-layout=mobile] .menu-btn{justify-content:start;gap:var(--sp-2);width:auto;height:var(--hit-min);padding:0 var(--sp-2);grid-auto-flow:column}.hud[data-layout=mobile] .menu-btn__label{clip-path:none;width:auto;height:auto;font-size:var(--fs-sm);position:static;overflow:visible}.hud[data-layout=mobile] .menu-btn__key{display:none}.hud[data-layout=mobile] .perf{top:auto;bottom:12rem;transform:none}.hud[data-layout=mobile] .banner{top:30%}@media (prefers-reduced-motion:reduce){.bar[data-low=true],.vignette[data-active=true],.spinner,.toast{animation:none}.bar__fill,.slot,.slot:hover{transition:none}.slot:hover{transform:none}.float{animation-name:float-fade}.spinner{border-right-color:var(--color-ember-400)}}.anim-debug{left:calc(var(--hud-margin) + 14.75rem);width:18rem}.anim-debug__log{font:var(--fs-xs) / 1.4 var(--font-mono);color:var(--text-muted);margin:0;padding:0;list-style:none}.hud[data-layout=mobile] .anim-debug{top:auto;bottom:24rem;left:var(--hud-margin);width:14rem}
