:root{--ui-scale:1;--u:calc(clamp(.74px, min(.36px + .06vh, .066vw), 1.7px) * var(--ui-scale));--font-title:"Cormorant Garamond", "Iowan Old Style", Georgia, serif;--font-ui:"Nunito", ui-rounded, system-ui, -apple-system, "Segoe UI", sans-serif;--ink:#0b0e20;--ink-2:#151a36;--glass:#181d3c99;--glass-deep:#0b0d1ebd;--glass-hi:#424a8247;--gold:#ecd39f;--gold-hi:#fff1cf;--gold-dim:#ecd39f6b;--gold-faint:#ecd39f2e;--rose:#f3c6c9;--rose-dim:#f3c6c966;--text:#f4efe6;--muted:#b7b4d0;--faint:#c8c6e68c;--hp:#ec6f86;--hp-deep:#8f2a4c;--hp-ghost:#ffd9c2;--mana:#86b0ff;--mana-deep:#4b3cb4;--stam:#f2dfa0;--stam-deep:#b48a45;--mint:#a9ecd0;--warn:#ffb4a8;--hostile:#f08a9a;--friendly:#bfe3ff;--shadow-text:0 1px 2px #050612e6, 0 0 10px #0506128c;--shadow-soft:0 10px 40px #04051073;--glow-gold:0 0 14px #ffe1a059;--sa-t:env(safe-area-inset-top,0px);--sa-r:env(safe-area-inset-right,0px);--sa-b:env(safe-area-inset-bottom,0px);--sa-l:env(safe-area-inset-left,0px);--edge:calc(16 * var(--u));--corner-tl:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40' fill='none' stroke='%23ecd39f' stroke-linecap='round'><path d='M3 37V14Q3 3 14 3h23' stroke-opacity='.85'/><path d='M8 30V16q0-8 8-8h14' stroke-opacity='.4'/><path d='M12 12c3-3 7-2 7 1s-4 3-4 1' stroke-opacity='.7'/><path d='M3 3l3 0 0 3-3 0z' fill='%23ecd39f' fill-opacity='.6' stroke='none'/><circle cx='37' cy='3' r='1.2' fill='%23ecd39f' stroke='none'/><circle cx='3' cy='37' r='1.2' fill='%23ecd39f' stroke='none'/></svg>");--corner-tr:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40' fill='none' stroke='%23ecd39f' stroke-linecap='round'><g transform='translate(40 0) scale(-1 1)'><path d='M3 37V14Q3 3 14 3h23' stroke-opacity='.85'/><path d='M8 30V16q0-8 8-8h14' stroke-opacity='.4'/><path d='M12 12c3-3 7-2 7 1s-4 3-4 1' stroke-opacity='.7'/><circle cx='37' cy='3' r='1.2' fill='%23ecd39f' stroke='none'/><circle cx='3' cy='37' r='1.2' fill='%23ecd39f' stroke='none'/></g></svg>");--corner-bl:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40' fill='none' stroke='%23ecd39f' stroke-linecap='round'><g transform='translate(0 40) scale(1 -1)'><path d='M3 37V14Q3 3 14 3h23' stroke-opacity='.85'/><path d='M8 30V16q0-8 8-8h14' stroke-opacity='.4'/><path d='M12 12c3-3 7-2 7 1s-4 3-4 1' stroke-opacity='.7'/><circle cx='37' cy='3' r='1.2' fill='%23ecd39f' stroke='none'/><circle cx='3' cy='37' r='1.2' fill='%23ecd39f' stroke='none'/></g></svg>");--corner-br:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40' fill='none' stroke='%23ecd39f' stroke-linecap='round'><g transform='translate(40 40) scale(-1 -1)'><path d='M3 37V14Q3 3 14 3h23' stroke-opacity='.85'/><path d='M8 30V16q0-8 8-8h14' stroke-opacity='.4'/><path d='M12 12c3-3 7-2 7 1s-4 3-4 1' stroke-opacity='.7'/><circle cx='37' cy='3' r='1.2' fill='%23ecd39f' stroke='none'/><circle cx='3' cy='37' r='1.2' fill='%23ecd39f' stroke='none'/></g></svg>")}@media (max-height:480px){:root{--edge:calc(10 * var(--u))}}*,:before,:after{box-sizing:border-box}html,body{background:var(--ink);width:100%;height:100%;color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;margin:0;overflow:hidden}#game{touch-action:none;outline:none;width:100%;height:100%;display:block;position:fixed;inset:0}#ui-root{z-index:10;pointer-events:none;font-size:calc(14 * var(--u));line-height:1.35;position:fixed;inset:0}button{font:inherit;color:inherit}.ico{width:100%;height:100%;display:block;overflow:visible}.keycap{min-width:calc(18 * var(--u));height:calc(18 * var(--u));padding:0 calc(5 * var(--u));border-radius:calc(5 * var(--u));border:1px solid var(--gold-dim);color:var(--gold);font:800 calc(10.5 * var(--u)) / 1 var(--font-ui);letter-spacing:.02em;white-space:nowrap;background:#0a0c1c8c;justify-content:center;align-items:center;display:inline-flex;box-shadow:inset 0 -1px #ffffff0f}#loading{z-index:100;background:radial-gradient(60% 40% at 50% 92%,#f3b0aa59,#0000 70%),radial-gradient(80% 55% at 50% 100%,#8c6ebe73,#0000 75%),radial-gradient(circle at 22% 18%,#8296ff29,#0000 40%),linear-gradient(#0a0c1e 0%,#171a3d 46%,#3a2f5c 78%,#6b4a6f 100%);justify-content:center;align-items:center;font-size:16px;transition:opacity .85s,visibility 0s linear .85s;display:flex;position:fixed;inset:0;overflow:hidden}#loading:before,#loading:after{content:"";opacity:.5;pointer-events:none;background-image:radial-gradient(circle,#ffeec8bf 0 1.4px,#0000 2.5px),radial-gradient(circle,#c8d2ff8c 0 1px,#0000 2px);background-position:0 0,60px 40px;background-size:190px 170px,120px 140px;animation:26s linear infinite motes;position:absolute;inset:-20%}#loading:after{opacity:.35;background-size:260px 230px,330px 300px;animation-duration:40s;animation-direction:reverse}@keyframes motes{0%{transform:translate(0,0)}to{transform:translate(-120px,-340px)}}#loading.done{opacity:0;visibility:hidden;pointer-events:none}.loading-inner{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:10px;padding:24px;animation:1.4s both rise-in;display:flex;position:relative}.loading-title{font:500 clamp(44px, 9vmin, 92px) / 1 var(--font-title);letter-spacing:.12em;color:var(--gold-hi);text-shadow:0 0 22px #ffdcaa8c,0 0 60px #f3c6c959;padding-left:.12em}.loading-sub{font:italic 500 clamp(16px, 2.6vmin, 24px) / 1.2 var(--font-title);color:var(--rose);letter-spacing:.08em;opacity:.85;margin-bottom:18px}.loading-bar{background:#ecd39f29;border-radius:3px;width:min(320px,64vw);height:3px;position:relative;overflow:visible;box-shadow:0 0 0 1px #ecd39f1f}.loading-bar:before,.loading-bar:after{content:"";border:1px solid var(--gold-dim);width:7px;height:7px;margin-top:-3.5px;position:absolute;top:50%;transform:rotate(45deg)}.loading-bar:before{left:-14px}.loading-bar:after{right:-14px}.loading-fill{border-radius:inherit;background:linear-gradient(90deg, #f3c6c999, var(--gold-hi));width:0;height:100%;transition:width .45s;box-shadow:0 0 12px #ffe1aacc}.loading-status{font:600 13px / 1 var(--font-ui);letter-spacing:.22em;text-transform:lowercase;color:var(--muted);margin-top:6px;animation:2.4s ease-in-out infinite breathe}@keyframes breathe{50%{opacity:.45}}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}}.rotate-prompt{z-index:200;text-align:center;color:var(--gold-hi);font:500 26px / 1.2 var(--font-title);letter-spacing:.04em;text-shadow:0 0 18px #ffdcaa66;background:radial-gradient(90% 50% at 50% 100%,#8c6ebe66,#0000 70%),linear-gradient(#0a0c1e,#1d1f45 70%,#3b2f5e);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:32px;display:none;position:fixed;inset:0}.rotate-prompt.visible{display:flex}.rotate-prompt small{font:600 13px / 1.4 var(--font-ui);letter-spacing:.14em;text-transform:lowercase;color:var(--muted);text-shadow:none}.rotate-icon{border:2px solid var(--gold);border-radius:9px;width:46px;height:78px;margin-bottom:18px;animation:2.6s ease-in-out infinite rotate-phone;position:relative;box-shadow:0 0 22px #ffdcaa59,inset 0 0 14px #ffdcaa1f}.rotate-icon:before{content:"";background:var(--gold);border-radius:50%;width:6px;height:6px;margin-left:-3px;position:absolute;bottom:5px;left:50%}.rotate-icon:after{content:"";border:2px solid var(--rose-dim);border-color:var(--rose-dim) var(--rose-dim) transparent transparent;border-radius:50%;width:26px;height:26px;position:absolute;top:-22px;right:-26px}@keyframes rotate-phone{0%,25%{transform:rotate(0)}55%,85%{transform:rotate(-90deg)}to{transform:rotate(0)}}.debug-overlay{left:calc(var(--sa-l) + var(--edge));bottom:calc(var(--sa-b) + 40%);z-index:30;border:1px solid var(--gold-faint);color:#dfe3ff;white-space:pre;pointer-events:none;text-shadow:0 1px 1px #000;background:#080a18a8;border-radius:8px;padding:8px 10px;font:500 11px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;position:fixed}.debug-overlay b{color:var(--gold-hi);font-size:13px}.hud{pointer-events:none;color:var(--text);text-shadow:var(--shadow-text);position:absolute;inset:0}.hud button,.hud .slot,.hud .buff,.hud .debuff,.hud .small-head,.hud .log-list,.hud .weapon-badge,.hud .window,.hud .item-cell,.hud .target-frame{pointer-events:auto}.hud-region{display:flex;position:absolute}.hud-tl{top:calc(var(--sa-t) + var(--edge));left:calc(var(--sa-l) + var(--edge));flex-direction:column}.hud-tc{top:calc(var(--sa-t) + var(--edge));flex-direction:column;align-items:center;left:50%;transform:translate(-50%)}.hud-tr{top:calc(var(--sa-t) + var(--edge));right:calc(var(--sa-r) + var(--edge));align-items:flex-end;gap:calc(10 * var(--u));flex-direction:column}.hud-r{top:calc(var(--sa-t) + 120 * var(--u));right:calc(var(--sa-r) + var(--edge));flex-direction:column;align-items:flex-end}.hud-bl{bottom:calc(var(--sa-b) + var(--edge));left:calc(var(--sa-l) + var(--edge));flex-direction:column}.hud-bottom{bottom:calc(var(--sa-b) + 12 * var(--u));align-items:flex-end;gap:calc(20 * var(--u));left:50%;transform:translate(-50%)}.hud-center{align-items:center;gap:calc(6 * var(--u));flex-direction:column;display:flex}.hud-orb-slot{padding-bottom:calc(2 * var(--u));flex-direction:column;align-items:center;display:flex}.panel-glass{background:linear-gradient(160deg, #464e8c52, transparent 55%), linear-gradient(180deg, var(--glass), var(--glass-deep));border:1px solid var(--gold-faint);border-radius:calc(12 * var(--u));box-shadow:var(--shadow-soft), inset 0 1px 0 #fff5dc14, inset 0 0 0 1px #0a0c1e59;position:relative}.res{--p:1;--g:1;position:relative}.res-body{position:relative;overflow:hidden}.res-fill,.res-ghost{will-change:transform;position:absolute;inset:0}.res-label{display:none}.res:not(.res-orbish) .res-body,.player-bars .res .res-body{height:calc(9 * var(--u));border-radius:calc(9 * var(--u));background:#080a1ab3;box-shadow:inset 0 1px 3px #0009,0 0 0 1px #ecd39f38}.res:not(.res-orbish) .res-fill,.res:not(.res-orbish) .res-ghost,.player-bars .res .res-fill,.player-bars .res .res-ghost{transform-origin:0;border-radius:inherit}.res:not(.res-orbish) .res-fill,.player-bars .res .res-fill{transform:scaleX(var(--p))}.res:not(.res-orbish) .res-ghost,.player-bars .res .res-ghost{transform:scaleX(var(--g));background:var(--hp-ghost);opacity:.75}.res:not(.res-orbish) .res-shine,.player-bars .res .res-shine{border-radius:inherit;pointer-events:none;background:linear-gradient(#ffffff47,#0000);position:absolute;inset:0 0 50%}.res:not(.res-orbish) .res-wave,.player-bars .res .res-wave{display:none}.res-hp .res-fill{background:linear-gradient(90deg, var(--hp-deep), var(--hp) 70%, #ffb3b5)}.res-mana .res-fill{background:linear-gradient(90deg, var(--mana-deep), var(--mana) 70%, #cfe0ff)}.res-stamina .res-fill{background:linear-gradient(90deg, var(--stam-deep), var(--stam) 75%, #fff6d8)}.res-target .res-fill{background:linear-gradient(90deg, #7d2a48, var(--hostile) 75%, #ffc9c6)}.res-mana .res-ghost{background:#e5ecff!important}.res-stamina .res-ghost{background:#fff3cf!important}.hud-orb-slot .res{width:calc(116 * var(--u));flex-direction:column;align-items:center;display:flex}.hud-orb-slot .res-body{width:calc(108 * var(--u));height:calc(108 * var(--u));box-shadow:0 0 0 calc(2 * var(--u)) #0a0c1ce6, 0 0 0 calc(3 * var(--u)) var(--gold-dim), 0 0 0 calc(7 * var(--u)) #0e10248c, 0 0 0 calc(8 * var(--u)) var(--gold-faint), 0 calc(8 * var(--u)) calc(30 * var(--u)) #00000080;background:radial-gradient(circle at 50% 60%,#1e22468c,#060814eb 72%);border-radius:50%;-webkit-mask-image:-webkit-radial-gradient(#fff,#000)}.hud-orb-slot .res-fill,.hud-orb-slot .res-ghost{transform:translate3d(0, calc((1 - var(--p)) * 100%), 0)}.hud-orb-slot .res-ghost{transform:translate3d(0, calc((1 - var(--g)) * 100%), 0);opacity:.55}.hud-orb-slot .res-hp .res-fill{background:radial-gradient(circle at 40% 10%,#ffd2c88c,#0000 45%),linear-gradient(#f27e93 0%,#c84467 45%,#6e1c3d 100%)}.hud-orb-slot .res-hp .res-ghost{background:linear-gradient(#ffe0cc,#f0a8a0)}.hud-orb-slot .res-mana .res-fill{background:radial-gradient(circle at 60% 10%,#dce6ff8c,#0000 45%),linear-gradient(#92b8ff 0%,#5c6be0 45%,#2c2380 100%)}.hud-orb-slot .res-mana .res-ghost{background:linear-gradient(#eef2ff,#aebfff)}.res-wave{left:-50%;top:calc(-6 * var(--u));width:200%;height:calc(14 * var(--u));background:radial-gradient(25% 50% at 25%,#ffffff59,#0000 70%),radial-gradient(25% 50% at 75%,#ffffff38,#0000 70%);animation:5s linear infinite wave;position:absolute}@keyframes wave{0%{transform:translate(0)}to{transform:translate(50%)}}.hud-orb-slot .res-shine{pointer-events:none;background:radial-gradient(45% 28% at 38% 20%,#ffffff61,#0000 70%),radial-gradient(circle,#0000 58%,#05061273 72%);border-radius:50%;position:absolute;inset:0}.hud-orb-slot .res-text{top:calc(54 * var(--u));pointer-events:none;flex-direction:column;align-items:center;line-height:1;display:flex;position:absolute;left:50%;transform:translate(-50%,-50%)}.hud-orb-slot .res-text b{font:800 calc(21 * var(--u)) / 1 var(--font-ui);letter-spacing:.01em}.hud-orb-slot .res-text small{font:700 calc(10.5 * var(--u)) / 1.3 var(--font-ui);color:#ffffffb8}.hud-orb-slot .res-label{margin-top:calc(10 * var(--u));font:italic 600 calc(13 * var(--u)) / 1 var(--font-title);letter-spacing:.14em;text-transform:lowercase;color:var(--gold);opacity:.85;display:block}.hud-orb-slot .res.low .res-body{animation:1.1s ease-in-out infinite low-pulse}@keyframes low-pulse{50%{box-shadow:0 0 0 calc(2 * var(--u)) #0a0c1ce6, 0 0 0 calc(3 * var(--u)) #ff9fb0, 0 0 calc(26 * var(--u)) #ff5a78b3}}.stamina-wrap{align-items:center;gap:calc(8 * var(--u));width:calc(300 * var(--u));display:flex}.stamina-wrap .res{flex:1;transition:opacity .6s}.stamina-wrap .res-body{height:calc(6 * var(--u))}.stamina-wrap .res-text{display:none}.stamina-wrap .res.full{opacity:.35}.combat-glyph{width:calc(20 * var(--u));height:calc(20 * var(--u));color:#ff9aa9;opacity:0;filter:drop-shadow(0 0 6px #ff5a78b3);transition:opacity .4s,transform .4s;transform:scale(.6)}.combat-glyph.on{opacity:1;transform:scale(1)}.combat-vignette{pointer-events:none;opacity:0;background:radial-gradient(75% 70%,#0000 62%,#961a3c47 88%,#6e0a2880 100%);transition:opacity .9s;position:absolute;inset:0}.combat-vignette.on{opacity:1;animation:3.2s ease-in-out infinite vignette-breathe}@keyframes vignette-breathe{50%{opacity:.7}}.hotbar{gap:calc(9 * var(--u));padding:calc(9 * var(--u)) calc(12 * var(--u));border-radius:calc(18 * var(--u));border:1px solid var(--gold-faint);box-shadow:var(--shadow-soft);background:linear-gradient(#1418346b,#080a189e);display:flex;position:relative}.hotbar:before,.hotbar:after{content:"";width:calc(8 * var(--u));height:calc(8 * var(--u));margin-top:calc(-4 * var(--u));border:1px solid var(--gold-dim);background:var(--ink);position:absolute;top:50%;transform:rotate(45deg)}.hotbar:before{left:calc(-5 * var(--u))}.hotbar:after{right:calc(-5 * var(--u))}.slot{width:calc(62 * var(--u));height:calc(62 * var(--u));border-radius:calc(14 * var(--u));box-shadow:inset 0 0 0 1px #ecd39f59, inset 0 0 calc(14 * var(--u)) #00000080, 0 2px 8px #0006;cursor:default;background:radial-gradient(circle at 50% 35%,#6e78c847,#0000 70%),linear-gradient(#242850d9,#0c0e20eb);transition:transform .15s;position:relative}.slot:hover{transform:translateY(calc(-2 * var(--u)))}.slot-frame{inset:calc(3 * var(--u));border-radius:calc(11 * var(--u));pointer-events:none;border:1px solid #ecd39f1f;position:absolute}.slot-icon{inset:calc(11 * var(--u));color:var(--gold-hi);filter:drop-shadow(0 0 calc(5 * var(--u)) #ffdca08c);transition:filter .25s,opacity .25s;position:absolute}.slot[data-mode=charge] .slot-icon{color:#e6dcff;filter:drop-shadow(0 0 calc(6 * var(--u)) #beaaffb3)}.slot.cooling .slot-icon{opacity:.55;filter:grayscale(.7)}.slot.poor .slot-icon{opacity:.45;color:#9fb6ff;filter:none}.slot.poor{box-shadow:inset 0 0 0 1px #86b0ff59, inset 0 0 calc(18 * var(--u)) #283c9673}.slot.empty .slot-icon{display:none}.slot-cd{border-radius:inherit;background:conic-gradient(transparent calc((1 - var(--cd,0)) * 360deg), #060816bd 0);pointer-events:none;position:absolute;inset:0}.slot-cdtext{font:800 calc(20 * var(--u)) / 1 var(--font-ui);color:#fff;text-shadow:0 0 6px #000,0 1px 2px #000;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.slot-key{right:calc(-4 * var(--u));bottom:calc(-5 * var(--u));min-width:calc(17 * var(--u));height:calc(17 * var(--u));padding:0 calc(4 * var(--u));border-radius:calc(5 * var(--u));background:var(--ink);border:1px solid var(--gold-dim);color:var(--gold);font:800 calc(10.5 * var(--u)) / calc(15 * var(--u)) var(--font-ui);text-align:center;text-shadow:none;position:absolute}.slot-flash{inset:calc(-6 * var(--u));border-radius:calc(18 * var(--u));opacity:0;pointer-events:none;background:radial-gradient(circle,#ffeebebf,#ffdca000 70%);position:absolute}.slot.ready .slot-flash{animation:.7s ease-out ready-flash}.slot.ready{animation:.5s ease-out ready-pop}@keyframes ready-flash{0%{opacity:0;transform:scale(.6)}25%{opacity:1}to{opacity:0;transform:scale(1.25)}}@keyframes ready-pop{40%{transform:scale(1.08)}}.weapon-row{width:calc(350 * var(--u));padding:0 calc(4 * var(--u));justify-content:space-between;align-items:center;display:flex}.weapon-badge{align-items:center;gap:calc(7 * var(--u));padding:calc(3 * var(--u)) calc(10 * var(--u)) calc(3 * var(--u)) calc(4 * var(--u));background:linear-gradient(90deg,#0a0c1c99,#0a0c1c00);border-radius:999px;display:flex}.weapon-icon{width:calc(22 * var(--u));height:calc(22 * var(--u));color:var(--gold);filter:drop-shadow(0 0 4px #ffdca080)}.weapon-name{font:italic 600 calc(16 * var(--u)) / 1 var(--font-title);color:var(--gold-hi);letter-spacing:.03em}.combo-pips{gap:calc(7 * var(--u));padding-right:calc(6 * var(--u));display:flex}.pip{width:calc(8 * var(--u));height:calc(8 * var(--u));border:1px solid var(--gold-dim);background:#0a0c1c99;transition:background .12s,box-shadow .12s,transform .12s;transform:rotate(45deg)}.pip.on{background:var(--gold-hi);transform:rotate(45deg)scale(1.15);box-shadow:0 0 8px #ffe1a0e6}.castbar{align-items:center;gap:calc(4 * var(--u));width:calc(270 * var(--u));margin-bottom:calc(4 * var(--u));opacity:0;transform:translateY(calc(6 * var(--u)));--p:0;flex-direction:column;order:-1;transition:opacity .15s,transform .15s;display:flex}.castbar.show{opacity:1;transform:none}.castbar-name{font:italic 600 calc(15 * var(--u)) / 1 var(--font-title);color:var(--text);letter-spacing:.06em;order:-1}.castbar-track{width:100%;height:calc(8 * var(--u));box-shadow:0 0 0 1px var(--gold-dim), 0 0 calc(16 * var(--u)) #0006;background:#080a1abf;border-radius:99px;position:relative;overflow:hidden}.castbar-fill{transform-origin:0;transform:scaleX(var(--p));background:linear-gradient(90deg,#c8d2ff66,#e8ecff 85%,#fff);position:absolute;inset:0;box-shadow:0 0 10px #dce1ffcc}.castbar-mark{display:none}.castbar.charge .castbar-fill{background:linear-gradient(90deg, #8a6bd8, #d5c4ff 60%, var(--gold-hi))}.castbar.charge .castbar-mark{width:calc(3 * var(--u));background:var(--gold-hi);box-shadow:0 0 8px var(--gold-hi);display:block;position:absolute;top:0;bottom:0;right:0}.castbar.full .castbar-track{animation:.5s ease-in-out infinite alternate charge-full}@keyframes charge-full{to{box-shadow:0 0 0 1px var(--gold-hi), 0 0 calc(20 * var(--u)) #ffe6aae6}}.player-plate{gap:calc(6 * var(--u));min-width:calc(200 * var(--u));flex-direction:column;display:flex}.player-name{font:600 calc(22 * var(--u)) / 1 var(--font-title);letter-spacing:.05em;color:var(--gold-hi)}.player-name:after{content:"";width:calc(120 * var(--u));height:1px;margin-top:calc(5 * var(--u));background:linear-gradient(90deg, var(--gold-dim), transparent);display:block}.player-bars:empty{display:none}.player-bars{gap:calc(5 * var(--u));width:calc(230 * var(--u));flex-direction:column;display:flex}.player-bars .res{align-items:center;column-gap:calc(8 * var(--u));grid-template-columns:1fr auto;display:grid}.player-bars .res-body{grid-column:1}.player-bars .res-text{font:800 calc(11 * var(--u)) / 1 var(--font-ui);min-width:calc(54 * var(--u));grid-column:2}.player-bars .res-text small{opacity:.6;margin-left:2px;font-weight:700}.player-bars .res-stamina .res-body{height:calc(5 * var(--u))}.player-bars .res-stamina .res-text{visibility:hidden}.player-bars .res-hp .res-body{height:calc(11 * var(--u))}.player-bars .res.low .res-body{animation:1s ease-in-out infinite bar-low}@keyframes bar-low{50%{box-shadow:0 0 0 1px #ff9fb0,0 0 12px #ff5a78b3}}.buff-row{gap:calc(6 * var(--u));flex-wrap:wrap;display:flex}.buff{width:calc(32 * var(--u));align-items:center;gap:calc(2 * var(--u));flex-direction:column;display:flex;position:relative}.buff-icon{width:calc(32 * var(--u));height:calc(32 * var(--u));padding:calc(5 * var(--u));color:var(--gold-hi);box-shadow:0 0 0 1px var(--gold-dim), 0 0 10px #ffdca040;background:radial-gradient(circle at 50% 40%,#7882dc66,#0a0c1cd9);border-radius:50%}.buff-time{font:800 calc(10.5 * var(--u)) / 1 var(--font-ui);color:var(--text)}.buff.expiring .buff-icon{animation:.6s ease-in-out infinite breathe}.target-frame{width:calc(340 * var(--u));padding:calc(9 * var(--u)) calc(16 * var(--u)) calc(9 * var(--u));opacity:0;transform:translateY(calc(-8 * var(--u)));visibility:hidden;transition:opacity .2s,transform .2s}.target-frame.show{opacity:1;visibility:visible;transform:none}.target-frame:before{content:"";inset:calc(-1 * var(--u));border-radius:inherit;background:var(--corner-tl) top left / calc(18 * var(--u)) no-repeat, var(--corner-tr) top right / calc(18 * var(--u)) no-repeat, var(--corner-bl) bottom left / calc(18 * var(--u)) no-repeat, var(--corner-br) bottom right / calc(18 * var(--u)) no-repeat;pointer-events:none;opacity:.8;position:absolute}.target-top{justify-content:space-between;align-items:baseline;gap:calc(10 * var(--u));margin-bottom:calc(6 * var(--u));display:flex}.target-name{font:600 calc(19 * var(--u)) / 1.05 var(--font-title);letter-spacing:.04em;color:var(--friendly);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.target-frame.hostile .target-name{color:#ffd2d6}.target-dist{font:700 calc(11 * var(--u)) / 1 var(--font-ui);color:var(--muted);white-space:nowrap}.target-frame .res-body{height:calc(12 * var(--u))!important}.target-frame .res-text,.target-frame .res-label{display:none}.target-frame:not(.hostile) .res-target .res-fill{background:linear-gradient(90deg, #3a6aa8, var(--friendly) 80%, #fff)}.target-bottom{margin-top:calc(5 * var(--u));font:700 calc(11.5 * var(--u)) / 1 var(--font-ui);justify-content:space-between;display:flex}.target-pct{color:var(--gold)}.target-debuffs{left:calc(100% + 8 * var(--u));gap:calc(6 * var(--u));display:flex;position:absolute;top:50%;transform:translateY(-50%)}.debuff{align-items:center;gap:calc(2 * var(--u));flex-direction:column;display:none}.debuff.show{animation:.35s ease-out pop-in;display:flex}.debuff .ico{width:calc(34 * var(--u));height:calc(34 * var(--u));padding:calc(6 * var(--u));border-radius:calc(9 * var(--u));color:#ffc4b8;background:radial-gradient(circle at 50% 35%,#c8505a73,#140a16e0);box-shadow:0 0 0 1px #ffaaa08c,0 0 12px #ff6e6e59}.debuff-text{font:800 calc(11 * var(--u)) / 1 var(--font-ui);color:#ffc4b8}@keyframes pop-in{0%{opacity:0;transform:scale(.5)}}.zone-banner{align-items:center;gap:calc(6 * var(--u));opacity:0;pointer-events:none;white-space:nowrap;flex-direction:column;display:flex;position:absolute;top:24%;left:50%;transform:translate(-50%)}.zone-banner.play-a{animation:5.2s both zone-a}.zone-banner.play-b{animation:5.2s both zone-b}@keyframes zone-a{0%{opacity:0;letter-spacing:0;transform:translate(-50%,10px)}18%{opacity:1;transform:translate(-50%)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-6px)}}@keyframes zone-b{0%{opacity:0;transform:translate(-50%,10px)}18%{opacity:1;transform:translate(-50%)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-6px)}}.zone-title{font:500 calc(54 * var(--u)) / 1 var(--font-title);letter-spacing:.16em;color:var(--gold-hi);text-shadow:0 0 calc(24 * var(--u)) #ffdcaa8c, 0 0 calc(60 * var(--u)) #f3c6c959, 0 2px 4px #0009;padding-left:.16em}.zone-sub{font:italic 500 calc(17 * var(--u)) / 1 var(--font-title);letter-spacing:.24em;color:var(--rose);opacity:.85}.zone-orn{align-items:center;gap:calc(10 * var(--u));display:flex}.zone-orn span{width:calc(110 * var(--u));background:linear-gradient(90deg, transparent, var(--gold));height:1px}.zone-orn span:last-child{transform:scaleX(-1)}.zone-orn i{width:calc(7 * var(--u));height:calc(7 * var(--u));border:1px solid var(--gold);box-shadow:var(--glow-gold);transform:rotate(45deg)}.net-pill{align-items:center;gap:calc(7 * var(--u));padding:calc(5 * var(--u)) calc(12 * var(--u));border:1px solid var(--gold-faint);font:700 calc(11.5 * var(--u)) / 1 var(--font-ui);color:var(--muted);letter-spacing:.02em;background:#0a0c1c8c;border-radius:99px;display:flex}.net-dot{width:calc(8 * var(--u));height:calc(8 * var(--u));background:#888;border-radius:50%}.net-pill.online .net-dot{background:var(--mint);box-shadow:0 0 8px var(--mint)}.net-pill.connecting .net-dot{background:var(--stam);animation:1s ease-in-out infinite breathe}.net-pill.offline .net-dot{background:#8a86a8}.hud-menu{gap:calc(7 * var(--u));display:flex}.menu-btn{width:calc(40 * var(--u));height:calc(40 * var(--u));padding:calc(9 * var(--u));border:1px solid var(--gold-faint);color:var(--gold);cursor:pointer;background:radial-gradient(circle at 50% 35%,#505aa066,#0a0c1cc7);border-radius:50%;transition:transform .15s,border-color .2s,box-shadow .2s;position:relative;box-shadow:0 4px 14px #00000059}.menu-btn:hover{border-color:var(--gold-dim);transform:translateY(-1px);box-shadow:0 0 14px #ffdca040}.menu-btn.active{border-color:var(--gold);color:var(--gold-hi);box-shadow:0 0 16px #ffdca073}.menu-btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.menu-key{right:calc(-5 * var(--u));bottom:calc(-4 * var(--u));padding:0 calc(3 * var(--u));border-radius:calc(4 * var(--u));background:var(--ink);border:1px solid var(--gold-faint);font:800 calc(9 * var(--u)) / calc(13 * var(--u)) var(--font-ui);color:var(--gold);position:absolute}.mb-log,.mb-dps{width:calc(32 * var(--u));height:calc(32 * var(--u));padding:calc(7 * var(--u));margin-top:calc(4 * var(--u));opacity:.85}.small-panel{padding:0;overflow:hidden}.small-head{align-items:center;gap:calc(7 * var(--u));padding:calc(7 * var(--u)) calc(10 * var(--u));cursor:pointer;border-bottom:1px solid var(--gold-faint);display:flex}.small-ico{width:calc(16 * var(--u));height:calc(16 * var(--u));color:var(--gold)}.small-title{font:600 calc(14.5 * var(--u)) / 1 var(--font-title);letter-spacing:.08em;color:var(--gold-hi);flex:1}.small-chev{width:calc(14 * var(--u));height:calc(14 * var(--u));color:var(--muted);transition:transform .2s}.small-panel.collapsed .small-chev{transform:rotate(-90deg)}.small-panel.collapsed .small-body{display:none}.small-panel.collapsed .small-head{border-bottom-color:#0000}.dps-meter{width:calc(170 * var(--u));transition:opacity .3s}.dps-meter.idle{opacity:.6}.dps-body{padding:calc(8 * var(--u)) calc(12 * var(--u)) calc(10 * var(--u))}.dps-big{align-items:baseline;gap:calc(6 * var(--u));display:flex}.dps-big b{font:800 calc(26 * var(--u)) / 1 var(--font-ui);color:var(--gold-hi)}.dps-big small{font:italic 600 calc(13 * var(--u)) / 1 var(--font-title);color:var(--muted);letter-spacing:.1em}.dps-row{margin-top:calc(6 * var(--u));justify-content:space-between;display:flex}.dps-row div{gap:calc(2 * var(--u));flex-direction:column;display:flex}.dps-row label{font:700 calc(9.5 * var(--u)) / 1 var(--font-ui);text-transform:uppercase;letter-spacing:.14em;color:var(--faint)}.dps-row span{font:800 calc(13 * var(--u)) / 1 var(--font-ui)}.combat-log{width:calc(330 * var(--u))}.log-list{max-height:calc(168 * var(--u));padding:calc(6 * var(--u)) calc(10 * var(--u)) calc(8 * var(--u));font:600 calc(12.5 * var(--u)) / 1.45 var(--font-ui);scrollbar-width:thin;scrollbar-color:var(--gold-faint) transparent;touch-action:pan-y;-webkit-mask-image:linear-gradient(180deg, transparent 0, #000 calc(14 * var(--u)));-webkit-mask-image:linear-gradient(180deg, transparent 0, #000 calc(14 * var(--u)));mask-image:linear-gradient(180deg, transparent 0, #000 calc(14 * var(--u)));overflow-y:auto}.log-line{color:var(--text);opacity:.92}.log-info{color:#d6d9f2}.log-damage{color:#f6e7c6}.log-crit{color:#ffd27a;font-weight:800}.log-warn{color:var(--warn)}.log-heal{color:var(--mint)}.log-system{color:var(--muted);font-style:italic}.log-unread{font:800 calc(10 * var(--u)) / 1 var(--font-ui);color:var(--ink);background:var(--gold);border-radius:99px;padding:2px 6px}.log-unread:empty{display:none}.nameplate-layer,.dmg-layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.nameplate{--p:1;will-change:transform;width:0;height:0;position:absolute;top:0;left:0}.np-name{left:0;bottom:calc(9 * var(--u));white-space:nowrap;font:600 calc(15 * var(--u)) / 1 var(--font-title);letter-spacing:.05em;color:#eaf2ff;position:absolute;transform:translate(-50%)}.nameplate.hostile .np-name{color:#ffd8dc}.np-bar{left:calc(-36 * var(--u));width:calc(72 * var(--u));height:calc(5 * var(--u));background:#080a1ab3;border-radius:99px;display:none;position:absolute;bottom:0;overflow:hidden;box-shadow:0 0 0 1px #ffdcc840}.nameplate.hostile .np-bar{display:block}.np-fill{transform-origin:0;transform:scaleX(var(--p));background:linear-gradient(90deg, #a03a5a, var(--hostile));position:absolute;inset:0}.nameplate.selected .np-name{color:var(--gold-hi);text-shadow:0 0 10px #ffdca0cc, var(--shadow-text)}.nameplate.selected .np-bar{box-shadow:0 0 0 1px var(--gold), 0 0 10px #ffdca0b3}.nameplate.selected .np-name:before,.nameplate.selected .np-name:after{content:"◆";vertical-align:middle;color:var(--gold);margin:0 .5em;font-size:.55em}.dn{opacity:0;white-space:nowrap;will-change:transform, opacity;font:800 calc(22 * var(--u)) / 1 var(--font-ui);color:#fff6e2;text-shadow:0 2px 2px #140a1ee6,0 0 8px #140a1e99;position:absolute;top:0;left:0}.dn-dealt.crit{font-size:calc(30 * var(--u));color:#ffe08a;text-shadow:0 2px 2px #3c140ae6,0 0 12px #ffbe5af2,0 0 26px #ff8c5099}.dn-taken{color:#ff8fa0;font-size:calc(19 * var(--u))}.dn-taken.crit{font-size:calc(24 * var(--u));color:#ff6f86}.dn-heal{color:var(--mint);text-shadow:0 2px 2px #051e14e6,0 0 10px #78f0be80}.dn-evade{font:italic 600 calc(21 * var(--u)) / 1 var(--font-title);color:#cfe0ff;letter-spacing:.08em}.toasts{align-items:center;gap:calc(6 * var(--u));pointer-events:none;flex-direction:column;display:flex;position:absolute;top:42%;left:50%;transform:translate(-50%)}.toast{padding:calc(7 * var(--u)) calc(20 * var(--u));font:italic 600 calc(18 * var(--u)) / 1.1 var(--font-title);letter-spacing:.06em;color:#ffe0d8;white-space:nowrap;background:linear-gradient(90deg,#0a0c1c00,#0e1024d1 18% 82%,#0a0c1c00);border-radius:99px;display:none}.toast.show{animation:1.8s both toast-life;display:block}.toast.bump{animation:.35s toast-bump,1.8s both toast-life}@keyframes toast-life{0%{opacity:0;transform:translateY(6px)}10%,75%{opacity:1;transform:none}to{opacity:0}}@keyframes toast-bump{40%{transform:scale(1.08)}}.fade-overlay{z-index:40;opacity:0;pointer-events:none;background:radial-gradient(at 50% 60%,#15122a,#05060e 70%);transition-property:opacity;transition-timing-function:ease-in-out;position:absolute;inset:0}.fade-overlay.black{opacity:1}@media (max-width:1240px){.combat-log{width:calc(270 * var(--u))}.log-list{max-height:calc(130 * var(--u))}}@media (max-width:1100px){.hud-bl{bottom:calc(var(--sa-b) + 170 * var(--u))}}.hud.compact .combat-log:not(.flip),.hud.compact .dps-meter:not(.flip),.hud:not(.compact) .combat-log.flip,.hud:not(.compact) .dps-meter.flip{display:none}.hud.compact .zone-title{font-size:calc(38 * var(--u))}.hud.compact .hud-r{top:calc(var(--sa-t) + 100 * var(--u))}.hud-touch .hud-bottom,.hud-touch .mb-panel{display:none}.hud-touch .hud-tl{left:calc(var(--sa-l) + 12px);top:calc(var(--sa-t) + 8px)}.hud-touch .player-name{font-size:calc(18 * var(--u))}.hud-touch .player-name:after{display:none}.hud-touch .player-plate{gap:calc(5 * var(--u))}.hud-touch .hud-tr{top:auto;bottom:auto;right:auto;left:calc(var(--sa-l) + 12px);top:calc(var(--sa-t) + 8px + 118 * var(--u));flex-direction:row;align-items:center;gap:8px}.hud-touch .mb-log,.hud-touch .mb-dps{width:36px;height:36px;margin:0;padding:8px}.hud-touch .hud-r{top:calc(var(--sa-t) + 64px);right:auto;left:calc(50% + 140 * var(--u));align-items:flex-start}.hud-touch .hud-bl{bottom:auto;top:calc(var(--sa-t) + 8px + 164 * var(--u))}.hud-touch .target-frame{width:calc(250 * var(--u));padding:6px 12px}.hud-touch .target-name{font-size:calc(16 * var(--u))}.hud-touch .zone-banner{top:30%}.hud-touch .toasts{top:calc(var(--sa-t) + 66px)}.hud-touch .combat-log{width:calc(230 * var(--u))}.hud-touch .log-list{max-height:calc(110 * var(--u))}.hud-windows{z-index:20;justify-content:center;align-items:center;gap:calc(22 * var(--u));padding:calc(var(--sa-t) + 70 * var(--u)) calc(var(--sa-r) + 24 * var(--u)) calc(var(--sa-b) + 40 * var(--u)) calc(var(--sa-l) + 24 * var(--u));pointer-events:none;display:flex;position:absolute;inset:0}.hud.panel-open .hud-windows{background:radial-gradient(#080a1859,#080a181f 70%)}.window{max-height:100%;padding:calc(16 * var(--u)) calc(22 * var(--u)) calc(20 * var(--u));border-radius:calc(16 * var(--u));border:1px solid var(--gold-dim);-webkit-backdrop-filter:blur(10px)saturate(1.1);text-shadow:none;pointer-events:auto;touch-action:pan-y;background:radial-gradient(80% 40% at 50% 0,#968cdc2e,#0000 70%),radial-gradient(70% 50% at 50% 110%,#f3aab41f,#0000 70%),linear-gradient(#1c2042db,#0a0c1ceb);flex-direction:column;display:none;position:relative;box-shadow:0 24px 80px #02030c99,inset 0 1px #fff5dc1a}.window.open{animation:.28s cubic-bezier(.2,.8,.2,1) both win-in;display:flex}@keyframes win-in{0%{opacity:0;transform:translateY(calc(12 * var(--u))) scale(.98)}}.window:before{content:"";inset:calc(5 * var(--u));border-radius:calc(12 * var(--u));background:var(--corner-tl) top left / calc(30 * var(--u)) no-repeat, var(--corner-tr) top right / calc(30 * var(--u)) no-repeat, var(--corner-bl) bottom left / calc(30 * var(--u)) no-repeat, var(--corner-br) bottom right / calc(30 * var(--u)) no-repeat;pointer-events:none;border:1px solid #ecd39f1f;position:absolute}.window-character{width:calc(640 * var(--u));order:1}.window-inventory{width:calc(520 * var(--u));order:2}.window-settings{width:calc(680 * var(--u));order:3}.win-head{justify-content:center;align-items:center;gap:calc(10 * var(--u));min-height:calc(34 * var(--u));display:flex;position:relative}.win-title{font:600 calc(28 * var(--u)) / 1 var(--font-title);letter-spacing:.14em;color:var(--gold-hi);text-shadow:0 0 18px #ffdcaa59;padding-left:.14em}.win-key{opacity:.75}.win-close{right:calc(-6 * var(--u));width:calc(34 * var(--u));height:calc(34 * var(--u));min-width:34px;min-height:34px;padding:calc(9 * var(--u));border:1px solid var(--gold-faint);color:var(--rose);cursor:pointer;background:#0a0c1c99;border-radius:50%;transition:border-color .2s,color .2s,transform .2s;position:absolute;top:50%;transform:translateY(-50%)}.win-close:hover{border-color:var(--rose-dim);color:#fff;transform:translateY(-50%)rotate(90deg)}.win-divider{color:var(--gold);height:calc(12 * var(--u));margin:calc(6 * var(--u)) calc(30 * var(--u)) calc(12 * var(--u))}.win-divider .filigree{width:100%;height:100%;display:block}.win-body{gap:calc(20 * var(--u));overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--gold-faint) transparent;min-height:0;display:flex;position:relative;overflow-y:auto}.section-title{margin:calc(4 * var(--u)) 0 calc(8 * var(--u));font:italic 600 calc(15 * var(--u)) / 1 var(--font-title);letter-spacing:.18em;text-transform:lowercase;color:var(--rose);align-items:center;gap:calc(8 * var(--u));display:flex}.section-title:after{content:"";background:linear-gradient(90deg, var(--rose-dim), transparent);flex:1;height:1px}.char-left{flex:0 0 calc(170 * var(--u));align-items:center;gap:calc(6 * var(--u));flex-direction:column;display:flex}.portrait{width:calc(170 * var(--u));height:calc(212 * var(--u));border-radius:calc(85 * var(--u)) calc(85 * var(--u)) calc(14 * var(--u)) calc(14 * var(--u));box-shadow:inset 0 0 0 1px var(--gold-dim), inset 0 0 0 calc(5 * var(--u)) #0a0c1c80, inset 0 0 0 calc(6 * var(--u)) var(--gold-faint), 0 10px 30px #0006;background:radial-gradient(at 50% 30%,#ffdcbe2e,#0000 60%),linear-gradient(#2b2c5c 0%,#3d3566 55%,#5d4466 100%);position:relative;overflow:hidden}.portrait-svg{width:86%;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.portrait-motes{opacity:.55;background-image:radial-gradient(circle,#ffecc8d9 0 1px,#0000 2px),radial-gradient(circle,#dcdcff99 0 1px,#0000 2px);background-position:6px 10px,30px 22px;background-size:46px 52px,70px 64px;animation:14s linear infinite motes-small;position:absolute;inset:0}@keyframes motes-small{to{background-position:6px -94px,30px -82px}}.char-name{font:600 calc(22 * var(--u)) / 1.1 var(--font-title);color:var(--gold-hi);letter-spacing:.06em;margin-top:calc(4 * var(--u))}.char-weapon{font:italic 500 calc(14 * var(--u)) / 1 var(--font-title);color:var(--muted);letter-spacing:.06em}.char-legend{gap:calc(10 * var(--u));margin-top:calc(6 * var(--u));font:700 calc(10 * var(--u)) / 1 var(--font-ui);letter-spacing:.12em;text-transform:uppercase;display:flex}.lg-gear{color:var(--rose)}.lg-buff{color:var(--mint)}.lg-gear:before,.lg-buff:before{content:"+ "}.char-right{flex:1;min-width:0}.primary-grid{gap:calc(8 * var(--u));margin-bottom:calc(10 * var(--u));grid-template-columns:repeat(4,1fr);display:grid}.prim-card{align-items:center;gap:calc(3 * var(--u));padding:calc(9 * var(--u)) calc(4 * var(--u)) calc(8 * var(--u));border-radius:calc(10 * var(--u));box-shadow:inset 0 0 0 1px var(--gold-faint);cursor:help;background:linear-gradient(#3c427859,#0a0c1c73);flex-direction:column;transition:box-shadow .2s;display:flex}.prim-card:hover{box-shadow:inset 0 0 0 1px var(--gold-dim), 0 0 14px #ffdca026}.prim-ico{width:calc(22 * var(--u));height:calc(22 * var(--u));color:var(--gold)}.prim-str .prim-ico{color:#ffb8a0}.prim-dex .prim-ico{color:#b8f0d0}.prim-int .prim-ico{color:#c6b8ff}.prim-vit .prim-ico{color:#ffa8b8}.prim-short{font:800 calc(10.5 * var(--u)) / 1 var(--font-ui);letter-spacing:.18em;color:var(--muted)}.prim-val{align-items:baseline;gap:calc(3 * var(--u));display:flex}.prim-val b{font:800 calc(22 * var(--u)) / 1 var(--font-ui);color:var(--text)}.bonus-gear,.bonus-buff{font:800 calc(11 * var(--u)) / 1 var(--font-ui)}.bonus-gear{color:var(--rose)}.bonus-buff{color:var(--mint)}.bonus-gear:empty,.bonus-buff:empty{display:none}.derived-list{gap:calc(3 * var(--u)) calc(14 * var(--u));grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.der-row{align-items:center;gap:calc(7 * var(--u));padding:calc(5 * var(--u)) calc(4 * var(--u));cursor:help;border-radius:calc(4 * var(--u));border-bottom:1px solid #ecd39f14;display:flex}.der-row:hover{background:#ecd39f0f}.der-ico{width:calc(16 * var(--u));height:calc(16 * var(--u));color:var(--gold);opacity:.85;flex:none}.der-maxHp .der-ico,.der-hpRegen .der-ico{color:var(--hp)}.der-maxMana .der-ico,.der-manaRegen .der-ico{color:var(--mana)}.der-maxStamina .der-ico,.der-staminaRegen .der-ico{color:var(--stam)}.der-label{font:600 calc(12.5 * var(--u)) / 1.1 var(--font-ui);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.der-val{align-items:baseline;gap:calc(5 * var(--u));display:flex}.der-val b{font:800 calc(13.5 * var(--u)) / 1 var(--font-ui);color:var(--text)}.equip-col{flex:none}.equip-grid{gap:calc(12 * var(--u)) calc(14 * var(--u));grid-template-columns:repeat(2,auto);display:grid}.equip-slot{align-items:center;gap:calc(5 * var(--u));flex-direction:column;display:flex}.equip-label{font:700 calc(10 * var(--u)) / 1 var(--font-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--faint)}.bag-col{flex:1;min-width:0}.bag-grid{grid-template-columns:repeat(5, calc(54 * var(--u)));gap:calc(7 * var(--u));display:grid}.bag-foot{margin-top:calc(10 * var(--u));font:italic 500 calc(13 * var(--u)) / 1.2 var(--font-title);color:var(--faint);letter-spacing:.04em}.item-cell{--rar:#ecd39f40;width:calc(54 * var(--u));height:calc(54 * var(--u));min-width:44px;min-height:44px;padding:calc(9 * var(--u));border-radius:calc(10 * var(--u));background:radial-gradient(circle at 50% 40%,#464c8240,#080a18b3);transition:transform .15s,box-shadow .2s;position:relative;box-shadow:inset 0 0 0 1px #ecd39f1a,inset 0 2px 8px #00000073}.item-cell.filled{cursor:pointer;color:var(--rar);background:radial-gradient(circle at 50% 45%, color-mix(in srgb, var(--rar) 30%, transparent), transparent 70%), linear-gradient(180deg, #282c54e6, #0a0c1cf2);box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--rar) 75%, transparent), inset 0 0 14px color-mix(in srgb, var(--rar) 25%, transparent), 0 0 10px color-mix(in srgb, var(--rar) 18%, transparent)}.item-cell.filled .ico{filter:drop-shadow(0 0 4px color-mix(in srgb, var(--rar) 70%, transparent))}.item-cell.filled:hover{box-shadow:inset 0 0 0 1.5px var(--rar), inset 0 0 18px color-mix(in srgb, var(--rar) 35%, transparent), 0 0 16px color-mix(in srgb, var(--rar) 35%, transparent);transform:translateY(-2px)}.item-cell[data-rarity=legendary],.item-cell[data-rarity=epic]{animation:3s ease-in-out infinite rare-glow}@keyframes rare-glow{50%{filter:brightness(1.15)}}.item-cell.socket{width:calc(64 * var(--u));height:calc(64 * var(--u));padding:calc(13 * var(--u));border-radius:50%}.item-cell.socket:not(.filled){box-shadow:inset 0 0 0 1px var(--gold-faint), inset 0 0 0 calc(4 * var(--u)) #0a0c1c80, inset 0 0 0 calc(5 * var(--u)) #ecd39f14}.ghost-glyph{color:#ecd39f38;width:100%;height:100%;display:block}.item-cell.equipped{opacity:.6;cursor:default}.seal{display:none}.item-cell.equipped .seal{right:calc(3 * var(--u));top:calc(3 * var(--u));width:calc(9 * var(--u));height:calc(9 * var(--u));background:var(--gold);box-shadow:0 0 6px var(--gold);display:block;position:absolute;transform:rotate(45deg)}.item-cell.drop-ok{box-shadow:inset 0 0 0 2px var(--gold-hi), 0 0 18px #ffe1a099!important}.item-cell.equip-flash{animation:.5s ease-out equip-flash}@keyframes equip-flash{0%{filter:brightness(1.8);transform:scale(.9)}}.set-col{gap:calc(8 * var(--u));flex-direction:column;flex:1;min-width:0;display:flex}.controls-col{flex:1.05}.segmented{padding:calc(3 * var(--u));box-shadow:inset 0 0 0 1px var(--gold-faint);background:#080a1899;border-radius:99px;grid-template-columns:repeat(4,1fr);display:grid}.seg-btn{padding:calc(7 * var(--u)) 0;min-height:34px;color:var(--muted);font:700 calc(12.5 * var(--u)) / 1 var(--font-ui);cursor:pointer;background:0 0;border:0;border-radius:99px;transition:background .2s,color .2s,box-shadow .2s}.seg-btn:hover{color:var(--text)}.seg-btn.on{color:var(--ink);background:linear-gradient(180deg, var(--gold-hi), var(--gold));box-shadow:0 0 12px #ffdca066}.set-row{margin-top:calc(8 * var(--u));justify-content:space-between;align-items:baseline;display:flex}.set-label{font:600 calc(16 * var(--u)) / 1 var(--font-title);letter-spacing:.05em;color:var(--text)}.set-label em{color:var(--faint);font-size:.85em}.set-value{font:800 calc(11.5 * var(--u)) / 1 var(--font-ui);color:var(--gold)}.set-ctl{align-items:center;gap:calc(12 * var(--u));display:flex}.range{--fill:50%;appearance:none;cursor:pointer;background:0 0;flex:1;height:28px;margin:0;transition:opacity .2s}.range.dim{opacity:.45}.range::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--rose), var(--gold-hi) var(--fill), #ecd39f26 var(--fill));border-radius:4px;height:4px}.range::-moz-range-track{background:#ecd39f26;border-radius:4px;height:4px}.range::-moz-range-progress{background:linear-gradient(90deg, var(--rose), var(--gold-hi));border-radius:4px;height:4px}.range::-webkit-slider-thumb{-webkit-appearance:none;background:radial-gradient(circle at 40% 35%, #fff, var(--gold) 70%);border-radius:50%;width:18px;height:18px;margin-top:-7px;box-shadow:0 0 0 3px #0a0c1ccc,0 0 12px #ffdca0b3}.range::-moz-range-thumb{background:var(--gold-hi);border:0;border-radius:50%;width:16px;height:16px;box-shadow:0 0 10px #ffdca0b3}.check{align-items:center;gap:calc(7 * var(--u));font:700 calc(12 * var(--u)) / 1 var(--font-ui);color:var(--muted);cursor:pointer;min-height:32px;display:inline-flex}.check input{opacity:0;width:0;height:0;position:absolute}.check-box{width:18px;height:18px;box-shadow:inset 0 0 0 1px var(--gold-dim);background:#080a1899;border-radius:5px;transition:background .2s;position:relative}.check input:checked+.check-box{background:linear-gradient(180deg, var(--gold-hi), var(--gold))}.check input:checked+.check-box:after{content:"";border:solid var(--ink);border-width:0 2px 2px 0;width:5px;height:10px;position:absolute;top:2px;left:6px;transform:rotate(45deg)}.check input:focus-visible+.check-box{outline:2px solid var(--gold);outline-offset:2px}.set-buttons{gap:calc(8 * var(--u));margin-top:calc(12 * var(--u));flex-wrap:wrap;display:flex}.btn{align-items:center;gap:calc(8 * var(--u));min-height:38px;padding:calc(7 * var(--u)) calc(14 * var(--u));border:1px solid var(--gold-dim);color:var(--gold-hi);font:700 calc(12.5 * var(--u)) / 1 var(--font-ui);cursor:pointer;background:linear-gradient(#3c427880,#0e1024cc);border-radius:99px;transition:box-shadow .2s,transform .15s;display:inline-flex}.btn .ico{width:calc(17 * var(--u));height:calc(17 * var(--u));min-width:15px;min-height:15px}.btn:hover{transform:translateY(-1px);box-shadow:0 0 14px #ffdca04d}.btn:active{transform:translateY(1px)}.tabs{gap:calc(4 * var(--u));border-bottom:1px solid var(--gold-faint);display:flex}.tab{padding:calc(8 * var(--u)) calc(12 * var(--u));min-height:34px;color:var(--faint);font:600 calc(15 * var(--u)) / 1 var(--font-title);letter-spacing:.06em;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px}.tab.on{color:var(--gold-hi);border-bottom-color:var(--gold)}.keys{gap:calc(3 * var(--u));padding-top:calc(6 * var(--u));grid-template-columns:1fr;display:grid}.key-row{align-items:center;gap:calc(10 * var(--u));font:600 calc(12.5 * var(--u)) / 1.2 var(--font-ui);color:var(--muted);padding:calc(2 * var(--u)) 0;display:flex}.keycap.wide{min-width:calc(92 * var(--u));justify-content:center}.set-foot{padding-top:calc(10 * var(--u));font:italic 500 calc(12.5 * var(--u)) / 1.2 var(--font-title);color:var(--faint);text-align:right;letter-spacing:.05em;margin-top:auto}.hud-tooltip-layer{z-index:50;pointer-events:none;position:absolute;inset:0}.tooltip{max-width:calc(290 * var(--u));min-width:calc(180 * var(--u));padding:calc(10 * var(--u)) calc(13 * var(--u)) calc(11 * var(--u));border-radius:calc(10 * var(--u));border:1px solid var(--gold-dim);font:600 calc(12.5 * var(--u)) / 1.4 var(--font-ui);color:var(--text);text-shadow:none;opacity:0;visibility:hidden;background:linear-gradient(#1c2042f5,#0a0c1cf7);transition:opacity .12s;position:fixed;top:0;left:0;box-shadow:0 12px 34px #0000008c,0 0 0 1px #0a0c1c99}.tooltip.show{opacity:1;visibility:visible}.tt-title{font:600 calc(18 * var(--u)) / 1.1 var(--font-title);color:var(--gold-hi);letter-spacing:.03em;justify-content:space-between;align-items:center;gap:10px;display:flex}.tt-key{font:800 calc(10 * var(--u)) / 1 var(--font-ui);color:var(--gold);border:1px solid var(--gold-dim);border-radius:4px;padding:2px 5px}.tt-sub{font:700 calc(10.5 * var(--u)) / 1.3 var(--font-ui);color:var(--faint);letter-spacing:.06em;text-transform:uppercase;margin-top:3px}.tt-body{color:#e2def0;margin-top:6px}.tt-row{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.tt-cost,.tt-stat{font:800 calc(10.5 * var(--u)) / 1.4 var(--font-ui);color:var(--gold);background:#ecd39f1a;border-radius:99px;padding:2px 8px}.tt-cost.mana{color:#b9cfff;background:#86b0ff29}.tt-cost.stam{color:var(--stam);background:#f2dfa024}.tt-cost.free{color:var(--mint);background:#a9ecd01a}.tt-line{margin-top:3px}.tt-good{color:var(--mint)}.tt-warn{color:var(--warn);margin-top:6px;font-weight:800}.tt-skills{font:italic 500 calc(13 * var(--u)) / 1.3 var(--font-title);color:#d8d0ff;margin-top:6px}.tt-flavor{font:italic 500 calc(14 * var(--u)) / 1.3 var(--font-title);color:var(--rose);margin-top:8px}.tt-hint{border-top:1px solid var(--gold-faint);font:700 calc(10.5 * var(--u)) / 1 var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin-top:8px;padding-top:6px}.hud.compact .hud-windows{padding:calc(var(--sa-t) + 8px) calc(var(--sa-r) + 8px) calc(var(--sa-b) + 8px) calc(var(--sa-l) + 8px)}.hud.compact .window{width:100%;max-width:760px;height:100%;padding:10px 16px 12px}.hud.compact .win-title{font-size:22px}.hud.compact .win-divider{margin:2px 30px 8px}.hud.compact .win-close{width:40px;height:40px;padding:11px}.hud.compact .window-settings .win-body{flex-direction:row}@media (max-width:560px){.hud.compact .win-body{flex-direction:column!important}}.hud-touch .win-key{display:none}.touch-controls{--tc:clamp(48px, 13.5vh, 66px);--atk:calc(var(--tc) * 1.62);--ring:calc(var(--tc) * 2.62);--stick-r:60px;z-index:5;pointer-events:none;touch-action:none;position:absolute;inset:0}.touch-controls.hidden{display:none}@media (min-width:900px) and (min-height:600px){.touch-controls{--tc:clamp(60px, 9vh, 78px)}}.touch-controls.tablet{--tc:clamp(56px, 10vh, 80px)}.tc-surface{pointer-events:auto;touch-action:none;position:absolute;inset:0}.tc-stick{opacity:0;pointer-events:none;width:0;height:0;transition:opacity .12s;position:absolute;top:0;left:0}.tc-stick.on{opacity:1}.tc-stick-ring{left:calc(-1 * var(--stick-r));top:calc(-1 * var(--stick-r));width:calc(2 * var(--stick-r));height:calc(2 * var(--stick-r));background:radial-gradient(circle,#14183426 40%,#14183473 100%);border-radius:50%;position:absolute;box-shadow:inset 0 0 0 1.5px #ecd39f73,inset 0 0 24px #a0aaff2e,0 0 30px #0a0c1c4d}.tc-stick-ring:after{content:"";border:1px dashed #ecd39f38;border-radius:50%;position:absolute;inset:22%}.tc-knob{left:calc(-.42 * var(--stick-r));top:calc(-.42 * var(--stick-r));width:calc(.84 * var(--stick-r));height:calc(.84 * var(--stick-r));will-change:transform;background:radial-gradient(circle at 40% 35%,#fff8e6f2,#ecd39fbf 55%,#c8a0788c);border-radius:50%;margin:0;position:absolute;box-shadow:0 0 22px #ffe1aa8c,0 4px 10px #00000059}.tc-stick-hint{left:calc(var(--sa-l) + 34px);bottom:calc(var(--sa-b) + 26px);width:calc(1.5 * var(--stick-r));height:calc(1.5 * var(--stick-r));background:radial-gradient(circle,#ecd39f14,#0000 70%);border:1.5px solid #ecd39f38;border-radius:50%;transition:opacity .2s;position:absolute}.tc-stick-hint span{background:#ecd39f38;border-radius:50%;position:absolute;inset:32%}.touch-controls.stick-active .tc-stick-hint{opacity:0}.tc-cluster{right:calc(var(--sa-r) + 22px + var(--atk) / 2);bottom:calc(var(--sa-b) + 16px + var(--atk) / 2);width:0;height:0;position:absolute}.tc-btn{width:var(--tc);height:var(--tc);margin:calc(var(--tc) / -2) 0 0 calc(var(--tc) / -2);pointer-events:auto;touch-action:none;color:var(--gold-hi);transform:rotate(var(--a,0deg)) translateX(calc(var(--r,0) * var(--ring))) rotate(calc(-1 * var(--a,0deg)));-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 50% 35%,#505aaa59,#0a0c1e8c 75%);border-radius:50%;transition:filter .1s,box-shadow .15s;position:absolute;top:0;left:0;box-shadow:inset 0 0 0 1.5px #ecd39f6b,inset 0 0 16px #00000059,0 4px 14px #0000004d}.tc-btn.down{filter:brightness(1.35);box-shadow:inset 0 0 0 2px var(--gold-hi), inset 0 0 20px #ffdca059, 0 0 22px #ffdca073}.tc-icon{pointer-events:none;filter:drop-shadow(0 0 5px #ffdca080);position:absolute;inset:24%}.tc-attack{--tc:var(--atk);width:var(--atk);height:var(--atk);margin:calc(var(--atk) / -2) 0 0 calc(var(--atk) / -2);background:radial-gradient(circle at 50% 35%,#826ebe80,#0e0e249e 75%);box-shadow:inset 0 0 0 2px #ecd39fa6,inset 0 0 0 7px #0a0c1c59,inset 0 0 0 8px #ecd39f33,0 0 26px #c8aaff40}.tc-attack .tc-icon{inset:26%}.tc-skill .tc-icon{inset:21%}.tc-skill[data-mode=charge] .tc-icon{color:#e6dcff}.tc-skill.cooling .tc-icon{opacity:.5;filter:grayscale(.7)}.tc-skill.poor .tc-icon{opacity:.4;color:#9fb6ff}.tc-cd{background:conic-gradient(transparent calc((1 - var(--cd,0)) * 360deg), #060816b8 0);pointer-events:none;border-radius:50%;position:absolute;inset:0}.tc-cdtext{font:800 calc(var(--tc) * .34) / 1 var(--font-ui);color:#fff;text-shadow:0 0 6px #000;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.tc-key{background:var(--ink);border:1px solid var(--gold-dim);width:17px;height:17px;font:800 10px / 15px var(--font-ui);text-align:center;color:var(--gold);pointer-events:none;border-radius:50%;position:absolute;bottom:-2px;right:-2px}.tc-skill.ready{animation:.6s ease-out tc-ready}@keyframes tc-ready{0%{box-shadow:inset 0 0 0 2px var(--gold-hi), 0 0 0 0 #ffe1a0cc}to{box-shadow:inset 0 0 0 1.5px #ecd39f6b,0 0 0 16px #ffe1a000}}.tc-move{--tc:clamp(48px, 12.5vh, 62px)}.tc-small{--tc:48px;opacity:.9}.tc-small .tc-icon{inset:27%}.tc-mini-row{top:calc(var(--sa-t) + 8px);right:calc(var(--sa-r) + 10px);gap:8px;display:flex;position:absolute}.tc-mini-row .tc-btn{--tc:48px;margin:0;position:relative;transform:none}.tc-mini-row .tc-icon{inset:27%}
