@font-face{font-family:ManusCC0;src:url(../fonts/ManusCC0-Regular.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:ManusCC0;src:url(../fonts/ManusCC0-Medium.ttf)format("truetype");font-weight:500;font-display:swap}@font-face{font-family:ManusCC0;src:url(../fonts/ManusCC0-Bold.ttf)format("truetype");font-weight:700;font-display:swap}:root{--night:#06080b;--glass:#090c10b8;--glass-2:#10141ad1;--line:#d9b26b61;--line-strong:#e8c480cc;--gold:#d9b26b;--gold-hi:#f6e2ae;--jade:#5cf2c8;--jade-deep:#1d8f78;--parch:#efe6d2;--muted:#a99f8a;--blood:#e0454f;--mana-a:#2f7dff;--mana-b:#6ff0ff;--font:"ManusCC0", system-ui, sans-serif;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px);--ease:cubic-bezier(.2, .8, .2, 1)}:root:lang(zh){--font:"ManusCC0", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", "Noto Sans CJK SC", "Source Han Sans SC", system-ui, sans-serif}*{box-sizing:border-box}html,body{background:var(--night);height:100%;color:var(--parch);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;touch-action:none;margin:0;overflow:hidden}#game{width:100%;height:100%;display:block;position:fixed;inset:0}#ui{pointer-events:none;z-index:2;position:fixed;inset:0}button{font:inherit;color:inherit}kbd{border:1px solid var(--line-strong);min-width:1.6em;color:var(--gold-hi);font:700 .85em/1.3 var(--font);text-align:center;letter-spacing:.04em;background:#00000073;border-radius:4px;padding:.1em .45em;display:inline-block}.fatal{text-align:center;pointer-events:auto;background:var(--night);color:var(--parch);place-items:center;padding:2rem;display:grid;position:fixed;inset:0}.screen{display:none;position:absolute;inset:0}.screen.is-active{animation:fade-in .45s var(--ease);display:flex}@keyframes fade-in{0%{opacity:0}}.boot.is-active,.title.is-active,.pause.is-active,.settings.is-active,.controls.is-active,.tree.is-active,.victory.is-active{pointer-events:auto}.logo{letter-spacing:.16em;text-transform:uppercase;background:linear-gradient(180deg, #fff6dc 0%, var(--gold-hi) 38%, var(--gold) 70%, #8a6a35 100%);color:#0000;filter:drop-shadow(0 2px #0000008c)drop-shadow(0 0 28px #d9b26b47);-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(2.8rem,7vw,5.6rem);font-weight:700;line-height:1}.logo-sub{letter-spacing:.5em;text-transform:uppercase;color:var(--jade);text-shadow:0 0 18px #5cf2c873;margin:.6rem 0 0;font-size:clamp(.85rem,1.6vw,1.1rem);font-weight:500}.sigil{background:radial-gradient(circle, #5cf2c88c 0 7%, transparent 8%), repeating-conic-gradient(from 0deg, #5cf2c8d9 0 2deg, transparent 2deg 15deg);filter:drop-shadow(0 0 12px #5cf2c899);border-radius:50%;width:132px;height:132px;margin-bottom:1.6rem;animation:18s linear infinite spin;position:relative;-webkit-mask:radial-gradient(circle,#000 0 9%,#0000 10% 38%,#000 39% 41%,#0000 42% 62%,#000 63% 70%,#0000 71% 96%,#000 97%);mask:radial-gradient(circle,#000 0 9%,#0000 10% 38%,#000 39% 41%,#0000 42% 62%,#000 63% 70%,#0000 71% 96%,#000 97%)}.sigil.small{width:84px;height:84px;margin-bottom:1.1rem}.sigil.gold{filter:drop-shadow(0 0 12px #f6e2aeb3)hue-rotate(-120deg)saturate(1.4)}@keyframes spin{to{transform:rotate(360deg)}}.btn{border:1px solid var(--line);cursor:pointer;min-width:240px;color:var(--parch);letter-spacing:.22em;text-transform:uppercase;background:linear-gradient(#1e242cbf,#0a0d11d9);border-radius:3px;justify-content:center;align-items:center;gap:.6em;padding:.85rem 1.6rem;font-size:.95rem;font-weight:500;transition:border-color .2s,box-shadow .25s,color .2s,transform .15s;display:inline-flex;position:relative}.btn:before,.btn:after{content:"";border:1px solid var(--gold);background:var(--night);opacity:.8;width:6px;height:6px;position:absolute;top:50%;transform:translateY(-50%)rotate(45deg)}.btn:before{left:-4px}.btn:after{right:-4px}.btn:hover,.btn:focus-visible{border-color:var(--line-strong);color:#fff;outline:none;box-shadow:0 0 0 1px #d9b26b40,0 0 24px #d9b26b2e,inset 0 0 18px #d9b26b14}.btn:active{transform:translateY(1px)}.btn.primary{color:#eafff8;background:linear-gradient(#1d8f788c,#082822d9);border-color:#5cf2c899}.btn.primary:hover,.btn.primary:focus-visible{border-color:var(--jade);box-shadow:0 0 28px #5cf2c84d,inset 0 0 18px #5cf2c826}.btn.ghost{color:#d8cfbb;background:#00000040;border-color:#d9b26b33}.btn.danger{color:#ffd2d4;letter-spacing:.06em;text-transform:none;border-color:#e0454fbf}.menu{flex-direction:column;align-items:stretch;gap:.8rem;display:flex}.panel{background:linear-gradient(180deg, var(--glass-2), var(--glass));border:1px solid var(--line);-webkit-backdrop-filter:blur(14px)saturate(1.1);backdrop-filter:blur(14px)saturate(1.1);border-radius:4px;flex-direction:column;align-items:stretch;gap:1rem;min-width:min(440px,92vw);max-width:92vw;margin:auto;padding:2.4rem 2.6rem;display:flex;position:relative;box-shadow:0 30px 80px #0000008c,inset 0 0 0 1px #ffffff08}.panel:before{content:"";pointer-events:none;border:1px solid #d9b26b24;border-radius:2px;position:absolute;inset:7px}.panel.wide{width:min(760px,94vw)}.panel h1{text-align:center;letter-spacing:.32em;text-transform:uppercase;color:var(--gold-hi);margin:0 0 .4rem;font-size:1.5rem;font-weight:700}.boot{text-align:center;background:radial-gradient(at 50% 42%,#10201d 0%,#080b0e 55%,#040506 100%);flex-direction:column;justify-content:center;align-items:center}.boot-bar{background:#ffffff14;width:min(340px,70vw);height:2px;margin-top:2.4rem;overflow:hidden}.boot-bar i{transform-origin:0;background:linear-gradient(90deg, var(--jade-deep), var(--jade), var(--gold-hi));height:100%;box-shadow:0 0 12px var(--jade);transition:transform .35s var(--ease);display:block;transform:scaleX(.02)}.boot-text{color:var(--muted);letter-spacing:.24em;text-transform:uppercase;margin:1rem 0 0;font-size:.72rem}.boot-tip{bottom:calc(2.2rem + var(--safe-b));color:#8f877a;max-width:560px;padding:0 1.5rem;font-size:.9rem;font-style:italic;position:absolute}.title{background:linear-gradient(90deg,#040608d1 0%,#04060873 36%,#0000 62%),linear-gradient(#0000 70%,#04060899);align-items:center}.title-panel{margin-left:max(6vw, calc(1.5rem + var(--safe-l)));flex-direction:column;align-items:flex-start;max-width:560px;display:flex}.title .logo{font-size:clamp(2.6rem,6.4vw,5.2rem)}.tagline{color:#cfc6b2;letter-spacing:.02em;margin:1.4rem 0 2.2rem;font-size:1.02rem;font-style:italic}.saved{color:var(--muted);letter-spacing:.08em;margin:1.4rem 0 0;font-size:.85rem}.hud{display:none}.hud.is-active{display:block}.hud-tl,.points-chip,.howl,.rank-chip,.party-frames,.compass,.hud-tr,.loot-feed,.prompt,.toast,.hint,.boss,.summon-bar,.hud-br,.minimap{zoom:var(--hud-zoom,1)}.hud-tl{top:calc(18px + var(--safe-t));left:calc(18px + var(--safe-l));align-items:center;gap:14px;display:flex;position:absolute}.portrait{flex:none;width:84px;height:84px;position:relative}.portrait:before{content:"";border:2px solid var(--gold-hi);box-shadow:0 0 0 3px #120c04cc, 0 0 0 4px var(--gold), 0 0 18px #ffd26a59;background:radial-gradient(circle at 50% 35%,#2c3956,#0b0f16 75%);border-radius:6px;position:absolute;inset:12px;transform:rotate(45deg)}.portrait img{object-fit:cover;clip-path:polygon(50% 5%,95% 50%,50% 95%,5% 50%);width:100%;height:100%;display:block;position:absolute;inset:0}.portrait img:not([src]){visibility:hidden}.portrait .lv{border:1px solid var(--gold-hi);min-width:26px;color:var(--gold-hi);text-align:center;background:#0b0f16;border-radius:10px;padding:1px 6px;font-size:.78rem;font-weight:800;position:absolute;bottom:4px;right:-4px;box-shadow:0 2px 6px #0009}.bars{filter:drop-shadow(0 2px 5px #00000080);flex-direction:column;gap:4px;display:flex}.bar{clip-path:polygon(0 0,100% 0,calc(100% - 10px) 100%,0 100%);background:linear-gradient(#0a0c10e6,#040608cc);width:260px;height:18px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #f6e2ae66}.bar em{z-index:1;letter-spacing:.12em;color:#fff;text-shadow:0 1px 2px #000;place-items:center;font-size:.64rem;font-style:normal;font-weight:800;display:grid;position:absolute;top:0;bottom:0;left:8px}.bar i,.bar b{transform-origin:0;position:absolute;inset:0}.bar b{background:#ffecc88c;transition:transform .9s ease-out .25s}.bar i{transition:transform .12s linear}.bar span{letter-spacing:.08em;color:#fffffff0;text-shadow:0 1px 2px #000;place-items:center start;padding-left:34px;font-size:.68rem;font-weight:700;display:grid;position:absolute;inset:0}.bar.hp i{background:linear-gradient(#ff6b70,#b51f2c 60%,#7d1019);box-shadow:inset 0 1px #ffffff40}.bar.mp{width:238px;height:14px}.bar.mp i{background:linear-gradient(90deg, var(--mana-a), var(--mana-b));box-shadow:inset 0 1px #ffffff4d}.bar.xp{clip-path:none;width:214px;height:5px;box-shadow:inset 0 0 0 1px #d9b26b4d}.bar.xp i{background:linear-gradient(90deg, #8a6a35, var(--gold-hi))}.bar.xp span{width:max-content;color:var(--muted);place-items:center start;padding-left:0;font-size:.62rem;top:-4px;left:calc(100% + 8px);right:auto}.bar.xp{overflow:visible}.points-chip{top:calc(106px + var(--safe-t));left:calc(18px + var(--safe-l));border:1px solid var(--gold);color:var(--gold-hi);letter-spacing:.06em;cursor:pointer;pointer-events:auto;background:linear-gradient(90deg,#3c2c10d9,#0e0c0899);border-radius:3px;padding:.3rem .8rem;font-size:.8rem;display:none;position:absolute}.points-chip.show{animation:1.8s ease-in-out infinite glow;display:block}.screen[data-screen=hud]:has(.rank-chip.show) .points-chip{left:calc(150px + var(--safe-l))}.screen[data-screen=hud]:has(.rank-chip.ready) .points-chip{left:calc(214px + var(--safe-l))}@keyframes glow{50%{box-shadow:0 0 22px #f6e2ae73}}.howl{top:calc(148px + var(--safe-t));left:calc(18px + var(--safe-l));color:#bfe0ff;letter-spacing:.2em;text-transform:uppercase;text-shadow:0 0 12px #6fb0ff;font-size:.72rem;display:none;position:absolute}.howl.show{display:block}.regroup{text-align:center;white-space:nowrap;pointer-events:none;color:#c8fff0;letter-spacing:.18em;text-transform:uppercase;text-shadow:0 0 10px #5cf2c8d9,0 1px 2px #000000b3;font-size:.7rem;display:none;position:absolute;bottom:calc(100% + 10px);left:0;right:0}.regroup.show{animation:.3s fade-in;display:block}.boss{top:calc(22px + var(--safe-t));flex-direction:column;align-items:center;gap:6px;width:min(560px,60vw);display:none;position:absolute;left:50%;transform:translate(-50%)}.boss.show{animation:.6s fade-in;display:flex}.boss-name{letter-spacing:.26em;text-transform:uppercase;color:#e9c9ff;text-shadow:0 0 14px #aa5aff99,0 1px 2px #000;font-size:.85rem;font-weight:700}.boss-bar{border-color:#be82ff80;width:100%;height:12px}.boss-bar i{background:linear-gradient(#c27bff,#6a2aa8 60%,#3a1260)}.banner{z-index:2;text-align:center;opacity:0;pointer-events:none;white-space:nowrap;position:absolute;top:19%;left:50%;transform:translate(-50%)}.banner.show{animation:banner 3.6s var(--ease) forwards}.banner h2{letter-spacing:.22em;text-transform:uppercase;color:var(--gold-hi);text-shadow:0 2px 4px #000c,0 0 30px #d9b26b59;margin:0;font-size:clamp(1.3rem,2.4vw,2.6rem);font-weight:700}.banner p{color:#e3dccb;letter-spacing:.3em;text-transform:uppercase;text-shadow:0 1px 3px #000;margin:.5rem 0 0;font-size:.78rem}.banner:before,.banner:after{content:"";background:linear-gradient(90deg, transparent, var(--gold));width:min(90px,4vw);height:1px;position:absolute;top:50%}.banner:before{right:calc(100% + 18px)}.banner:after{left:calc(100% + 18px);transform:scaleX(-1)}@keyframes banner{0%{opacity:0;letter-spacing:.4em;transform:translate(-50%,8px)}14%{opacity:1;transform:translate(-50%)}78%{opacity:1}to{opacity:0}}.hint{left:calc(22px + var(--safe-l));bottom:calc(256px + var(--safe-b));border:1px solid var(--line);border-left:3px solid var(--jade);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(90deg,#10182ccc,#0e14249e);border-radius:4px;max-width:360px;padding:.9rem 1.1rem;font-size:.92rem;line-height:1.5;display:none;position:absolute}.hint.show{animation:.5s fade-in;display:block}.toast{left:50%;bottom:calc(150px + var(--safe-b));opacity:0;letter-spacing:.04em;white-space:nowrap;background:#0000008c;border-radius:3px;padding:.5rem 1rem;font-size:.85rem;transition:opacity .25s;position:absolute;transform:translate(-50%)}.toast.show{opacity:1}.summon-bar{left:50%;bottom:calc(26px + var(--safe-b));align-items:flex-end;gap:12px;display:flex;position:absolute;transform:translate(-50%)}.slot{--c:var(--jade);cursor:pointer;pointer-events:auto;background:radial-gradient(circle at 50% 30%,#2e3a58,#101624 75%);border:2px solid #d9b26b99;border-radius:8px;width:64px;height:64px;padding:0;transition:border-color .2s,box-shadow .2s,transform .12s;position:relative;box-shadow:0 0 0 2px #08080cb3,0 6px 18px #00000080}.slot[data-species=wolf]{--c:#9ccfff}.slot[data-species=golem]{--c:#7fe0a0}.slot[data-species=drake]{--c:#ff8a4c}.slot-art{border-radius:6px;position:absolute;inset:0;overflow:hidden}.slot-art img{object-fit:cover;width:100%;height:100%}.slot-art img:not([src]){visibility:hidden}.slot-cd{background:conic-gradient(#000000b3 calc(var(--cd,0) * 360deg), transparent 0);pointer-events:none;border-radius:6px;position:absolute;inset:0}.slot-key,.slot-rank,.slot-count,.slot-mana{text-shadow:0 1px 2px #000,0 0 6px #000;font-size:.7rem;font-weight:700;position:absolute}.slot-key{border:1px solid var(--gold);text-align:center;min-width:18px;color:var(--gold-hi);background:#0b0f16;border-radius:3px;padding:0 5px;font-size:.64rem;line-height:15px;top:auto;bottom:-10px;left:50%;transform:translate(-50%)}.slot-rank{color:#fff;top:3px;left:5px}.slot-count{color:#e6e0d2;top:3px;right:5px}.slot-mana{color:var(--mana-b);bottom:3px;right:5px}.slot.ready{border-color:color-mix(in srgb, var(--c) 70%, transparent);box-shadow:0 6px 18px #00000080, 0 0 14px color-mix(in srgb, var(--c) 35%, transparent), inset 0 0 14px color-mix(in srgb, var(--c) 18%, transparent)}.slot.selected{border-color:var(--gold-hi);transform:translateY(-6px)}.slot.locked{filter:grayscale()brightness(.55)}.slot.locked .slot-rank{display:none}.slot.locked .slot-art:after{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23e6e0d2'%3E%3Cpath d='M7 10V7a5 5 0 0 1 10 0v3h1a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1v-9a1 1 0 0 1 1-1zm2 0h6V7a3 3 0 0 0-6 0z'/%3E%3C/svg%3E") 50%/22px no-repeat;position:absolute;inset:0}.orb{letter-spacing:.14em;text-transform:uppercase;color:#cffff0;background:radial-gradient(circle,#1d8f7880,#0a161eeb 72%);border:2px solid #5cf2c8d9;border-radius:50%;align-self:center;place-items:center;width:58px;height:58px;margin-left:8px;font-size:.58rem;display:grid;position:relative;overflow:hidden;box-shadow:0 0 0 2px #060a0e99,0 0 16px #5cf2c859,inset 0 0 12px #5cf2c840}.orb .slot-cd{border-radius:50%}.orb+.orb{margin-left:0}.orb.nova{color:#efe6ff;background:radial-gradient(circle,#7050d280,#0e0c1eeb 72%);border-color:#bea0ffd9;display:none;box-shadow:0 0 0 2px #060a0e99,0 0 16px #aa82ff66,inset 0 0 12px #bea0ff47}.has-nova .orb.nova{display:grid}.plates,.popups{position:absolute;inset:0;overflow:hidden}.plate{will-change:transform;width:0;height:0;position:absolute;top:0;left:0}.plate>*{text-align:center;width:120px;position:absolute;left:-60px}.plate-name{letter-spacing:.06em;color:#f4ecdc;text-shadow:0 1px 2px #000,0 0 4px #000;white-space:nowrap;font-size:.66rem;font-weight:500;bottom:9px}.plate-bar{background:#000000b3;border:1px solid #000c;border-radius:1px;height:5px;bottom:0;overflow:hidden;width:76px!important;left:-38px!important}.plate-bar i{transform-origin:0;background:linear-gradient(#ff7a6b,#b0222c);position:absolute;inset:0}.plate.ally .plate-bar i{background:linear-gradient(#8dffd0,#1d8f78)}.plate.ally .plate-bar{height:4px;width:50px!important;left:-25px!important}.plate.tough .plate-name{color:#ffc27a}.plate.deadly .plate-name{color:#ff6b6b}.plate.trivial .plate-name{color:#9a9a9a}.plate.focused .plate-name:before{content:"◆ ";color:var(--gold-hi)}.pop{color:#fff4d8;text-shadow:0 2px 2px #000000e6,0 0 8px #0009;animation:rise .95s var(--ease) forwards;white-space:nowrap;font-size:1.05rem;font-weight:700;position:absolute;transform:translate(-50%,-50%)}.pop.crit{color:var(--gold-hi);font-size:1.5rem;animation-name:rise-crit}.pop.hurt{color:#ff6b6b}.pop.xp{color:#d9b8ff;letter-spacing:.06em;font-size:.95rem;animation-duration:1.4s}.pop.dot{color:#b4ff8a;font-size:.85rem}@keyframes rise{0%{opacity:0;transform:translate(-50%,-30%)scale(.6)}15%{opacity:1;transform:translate(-50%,-70%)scale(1.1)}to{opacity:0;transform:translate(-50%,-260%)scale(.95)}}@keyframes rise-crit{0%{opacity:0;transform:translate(-50%,-30%)scale(.4)}18%{opacity:1;transform:translate(-50%,-80%)scale(1.35)}to{opacity:0;transform:translate(-50%,-240%)scale(1)}}.vignette{opacity:0;background:radial-gradient(#0000 50%,#a00a148c 100%);position:absolute;inset:0}.vignette.hit{animation:.6s ease-out hurt}@keyframes hurt{0%{opacity:1}to{opacity:0}}.pause,.settings,.controls,.victory{background:radial-gradient(#04060873,#040608d1)}.row{letter-spacing:.04em;justify-content:space-between;align-items:center;gap:1.5rem;padding:.35rem 0;font-size:.92rem;display:flex}.row input[type=range]{width:200px;accent-color:var(--jade)}.row input[type=checkbox]{width:20px;height:20px;accent-color:var(--jade)}.seg{border:1px solid var(--line);border-radius:3px;display:flex;overflow:hidden}.seg button{cursor:pointer;letter-spacing:.08em;color:#cfc6b2;background:0 0;border:0;padding:.45rem .9rem;font-size:.82rem}.seg button.on{color:#eafff8;background:#5cf2c82e}.seg button:focus-visible{outline:1px solid var(--gold-hi)}.lang-seg button{min-width:3.6rem}.title-panel .lang-seg{background:#080c1673;margin-top:1.4rem}.fs-toggle{display:none}.settings .btn,.controls .btn{align-self:center;margin-top:.8rem}.settings{padding:var(--safe-t) var(--safe-r) var(--safe-b) var(--safe-l);overflow-y:auto}.skins{border-top:1px solid #d9b26b24;flex-direction:column;gap:.45rem;padding-top:.6rem;display:flex}.skins h2{letter-spacing:.24em;text-transform:uppercase;color:var(--gold-hi);margin:0;font-size:.92rem;font-weight:700}.skins p{color:#bfb6a2;max-width:26rem;margin:0 0 .2rem;font-size:.8rem;line-height:1.5}.skin-row{letter-spacing:.04em;grid-template-columns:44px 1fr auto;align-items:center;gap:.8rem;font-size:.92rem;display:grid}.skin-row img{object-fit:cover;border:1px solid var(--line);background:#080c1680;border-radius:50%;width:44px;height:44px}.skin-row select{border:1px solid var(--line);min-width:9.5rem;font:inherit;letter-spacing:.04em;color:#eafff8;cursor:pointer;background:#080c168c;border-radius:3px;padding:.4rem .6rem;font-size:.82rem}.skin-row select:focus-visible{outline:1px solid var(--gold-hi)}.skin-row select option{color:#1d2430;background:#f4efe4}.intro{color:#d6cdb9;margin:0 0 .6rem;font-size:.95rem;line-height:1.6}.keys{grid-template-columns:1fr 1fr;gap:.35rem 2rem;display:grid}.keys div{border-bottom:1px solid #d9b26b1a;align-items:center;gap:.5rem;padding:.35rem 0;font-size:.88rem;display:flex}.keys div span{color:#d6cdb9;flex:1}.keys kbd.pad,[data-input=gamepad] .keys kbd{display:none}[data-input=gamepad] .keys kbd.pad{display:inline-block}.victory .panel{text-align:center;align-items:center;max-width:620px}.victory .panel p{color:#d6cdb9;margin:0;line-height:1.6}.victory .stats{letter-spacing:.08em;color:var(--gold-hi)!important}.death{text-align:center;background:radial-gradient(#1e000040,#140000cc);flex-direction:column;justify-content:center;align-items:center}.death h1{letter-spacing:.3em;text-transform:uppercase;color:#f0b8b8;text-shadow:0 0 30px #c81e2899;margin:0;font-size:clamp(1.8rem,4vw,3rem)}.death p{color:#c9b7b0;letter-spacing:.2em;text-transform:uppercase;font-size:.8rem}.tree{padding:calc(22px + var(--safe-t)) calc(28px + var(--safe-r)) 0 calc(28px + var(--safe-l));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:radial-gradient(at 50% 0,#142824db,#050709f0 70%);flex-direction:column;overflow-y:auto}.tree-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:1rem;padding-bottom:.9rem;display:flex}.tree-head h1{letter-spacing:.34em;text-transform:uppercase;color:var(--gold-hi);margin:0;font-size:1.8rem}.tree-points{color:var(--muted);letter-spacing:.1em;margin:.35rem 0 0;font-size:.9rem}.tree-points.has-points{color:var(--gold-hi);text-shadow:0 0 14px #f6e2ae66}.tree-tools{gap:.8rem;display:flex}.tree-tools .btn{min-width:0;padding:.6rem 1.1rem;font-size:.8rem}.branches{flex:none;grid-template-columns:minmax(0,2fr) repeat(4,minmax(0,1fr));gap:16px;padding:18px 0;display:grid}.branch{--c:var(--jade);background:linear-gradient(180deg, color-mix(in srgb, var(--c) 10%, #0c0f13e6), #080a0deb);border:1px solid color-mix(in srgb, var(--c) 35%, transparent);border-radius:6px;flex-direction:column;gap:10px;min-width:0;padding:16px;display:flex;position:relative}.branch[data-species=magic]{--c:#b9a2ff}.branch[data-species=wolf]{--c:#9ccfff}.branch[data-species=golem]{--c:#7fe0a0}.branch[data-species=drake]{--c:#ff8a4c}.branch.sealed{border-style:dashed}.branch.sealed .portrait img{filter:grayscale()brightness(.45)}.branch-head{align-items:center;gap:12px;display:flex}.branch .portrait{border-color:color-mix(in srgb, var(--c) 70%, transparent);width:64px;height:64px;box-shadow:0 0 16px color-mix(in srgb, var(--c) 30%, transparent)}.branch-name{flex:1;min-width:0}.branch-name h2{letter-spacing:.12em;text-transform:uppercase;color:#fff;overflow-wrap:break-word;margin:0;font-size:1.05rem;line-height:1.2}.branch-name em{letter-spacing:.2em;text-transform:uppercase;color:var(--c);margin-top:3px;font-size:.72rem;font-style:normal;line-height:1.3;display:block}.badge{border:1px solid color-mix(in srgb, var(--c) 60%, transparent);color:var(--c);letter-spacing:.06em;background:#0b0f12;border-radius:3px;padding:.15rem .55rem;font-size:.78rem;font-weight:700;position:absolute;top:0;right:14px;transform:translateY(-50%)}.branch.sealed .badge{color:var(--muted);text-transform:uppercase;border-color:#ffffff2e;font-size:.6rem;font-weight:500}.branch-desc{color:#bdb4a2;min-height:3.2em;margin:0;font-size:.8rem;line-height:1.45}.nodes{flex-direction:column;align-items:stretch;display:flex}.tier{grid-auto-columns:minmax(0,200px);grid-auto-flow:column;justify-content:center;gap:8px;display:grid}.tier.choose{border:1px solid color-mix(in srgb, var(--c) 35%, transparent);background:color-mix(in srgb, var(--c) 6%, transparent);border-radius:8px;width:min(100%,640px);margin-inline:auto;padding:8px 8px 1.6em;position:relative}.tier.choose:after{content:attr(data-note);text-align:center;letter-spacing:.3em;text-transform:uppercase;color:var(--muted);font-size:.6rem;position:absolute;bottom:.45em;left:0;right:0}[data-node=magic\.ember]{--c:#ff9a5c}[data-node=magic\.frost]{--c:#9fdcff}[data-node=magic\.storm]{--c:#d4b0ff}.link{background:linear-gradient(180deg, color-mix(in srgb, var(--c) 60%, transparent), color-mix(in srgb, var(--c) 15%, transparent));width:2px;height:14px;margin:0 auto;display:block}.node{cursor:pointer;text-align:center;background:#00000059;border:1px solid #ffffff1a;border-radius:5px;flex-direction:column;align-items:center;gap:5px;width:100%;padding:.7rem .6rem;transition:border-color .2s,box-shadow .2s,background .2s,transform .12s;display:flex;position:relative}.node.evolve{border-radius:14px}.node-title{letter-spacing:.06em;color:#e8e0cf;font-size:.8rem;font-weight:700}.node-foot{letter-spacing:.08em;color:var(--muted);font-size:.68rem}.pips{gap:4px;display:flex}.pips i{border:1px solid color-mix(in srgb, var(--c) 60%, transparent);width:9px;height:9px;transform:rotate(45deg)}.pips i.on{background:var(--c);box-shadow:0 0 6px var(--c)}.node.owned{background:color-mix(in srgb, var(--c) 12%, #0006);border-color:color-mix(in srgb, var(--c) 40%, transparent)}.node.available{border-color:color-mix(in srgb, var(--c) 80%, transparent);animation:2s ease-in-out infinite node-pulse}.node.available .node-foot{color:var(--gold-hi)}.node.maxed{background:color-mix(in srgb, var(--c) 16%, #0006);border-color:#f6e2aea6}.node.maxed .node-foot{color:var(--gold-hi)}.node.locked{opacity:.55}.node:hover,.node:focus-visible{box-shadow:0 0 0 1px var(--gold-hi), 0 0 18px color-mix(in srgb, var(--c) 35%, transparent);outline:none;transform:translateY(-1px)}.node.bought{animation:bought .7s var(--ease)}@keyframes node-pulse{50%{box-shadow:0 0 16px color-mix(in srgb, var(--c) 40%, transparent), inset 0 0 12px color-mix(in srgb, var(--c) 12%, transparent)}}@keyframes bought{0%{box-shadow:0 0 40px var(--c);transform:scale(1.08)}}.branch-stats{letter-spacing:.04em;color:#b8b0a0;border-top:1px solid #ffffff0f;margin:auto 0 0;padding-top:8px;font-size:.7rem;line-height:1.5}.tree-detail{min-height:64px;padding:.8rem 1rem calc(.8rem + var(--safe-b));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#06090bf0;flex-direction:column;flex:none;gap:3px;margin-top:auto;display:flex;position:sticky;bottom:0}.tree-detail:empty{display:none}.tree-detail strong{color:var(--gold-hi);letter-spacing:.1em;text-transform:uppercase;font-size:.9rem}.tree-detail span{color:#d6cdb9;font-size:.88rem}.tree-detail em{color:var(--muted);letter-spacing:.06em;font-size:.78rem;font-style:normal}.tree-detail em.ok{color:var(--jade)}@media (max-width:1440px){.branch .portrait{width:52px;height:52px}}@media (max-width:1200px){.branches{grid-template-columns:repeat(2,minmax(0,1fr))}.branch[data-species=magic]{grid-column:1/-1}}@media (max-width:720px),(max-height:520px){.bar{width:190px}.bar.mp{width:170px}.bar.xp{width:150px}.portrait{width:58px;height:58px}.slot{width:60px;height:60px}.title-panel{text-align:center;align-items:center;margin:auto}.panel{padding:1.4rem}.keys{grid-template-columns:1fr}.branches{grid-template-columns:minmax(0,1fr)}.tree{padding-top:calc(12px + var(--safe-t))}.tree-head h1{font-size:1.3rem}.tree-detail{min-height:0;padding-top:.55rem}}@media (prefers-reduced-motion:reduce){.sigil,.node.available,.points-chip.show{animation:none}}.cur-spark{z-index:99;pointer-events:none;width:0;height:0;animation:.55s linear forwards spark-life;position:fixed}.cur-spark:before{content:"";width:24px;height:24px;box-shadow:0 0 12px var(--jade), inset 0 0 8px #5cf2c880;animation:spark-ring .45s var(--ease) forwards;border:2px solid #5cf2c8e6;border-radius:50%;position:absolute;top:-12px;left:-12px}.cur-spark.strong:before{border-color:var(--gold-hi);box-shadow:0 0 16px #f6e2aee6,inset 0 0 8px #f6e2ae80}.cur-spark i{width:4px;height:4px;box-shadow:0 0 6px #ffd46a, 0 0 10px var(--jade);animation:spark-mote .5s var(--ease) forwards;background:#fff7d0;border-radius:50%;margin:-2px;position:absolute}.cur-spark i:first-child{--a:0deg}.cur-spark i:nth-child(2){--a:60deg}.cur-spark i:nth-child(3){--a:120deg}.cur-spark i:nth-child(4){--a:180deg}.cur-spark i:nth-child(5){--a:240deg}.cur-spark i:nth-child(6){--a:300deg}@keyframes spark-life{to{opacity:0}}@keyframes spark-ring{0%{opacity:1;transform:scale(.3)}to{opacity:0;transform:scale(1.6)}}@keyframes spark-mote{0%{transform:rotate(var(--a)) translateX(4px) scale(1)}to{transform:rotate(var(--a)) translateX(28px) scale(.2);opacity:0}}.glint{animation:.38s ease-out glint}@keyframes glint{0%{filter:brightness(1.5)saturate(1.2)}to{filter:none}}.bump{animation:bump .42s var(--ease)}@keyframes bump{0%{transform:scale(1)}35%{filter:brightness(1.4);transform:scale(1.12)}to{transform:scale(1)}}.compass{top:calc(12px + var(--safe-t));width:420px;max-width:60vw;height:34px;position:absolute;left:50%;overflow:hidden;transform:translate(-50%);-webkit-mask:linear-gradient(90deg,#0000,#000 14% 86%,#0000);mask:linear-gradient(90deg,#0000,#000 14% 86%,#0000)}.compass:before{content:"";background:linear-gradient(90deg,#0000,#f6e2aee6 18% 82%,#0000);height:1px;position:absolute;top:50%;left:0;right:0;box-shadow:0 0 6px #ffd26a8c,0 1px 2px #000000b3}.compass-strip{height:100%;position:absolute;top:0;left:50%}.compass-needle{border:5px solid #0000;border-top-color:var(--gold-hi);filter:drop-shadow(0 0 4px #f6e2aecc);width:0;height:0;margin-left:-5px;position:absolute;top:0;left:50%}.cm{width:24px;height:24px;color:var(--gold-hi);text-shadow:0 0 4px #000,0 1px 2px #000;will-change:transform;background:50%/contain no-repeat;place-items:center;margin:-12px 0 0 -12px;font-size:.8rem;font-weight:800;display:grid;position:absolute;top:50%;left:0}.cm.cardinal{color:#fff8e6;font-size:1.12rem}.cm.cardinal:first-child{color:#ff8f6b}.cm.tick{font-size:0}.cm.tick:before{content:"";background:var(--gold-hi);width:5px;height:5px;transform:rotate(45deg);box-shadow:0 0 3px #000}.cm.village:before{content:"⌂";color:#ffd9a0;font-size:1rem}.cm.sanctum:before{content:"✦";color:var(--jade)}.cm.chest:before{content:"▣";color:#ffd46a;font-size:.7rem}.cm.crystal:before{content:"◆";color:#c58bff;text-shadow:0 0 6px #a05cff;font-size:.75rem}.cm.boss:before{content:"☠";color:#ff6b6b;font-size:.95rem}.cm.quest{background-image:var(--art-marker_quest);width:18px;height:18px;margin:-9px 0 0 -9px}.cm.turnin{background-image:var(--art-marker_turnin);width:18px;height:18px;margin:-9px 0 0 -9px}.cm.objective{background-image:var(--art-marker_quest);filter:drop-shadow(0 0 6px #ffd26ae6);width:26px;height:26px;margin:-13px 0 0 -13px;animation:1.6s ease-in-out infinite objective-pulse}@keyframes objective-pulse{50%{filter:drop-shadow(0 0 12px #ffd26a)}}.boss{top:calc(56px + var(--safe-t))}.boot{background:linear-gradient(0deg, #040506eb 0%, #04050659 45%, #0405068c 100%), var(--art-loading,none) center / cover no-repeat, #06080b}.hud-tr{top:calc(14px + var(--safe-t));right:calc(18px + var(--safe-r));flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:absolute}.gold-chip{border:1px solid var(--line);color:var(--gold-hi);text-shadow:0 1px 2px #000;background:linear-gradient(90deg,#0e0c0866,#0e0c08bf);border-radius:999px;align-items:center;gap:8px;padding:4px 14px 4px 6px;font-size:1.05rem;font-weight:700;display:flex}.gold-chip img{filter:drop-shadow(0 0 6px #ffd26a99);width:26px;height:26px}.tracker{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:left;background:linear-gradient(90deg,#10182cdb,#0e1424ad);border:1px solid #d9b26bd9;border-radius:4px;width:290px;max-width:42vw;padding:7px 12px 8px 42px;display:none;position:relative;box-shadow:0 0 0 2px #06080e73,0 4px 14px #0000004d}.tk-ico{background:linear-gradient(135deg,#ffd46a,#b07a24);border:2px solid #fff0c4;border-radius:3px;width:18px;height:18px;position:absolute;top:12px;left:12px;transform:rotate(45deg);box-shadow:0 0 10px #ffd26a8c}.tk-ico:after{content:"!";color:#2a1a05;place-items:center;font-size:.78rem;font-style:normal;font-weight:900;display:grid;position:absolute;inset:0;transform:rotate(-45deg)}.tracker.side .tk-ico{background:linear-gradient(135deg,#e6ecf5,#8794a8);border-color:#f4f7fb;box-shadow:0 0 8px #c8d6eb73}.tracker.tk-contract{border-color:#96b2f4d9}.tracker.tk-contract .tk-ico{background:linear-gradient(135deg,#7d9cf0,#2c3f86);border-color:#dbe6ff;box-shadow:0 0 10px #7d9cf08c}.tracker.tk-contract .tk-ico:after{color:#fff}.tracker.tk-contract h4{color:#dbe6ff}.tracker.tk-contract.done{border-color:var(--jade)}.tracker.tk-contract.done p{color:var(--jade)}.tracker.show{animation:.4s fade-in;display:block}.tracker.side{border-color:#b8c4d6d9}.tracker small{letter-spacing:.24em;text-transform:uppercase;color:var(--muted);font-size:.6rem;display:block}.tracker h4{letter-spacing:.04em;color:var(--gold-hi);text-shadow:0 1px 2px #000;margin:1px 0 4px;font-size:.95rem}.tracker.side h4{color:#e6ecf5}.tracker p{color:#efe6d2;text-shadow:0 1px 2px #000;justify-content:space-between;align-items:baseline;gap:8px;margin:0;font-size:.82rem;display:flex}.tracker p[data-dist]:not([data-dist=""]):after{content:attr(data-dist);color:var(--muted);white-space:nowrap;flex:none;font-size:.72rem}.tracker.bump{animation:tracker-flash .6s var(--ease)}@keyframes tracker-flash{0%{background:#f6e2ae59}to{background:linear-gradient(90deg,#0c0e16d6,#080a0ea8)}}.quest-cue{z-index:2;text-align:center;opacity:0;pointer-events:none;white-space:nowrap;position:absolute;top:29%;left:50%;transform:translate(-50%)}.quest-cue.show{animation:cue 3.2s var(--ease) forwards}.quest-cue.complete.show{animation-duration:4.2s}.quest-cue small{letter-spacing:.4em;text-transform:uppercase;color:var(--jade);background:var(--art-divider) center bottom / 260px auto no-repeat;text-shadow:0 1px 3px #000;padding-bottom:14px;font-size:.74rem;display:block}.quest-cue h3{letter-spacing:.08em;color:var(--gold-hi);text-shadow:0 2px 4px #000000d9,0 0 26px #d9b26b73;margin:6px 0 0;font-size:clamp(1.3rem,2.6vw,1.9rem)}.quest-cue p{color:#efe6d2;letter-spacing:.06em;text-shadow:0 1px 3px #000;margin:6px 0 0;font-size:.88rem}.quest-cue.complete small{color:var(--gold-hi)}.quest-cue.complete h3{text-shadow:0 2px 4px #000000d9,0 0 40px #ffd26ab3;font-size:clamp(1.6rem,3.2vw,2.4rem)}.quest-cue.complete p{color:#ffd46a;font-weight:700}@keyframes cue{0%{opacity:0;transform:translate(-50%,10px)scale(.96)}12%{opacity:1;transform:translate(-50%)scale(1)}82%{opacity:1}to{opacity:0;transform:translate(-50%,-6px)}}.loot-feed{right:calc(18px + var(--safe-r));bottom:calc(200px + var(--safe-b));flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:absolute}.loot-entry{border-right:3px solid var(--rc);color:color-mix(in srgb, var(--rc) 65%, white);text-shadow:0 1px 2px #000;animation:loot-in .35s var(--ease);background:linear-gradient(90deg,#0000,#080a0ecc 30%);align-items:center;gap:9px;padding:4px 14px 4px 6px;font-size:.86rem;display:flex}.loot-entry img{width:32px;height:32px;filter:drop-shadow(0 0 6px color-mix(in srgb, var(--rc) 70%, transparent))}.loot-entry b{color:#fff}.loot-entry.out{opacity:0;transition:opacity .4s,transform .4s;transform:translate(24px)}@keyframes loot-in{0%{opacity:0;transform:translate(40px)}}.prompt{left:50%;bottom:calc(124px + var(--safe-b));border:1px solid var(--line);white-space:nowrap;background:#080a0ebf;border-radius:999px;align-items:center;gap:10px;padding:4px 18px 4px 4px;display:none;position:absolute;transform:translate(-50%)}.prompt.show{animation:prompt-in .25s var(--ease);display:flex}@keyframes prompt-in{0%{opacity:0;transform:translate(-50%,6px)scale(.94)}}.prompt-key{place-items:center;width:40px;height:40px;display:grid;position:relative}.prompt-key kbd{border-radius:50%;place-items:center;min-width:30px;height:30px;padding:0;display:grid;position:relative}.prompt .hold{position:absolute;inset:0;transform:rotate(-90deg)}.prompt .hold circle{fill:none;stroke:var(--jade);stroke-width:3px;stroke-dasharray:106.8;stroke-dashoffset:calc((1 - var(--hold,0)) * 106.8);filter:drop-shadow(0 0 4px var(--jade))}.prompt .verb{letter-spacing:.2em;text-transform:uppercase;color:var(--gold-hi);font-size:.78rem;font-weight:700}.prompt .label{color:var(--parch);font-size:.92rem}.prompt.locked .verb{color:#c58bff}.prompt.locked kbd{opacity:.45}.toast{bottom:calc(176px + var(--safe-b))}.hud-br{right:calc(18px + var(--safe-r));bottom:calc(22px + var(--safe-b));gap:10px;display:flex;position:absolute}.round{background:var(--art-ring) center / 100% no-repeat, radial-gradient(circle, #10141ae6 58%, transparent 60%);pointer-events:auto;width:54px;height:54px;transition:transform .15s var(--ease), filter .15s;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:relative}.round svg{width:22px;height:22px;fill:var(--gold-hi);filter:drop-shadow(0 1px 2px #000)}.round kbd{min-width:1.4em;padding:0 .3em;font-size:.6rem;position:absolute;bottom:-4px;right:-4px}.round:hover{filter:brightness(1.25)drop-shadow(0 0 10px #5cf2c873);transform:scale(1.08)}.compact-hud .round kbd,body[data-input=touch] .round kbd{display:none}.minimap{--mm:168px;left:calc(26px + var(--safe-l));bottom:calc(46px + var(--safe-b));width:var(--mm);height:var(--mm);pointer-events:none;position:absolute}.minimap canvas{border-radius:50%;width:100%;height:100%;display:block;box-shadow:0 6px 18px #00000080}.minimap:before{content:"";background:var(--art-ring) center / 100% no-repeat;filter:drop-shadow(0 2px 4px #0009);position:absolute;inset:-9%}.mm-zone{white-space:nowrap;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-hi);text-shadow:0 1px 2px #000;background:linear-gradient(90deg,#0000,#080a0ed1 18% 82%,#0000);padding:2px 16px;font-size:.66rem;font-weight:700;position:absolute;top:calc(100% + 12px);left:50%;transform:translate(-50%)}.plate.npc .plate-bar{display:none}.plate.npc .plate-name{color:var(--gold-hi);font-size:.8rem;font-weight:700;bottom:0}.plate.npc .plate-name small{letter-spacing:.14em;text-transform:uppercase;color:#d5cbb5;font-size:.6rem;font-weight:500;display:block}.screen.rpg.is-active{pointer-events:auto}.screen.rpg.shop.is-active,.screen.rpg.bag.is-active,.screen.rpg.journal.is-active{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:radial-gradient(#04060880,#040608e0);justify-content:center;align-items:center}.cn{background:var(--art-corner) center / contain no-repeat;pointer-events:none;filter:drop-shadow(0 2px 3px #0009);width:58px;height:58px;position:absolute}.cn.tl{top:-9px;left:-9px}.cn.tr{top:-9px;right:-9px;transform:scaleX(-1)}.cn.bl{bottom:-9px;left:-9px;transform:scaleY(-1)}.cn.br{bottom:-9px;right:-9px;transform:scale(-1)}.rpanel{border:1px solid var(--line-strong);width:min(1000px,94vw);max-height:calc(100vh - 90px);animation:panel-in .35s var(--ease);background:linear-gradient(#121816f2,#080a0cf7);flex-direction:column;padding:22px 28px 20px;display:flex;position:relative;box-shadow:0 30px 80px #000000b3,inset 0 0 0 6px #00000059,inset 0 0 0 7px #d9b26b2e}@keyframes panel-in{0%{opacity:0;transform:translateY(14px)scale(.98)}}.rpanel header{background:var(--art-divider) center bottom / 380px auto no-repeat;align-items:center;gap:16px;padding-bottom:16px;display:flex}.rpanel .crest{border:1px solid var(--line);background:radial-gradient(circle,#5cf2c82e,#0000 70%);border-radius:50%;flex:none;place-items:center;width:60px;height:60px;display:grid}.rpanel .crest img{width:48px;height:48px}.rpanel h2{letter-spacing:.04em;color:var(--gold-hi);text-shadow:0 2px 4px #000,0 0 22px #d9b26b4d;margin:0;font-size:clamp(1.4rem,2.6vw,1.9rem)}.rpanel header p{letter-spacing:.1em;color:var(--muted);align-items:center;gap:10px;margin:2px 0 0;font-style:italic;display:flex}.rpanel h5{letter-spacing:.22em;text-transform:uppercase;color:var(--gold);align-items:center;gap:10px;margin:14px 0 8px;font-size:.74rem;display:flex}.rpanel h5:after{content:"";background:linear-gradient(90deg, var(--line), transparent);flex:1;height:1px}.rpanel h5 small{color:var(--muted);letter-spacing:.05em}.tabs{align-items:center;gap:8px;margin:14px 0 12px;display:flex}.tabs button{border:1px solid var(--line);color:#d8cfbb;letter-spacing:.12em;text-transform:uppercase;background:#00000059;padding:.5rem 1.6rem;font-size:.8rem}.tabs button.on{border-color:var(--jade);color:#eafff8;background:linear-gradient(#1d8f7899,#082822e6);box-shadow:0 0 18px #5cf2c833}.tabs button:hover{color:#fff;border-color:var(--line-strong)}.purse{margin-left:auto;font-size:1.25rem}.price{color:var(--gold-hi);align-items:center;gap:5px;font-weight:700;display:inline-flex}.price img{width:20px;height:20px}.empty{color:var(--muted);font-style:italic}.rpg-keys{right:calc(28px + var(--safe-r));bottom:calc(16px + var(--safe-b));color:#cfc6b2;letter-spacing:.06em;text-shadow:0 1px 2px #000;gap:22px;font-size:.8rem;display:flex;position:absolute}.rpg-keys kbd{margin-right:6px}.has-touch .rpg-keys{display:none}.grid{flex:0 auto;grid-template-columns:repeat(auto-fill,minmax(136px,1fr));gap:10px;min-height:142px;max-height:300px;padding:2px;display:grid;overflow:auto}.card{border:1px solid color-mix(in srgb, var(--rc) 50%, transparent);background:radial-gradient(ellipse at 50% 30%, color-mix(in srgb, var(--rc) 22%, transparent), #0000008c 72%);transition:transform .15s var(--ease), box-shadow .15s;border-radius:4px;flex-direction:column;align-items:center;gap:2px;padding:10px 8px 8px;display:flex;position:relative}.card:hover,.card:focus-visible{box-shadow:0 0 18px color-mix(in srgb, var(--rc) 45%, transparent);outline:none;transform:translateY(-2px)}.card.on{border-color:var(--rc);box-shadow:0 0 0 1px var(--rc), 0 0 24px color-mix(in srgb, var(--rc) 50%, transparent)}.card-art img{object-fit:contain;filter:drop-shadow(0 4px 6px #0009);width:84px;height:84px;display:block}.card-name{color:#f2ead9;text-align:center;font-size:.82rem}.card-sub{color:var(--muted);text-align:center;text-overflow:ellipsis;white-space:nowrap;align-self:stretch;font-size:.72rem;overflow:hidden}.card .lock{background:#0406088c;border-radius:4px;position:absolute;inset:0}.card .qty,.cell b{color:#fff;text-shadow:0 1px 2px #000;font-size:.75rem;position:absolute;top:4px;right:6px}.rarity{letter-spacing:.04em;font-size:.74rem;display:block}.detail{border:1px solid color-mix(in srgb, var(--rc) 55%, transparent);background:linear-gradient(90deg, color-mix(in srgb, var(--rc) 12%, transparent), #0006);flex-wrap:wrap;gap:14px 22px;margin-top:14px;padding:14px 18px;display:flex}.detail-main{flex:320px}.detail-worn{border-left:1px solid var(--line);flex:0 280px;padding-left:20px}.detail-worn small{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:.66rem;display:block}.detail-head{align-items:center;gap:12px;display:flex}.detail-head .card-art img{width:56px;height:56px}.detail h3{color:color-mix(in srgb, var(--rc) 70%, white);margin:0;font-size:1.2rem}.detail dl,.stats{grid-template-columns:1fr auto;gap:3px 18px;margin:10px 0 0;font-size:.86rem;display:grid}.detail dt,.stats dt{color:#cfc6b2}.detail dd,.stats dd{text-align:right;color:var(--jade);margin:0;font-weight:700}.flavor{color:var(--muted);margin:10px 0 0;font-size:.82rem;font-style:italic}.detail-foot{flex-basis:100%;justify-content:flex-end;align-items:center;gap:16px;display:flex}.detail-foot .price{font-size:1.2rem}.detail-foot .btn{min-width:150px;margin:0}.btn[aria-disabled=true]{filter:grayscale(.85)brightness(.75)}.hint-sell{color:var(--muted);align-items:center;gap:8px;font-size:.85rem;display:inline-flex}.hint-sell.warn{color:#f2b48e;margin-right:auto}.bag-top{grid-template-columns:150px minmax(220px,1fr) minmax(200px,1fr);align-items:start;gap:18px;margin-top:14px;display:grid}.hero img{object-fit:cover;border:1px solid var(--line-strong);width:150px;height:150px;display:block;box-shadow:inset 0 0 20px #000,0 6px 18px #0009}.gear{flex-direction:column;gap:8px;display:flex}.gear-slot{border:1px solid color-mix(in srgb, var(--rc) 55%, transparent);text-align:left;background:#00000059;align-items:center;gap:10px;padding:4px 10px 4px 4px;display:flex}.gear-slot .card-art img{width:40px;height:40px}.gear-slot small{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-size:.62rem;display:block}.gear-slot b{font-size:.86rem;display:block}.gear-slot:hover{box-shadow:0 0 14px color-mix(in srgb, var(--rc) 40%, transparent)}.stats{border:1px solid var(--line);background:#0000004d;margin:0;padding:10px 14px}.stats dd{color:var(--gold-hi)}.grid.inv{grid-template-columns:repeat(auto-fill,64px);min-height:70px;max-height:150px}.cell{border:1px solid color-mix(in srgb, var(--rc) 50%, transparent);background:radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--rc) 22%, transparent), #0009 75%);width:64px;height:64px;transition:transform .12s var(--ease);border-radius:4px;padding:0;position:relative}.cell img{object-fit:contain;width:50px;height:50px}.cell:hover{box-shadow:0 0 14px color-mix(in srgb, var(--rc) 50%, transparent);transform:translateY(-2px)}.cell.on{border-color:var(--rc);box-shadow:0 0 0 1px var(--rc), 0 0 18px color-mix(in srgb, var(--rc) 50%, transparent)}.cell.worn:after{content:"E";background:var(--jade-deep);color:#eafff8;border-radius:50%;place-items:center;width:15px;height:15px;font-size:.6rem;font-weight:700;display:grid;position:absolute;top:2px;left:3px}.journal-cols{flex:1;grid-template-columns:270px 1fr;gap:20px;min-height:0;display:grid}.qlist{max-height:470px;overflow:auto}.qlist h5{margin-top:4px}.qrow{text-align:left;color:#e3dccb;background:0 0;border:1px solid #0000;align-items:center;gap:10px;width:100%;padding:8px 10px;font-size:.88rem;display:flex}.qrow i{background:var(--art-marker_quest) center / contain no-repeat;flex:none;width:18px;height:18px}.qrow.done i{border:1px solid var(--jade);background:0 0;border-radius:50%;position:relative}.qrow.done i:after{content:"✓";color:var(--jade);place-items:center;font-size:.7rem;display:grid;position:absolute;inset:0}.qrow.done span{color:var(--muted)}.qrow.offer i{filter:grayscale()brightness(.8)}.qrow.on,.qrow:hover{border-color:var(--line-strong);color:#fff;background:linear-gradient(90deg,#5cf2c81f,#0000)}.qbody{border:1px solid var(--line);background:#0000004d;max-height:470px;padding:16px 22px;overflow:auto}.qbody h3{color:var(--gold-hi);margin:0;font-size:1.45rem}.qbody .kind{letter-spacing:.12em;color:var(--muted);font-size:.76rem}.summary{color:#efe6d2;margin:10px 0 0;font-size:.92rem;line-height:1.55}.objectives{flex-direction:column;gap:6px;margin:0;padding:0;font-size:.9rem;list-style:none;display:flex}.objectives li{align-items:center;gap:10px;display:flex}.objectives li:before{content:"";border:1px solid var(--muted);border-radius:50%;flex:none;width:14px;height:14px}.objectives li.done{color:var(--muted)}.objectives li.done:before{content:"✓";border-color:var(--jade);color:var(--jade);place-items:center;font-size:.7rem;display:grid}.objectives li.current{color:var(--gold-hi)}.objectives li.current:before{border-color:var(--gold-hi);box-shadow:0 0 8px #f6e2ae99}.objectives li.later{color:#8a826f}.rewards{flex-wrap:wrap;gap:10px;display:flex}.reward{--rc:var(--gold);border:1px solid color-mix(in srgb, var(--rc) 55%, transparent);background:radial-gradient(circle at 50% 35%, color-mix(in srgb, var(--rc) 20%, transparent), #00000080);text-align:center;flex-direction:column;align-items:center;gap:4px;width:92px;padding:8px 6px;font-size:.76rem;display:flex}.reward img{width:44px;height:44px}.reward .xp{width:44px;height:44px;color:var(--gold-hi);text-shadow:0 0 10px #ffd26ab3;place-items:center;font-size:1.2rem;font-weight:700;display:grid}.reward b{color:#f2ead9}blockquote{text-align:center;color:#cfc6b2;background:var(--art-divider) center top / 220px auto no-repeat;margin:18px 0 0;padding-top:14px;font-style:italic}blockquote cite{color:var(--muted);margin-top:4px;font-size:.8rem;display:block}.screen.rpg.talk.is-active{padding-bottom:calc(118px + var(--safe-b));background:linear-gradient(#0000 55%,#00000080);justify-content:center;align-items:flex-end}.talk .rpg-keys{bottom:calc(16px + var(--safe-b))}.dialog{border:1px solid var(--line-strong);width:min(820px,94vw);animation:panel-in .3s var(--ease);background:linear-gradient(#141818f0,#080a0cf5);gap:18px;padding:16px 24px 16px 16px;display:flex;position:relative;box-shadow:0 20px 60px #000000a6,inset 0 0 0 5px #00000059,inset 0 0 0 6px #d9b26b29}.dialog-portrait{border:1px solid var(--line-strong);flex:none;width:132px;height:132px;overflow:hidden;box-shadow:inset 0 0 18px #000}.dialog-portrait img{object-fit:cover;width:100%;height:100%;animation:portrait-in .6s var(--ease);display:block}@keyframes portrait-in{0%{filter:brightness(1.6);transform:scale(1.12)}}.dialog-body{flex:1;min-width:0}.dialog-name{background:var(--art-divider) left bottom / 240px auto no-repeat;align-items:baseline;gap:12px;padding-bottom:10px;display:flex}.dialog-name b{color:var(--gold-hi);letter-spacing:.04em;font-size:1.1rem}.dialog-name span{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-size:.7rem}.dialog-line{color:#f2ead9;min-height:3.1em;margin:10px 0;font-size:1rem;line-height:1.55}.dialog-choices{transition:opacity .25s, transform .25s var(--ease);flex-direction:column;gap:3px;display:flex}.dialog:not(.ready) .dialog-choices{opacity:0;pointer-events:none;transform:translateY(4px)}.choice{text-align:left;color:#e3dccb;transition:background .15s, border-color .15s, padding .15s var(--ease);background:0 0;border:1px solid #0000;align-items:center;gap:10px;padding:6px 10px;font-size:.92rem;display:flex}.choice i{isolation:isolate;width:22px;height:22px;color:var(--gold-hi);flex:none;place-items:center;font-size:.68rem;font-style:normal;font-weight:700;display:grid;position:relative}.choice i:before{content:"";border:1px solid var(--gold);z-index:-1;background:#0006;position:absolute;inset:4px;transform:rotate(45deg)}.choice:hover i:before,.choice:focus-visible i:before{border-color:var(--gold-hi);background:#d9b26b4d}.choice:hover,.choice:focus-visible{border-color:var(--line-strong);color:#fff;background:linear-gradient(90deg,#d9b26b24,#0000);outline:none;padding-left:16px}.choice.quest span:before,.choice.turnin span:before{content:"";vertical-align:-2px;background:var(--art-marker_quest) center / contain no-repeat;width:15px;height:15px;margin-right:6px;display:inline-block}.choice.turnin span:before{background-image:var(--art-marker_turnin)}.choice.quest span{color:var(--gold-hi)}.choice.turnin span{color:#9effd8}.choice.shop span{color:#ffd46a}.choice.bye span{color:var(--muted)}@media (max-height:760px){.rpanel{padding:14px 24px}.rpanel header{padding-bottom:10px}.bag-top{margin-top:8px}.detail{gap:8px 18px;margin-top:8px;padding:10px 14px}.detail-head .card-art img{width:44px;height:44px}.detail dl{margin-top:6px}}@media (max-width:760px){.compass{width:300px;top:calc(10px + var(--safe-t))}.bag-top{grid-template-columns:1fr 1fr}.hero{display:none}.journal-cols{grid-template-columns:1fr}.dialog-portrait{width:84px;height:84px}.tracker{width:220px}}.rank-chip{top:calc(106px + var(--safe-t));left:calc(16px + var(--safe-l));border:1px solid var(--gold);height:28px;color:var(--gold-hi);pointer-events:auto;background:linear-gradient(90deg,#1c2448eb,#0c0e1ad1);border-radius:3px;align-items:center;gap:6px;padding:0 14px 4px 36px;display:none;position:absolute;box-shadow:0 0 0 2px #08080c99,0 4px 12px #00000073}.rank-chip.show{display:flex}.rank-chip img{object-fit:contain;filter:drop-shadow(0 0 6px #ffd26a80);width:36px;height:36px;position:absolute;top:50%;left:-4px;transform:translateY(-50%)}.rank-chip small{letter-spacing:.2em;text-transform:uppercase;font-size:.62rem;font-weight:700}.rank-chip b{color:#fff3cf;text-shadow:0 0 8px #ffd26a99,0 1px 2px #000;font-size:1.05rem;line-height:1}.rank-chip span{letter-spacing:.1em;text-transform:uppercase;font-size:.6rem;display:none}.rank-chip.ready span{display:inline}.rk-bar{background:#f6e2ae29;border-radius:2px;height:3px;position:absolute;bottom:3px;left:34px;right:6px;overflow:hidden}.rk-bar u{transform-origin:0;background:linear-gradient(90deg, #a77d32, var(--gold-hi));transition:transform .4s;position:absolute;inset:0}.rank-chip.ready{border-color:var(--gold-hi);color:var(--gold-hi);animation:1.6s ease-in-out infinite rank-ready}@keyframes rank-ready{50%{box-shadow:0 0 18px #f6e2ae8c}}.raid-block{text-align:left;background:linear-gradient(90deg,#1a0c26db,#0e0816b3);border:1px solid #b47cffbf;border-radius:3px;width:280px;max-width:42vw;padding:7px 14px 8px;display:none;box-shadow:0 0 0 2px #08040c8c,0 4px 14px #0006}.raid-block.show{animation:.4s fade-in;display:block}.raid-block small{letter-spacing:.22em;text-transform:uppercase;color:#c9a6ff;font-size:.62rem;display:block}.raid-block h4{color:#f1e6ff;margin:2px 0 3px;font-size:1rem}.raid-block p{color:#d7cde6;margin:0;font-size:.8rem}.raid-block.cleared{border-color:var(--jade)}.raid-block.cleared p{color:var(--jade)}.party-frames{top:calc(146px + var(--safe-t));left:calc(18px + var(--safe-l));pointer-events:none;flex-direction:column;gap:8px;display:flex;position:absolute}#ui:not([data-screen=hud]) .screen[data-screen=hud] :is(.hint,.points-chip){visibility:hidden}.pframe{align-items:center;gap:9px;width:168px;display:flex}.pf-face{border:2px solid var(--gold);background:radial-gradient(circle at 50% 35%,#2c3956,#0b0f16 75%);border-radius:4px;flex:0 0 46px;height:46px;position:relative;overflow:hidden;box-shadow:0 0 0 2px #0a0804cc,0 3px 10px #00000080}.pf-face img{object-fit:cover;width:100%;height:100%;display:block}.pf-face img:not([src]){visibility:hidden}.pf-face:after{content:"";background:conic-gradient(#fff0a88c calc(var(--revive,0) * 360deg), transparent 0);position:absolute;inset:0}.pf-face em{z-index:1;color:#fff;text-shadow:0 1px 2px #000,0 0 4px #000;font-size:.7rem;font-style:normal;font-weight:800;position:absolute;bottom:0;right:2px}.pf-body{flex:1;gap:4px;min-width:0;display:grid}.pf-body b{letter-spacing:.08em;text-transform:uppercase;color:#f4ecdc;text-shadow:0 1px 2px #000,0 0 4px #000c;white-space:nowrap;text-overflow:ellipsis;font-size:.66rem;font-weight:700;overflow:hidden}.pf-bar{clip-path:polygon(0 0,100% 0,calc(100% - 6px) 100%,0 100%);background:#040608c7;height:9px;position:relative;box-shadow:inset 0 0 0 1px #f6e2ae59}.pf-bar i{transform-origin:0;background:linear-gradient(#b6ff86,#43b23c 70%,#2a7d2a);transition:transform .2s;position:absolute;inset:1px}.pframe.summon .pf-face{border-color:#9fe6ff}.pframe.summon .pf-bar i{background:linear-gradient(#9ff4ff,#2fa6e0 70%,#1d6fa8)}.pframe.low .pf-bar i{background:linear-gradient(#ffb36b,#c2471f)}.pframe.downed .pf-face{border-color:#e0454fd9}.pframe.downed img{filter:grayscale()brightness(.6)}.pframe.downed b{color:#ff9a9a}.plate.party .plate-name{color:#bfffe9;font-size:.72rem;font-weight:700;bottom:9px}.plate.party .plate-name small{letter-spacing:.12em;text-transform:uppercase;color:#cfe6dd;font-size:.56rem;font-weight:500;display:block}.plate.party.downed .plate-name{color:#ff9a9a}.veil{opacity:0;pointer-events:none;transition:opacity .45s var(--ease);z-index:30;background:radial-gradient(circle at 50% 55%,#281246eb,#040308fa 70%);place-items:center;display:grid;position:absolute;inset:0}.veil.show{opacity:1;pointer-events:auto}.veil>div{text-align:center;justify-items:center;gap:6px;display:grid}.veil small{letter-spacing:.4em;text-transform:uppercase;color:#c9a6ff;font-size:.7rem}.veil h2{letter-spacing:.08em;color:#f6eaff;text-shadow:0 0 24px #b47cffb3;margin:0;font-size:2rem}.veil-rune{border:2px solid #c9a6ffb3;border-top-color:#0000;border-radius:50%;width:64px;height:64px;margin-top:14px;animation:1.1s linear infinite spin;box-shadow:0 0 22px #b47cff80}.rank-badge{clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);width:32px;height:36px;color:var(--gold-hi);text-shadow:0 1px 2px #000c;background:linear-gradient(135deg,#6b4a1e,#2a1a08);place-items:center;font-size:1rem;display:inline-grid;box-shadow:inset 0 0 0 2px #f6e2ae59}.rank-badge.small{width:24px;height:28px;font-size:.8rem}.rank-badge.r1{background:linear-gradient(135deg,#5a5f66,#23262a)}.rank-badge.r2{background:linear-gradient(135deg,#8a5a2b,#3a220c)}.rank-badge.r3{background:linear-gradient(135deg,#9aa6b4,#3d4550)}.rank-badge.r4{color:#fff6dc;background:linear-gradient(135deg,#e0b24a,#6b4a10)}.rank-badge.r5{color:#f2fdff;background:linear-gradient(135deg,#8fe3ff,#2b5f7a)}.rank-badge.r6{color:#fff2ff;background:linear-gradient(135deg,#e48cff,#5a1f7a)}.merit{color:#ffd98a;white-space:nowrap;font-weight:700}.merit-bar{background:#0000008c;width:240px;max-width:100%;height:4px;margin-top:6px;display:block;overflow:hidden}.merit-bar i{transform-origin:0;background:linear-gradient(90deg, #a77a2a, var(--gold-hi));height:100%;display:block}.crest.medal{place-items:center;display:grid;position:relative}.crest.medal img{object-fit:contain;width:64px;height:64px}.crest.medal .rank-badge{width:24px;height:24px;font-size:.8rem;position:absolute}.party-slots{letter-spacing:.08em;color:var(--muted);margin:0 0 10px;font-size:.8rem}.party-slots small{color:#8a8170}.guild-note{text-align:right;color:#ff9a8a;margin:10px 0 0;font-size:.85rem}.ct-lock{letter-spacing:.12em;text-transform:uppercase;color:#9a8f7a;white-space:nowrap;font-size:.72rem}.guild-panel{width:min(1040px,94vw)}.guild-cols{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:start;gap:16px;display:grid}.grid.recruits{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.rcard{border:1px solid var(--line);color:var(--parch);background:linear-gradient(#141a1ebf,#080a0cd9);justify-items:center;gap:2px;padding:10px 8px;display:grid;position:relative}.rcard:hover{border-color:var(--line-strong)}.rcard.on{border-color:var(--jade);box-shadow:0 0 0 1px var(--jade), 0 0 22px #5cf2c840}.rcard.party:after{content:"PARTY";letter-spacing:.14em;background:var(--jade-deep);color:#eafff8;padding:1px 6px;font-size:.56rem;position:absolute;top:6px;right:6px}.rcard.locked .rc-face img{filter:grayscale(.9)brightness(.55)}.rc-face img{object-fit:cover;border:2px solid #d9b26b99;border-radius:50%;width:76px;height:76px;display:block;box-shadow:0 4px 12px #0009}.rc-face.big img{width:72px;height:72px}.rc-role{filter:drop-shadow(0 1px 2px #000);font-size:1rem;position:absolute;top:62px;left:calc(50% + 22px)}.recruit-detail{--rc:var(--jade);margin-top:0}.recruit-detail h3{color:#eafff8}.recruit-detail .rarity{color:var(--jade)}.flavor.role{color:#cfe6dd;font-style:normal}.board{gap:8px;max-height:min(420px,52vh);padding-right:4px;display:grid;overflow:auto}.contract{border:1px solid var(--line);background:linear-gradient(90deg,#241c10b3,#0a0a0ccc);grid-template-columns:40px minmax(0,1fr) auto 150px;align-items:center;gap:14px;padding:10px 14px;display:grid}.contract .rank-badge{justify-self:center}.contract.taken{border-color:#5cf2c880}.contract.ready{border-color:var(--gold-hi);box-shadow:0 0 18px #f6e2ae40}.contract.locked{opacity:.55}.ct-text b{color:var(--gold-hi);font-size:.95rem;display:block}.ct-text small{letter-spacing:.06em;color:var(--jade);margin-top:1px;font-size:.74rem;display:block}.ct-text p{color:#cfc6b2;margin:3px 0 0;font-size:.78rem}.ct-reward{justify-items:end;gap:2px;font-size:.9rem;display:grid}.ct-act{justify-content:flex-end;display:flex}.ct-act .btn{min-width:130px;margin:0;padding:.5rem 1rem}.ct-prog{background:#00000080;border:1px solid #5cf2c866;width:130px;height:22px;display:block;position:relative;overflow:hidden}.ct-prog i{transform-origin:0;background:linear-gradient(#5cf2c88c,#1d8f788c);position:absolute;inset:0}.ct-prog b{text-align:center;color:#eafff8;font-size:.78rem;line-height:20px;display:block;position:relative}.ranks{gap:4px;max-height:min(420px,56vh);padding-right:4px;display:grid;overflow:auto}.rank-row{background:#0000004d;border:1px solid #d9b26b2e;grid-template-columns:36px 220px minmax(0,1fr);align-items:center;gap:14px;padding:3px 14px;display:grid}.rank-row b{color:#e6dcc6;font-size:.9rem;line-height:1.2;display:block}.rank-row small{color:var(--muted);font-size:.68rem;line-height:1.2;display:block}.rank-row>span{color:#cfc6b2;font-size:.8rem}.rank-row.done{opacity:.6}.rank-row.current{border-color:var(--gold-hi);background:linear-gradient(90deg,#5a40148c,#0000004d);box-shadow:0 0 18px #f6e2ae2e}.rank-row.current b{color:var(--gold-hi)}.vault-panel{width:min(900px,94vw)}.floors{gap:10px;margin-top:14px;display:grid}.floor{background:linear-gradient(90deg,#220e30d1,#08060cd9);border:1px solid #b47cff66;grid-template-columns:74px minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:12px 16px;display:grid}.floor.locked{opacity:.55;border-color:#786e8259}.floor.cleared{border-color:#5cf2c880}.fl-num{letter-spacing:.04em;text-align:center;color:#e6d2ff;text-shadow:0 0 18px #b47cffcc;font-size:2rem;font-weight:700}.fl-text b{color:#f1e6ff;font-size:1.05rem;display:block}.fl-text small{letter-spacing:.06em;color:#c9a6ff;margin-top:2px;font-size:.76rem;display:block}.fl-text p{color:#d7cde6;margin:4px 0 0;font-size:.8rem}.fl-text em{color:#ff9ad0;font-style:normal;font-weight:700}.fl-tag{letter-spacing:.16em;text-transform:uppercase;background:var(--jade-deep);color:#eafff8;padding:2px 8px;font-size:.62rem}.floor .btn{min-width:120px;margin:0}.vault-party{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.vault-party small{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-right:4px;font-size:.66rem}.pchip{background:#061614b3;border:1px solid #5cf2c859;border-radius:999px;align-items:center;gap:6px;padding:2px 12px 2px 2px;font-size:.8rem;display:flex}.pchip img{object-fit:cover;border-radius:50%;width:28px;height:28px}.pchip.none{color:var(--muted);padding:4px 12px;font-style:italic}@media (max-width:760px){.guild-cols{grid-template-columns:1fr}.contract{grid-template-columns:32px minmax(0,1fr) 120px}.ct-reward{display:none}.rank-row{grid-template-columns:40px minmax(0,1fr)}.rank-row>span{grid-column:2}.party-frames{top:calc(132px + var(--safe-t))}.pframe{width:150px}}@media (max-height:500px){.party-frames{gap:3px}.pframe{gap:6px;width:130px}.pf-face{flex-basis:32px;height:32px}.raid-block{padding:4px 10px}.raid-block small{display:none}}.touch{display:none}.has-touch .hud .touch{display:block}.touch-stick{opacity:0;background:#0003;border:1px solid #ffffff40;border-radius:50%;width:120px;height:120px;margin:-60px 0 0 -60px;transition:opacity .15s;position:absolute}.touch-stick.is-active{opacity:1}.touch-stick i{background:#5cf2c859;border:1px solid #5cf2c8b3;border-radius:50%;width:52px;height:52px;margin:-26px;position:absolute;top:50%;left:50%}.compact-hud .hud .hud-tl{top:calc(10px + var(--safe-t));left:calc(10px + var(--safe-l));gap:8px}.compact-hud .hud .portrait{width:50px;height:50px}.compact-hud .hud .portrait:before{inset:7px}.compact-hud .hud .portrait .lv{min-width:20px;padding:0 5px;font-size:.66rem;bottom:-2px;right:-6px}.compact-hud .hud .bars{gap:3px}.compact-hud .hud .bar{clip-path:polygon(0 0,100% 0,calc(100% - 7px) 100%,0 100%);width:150px;height:15px}.compact-hud .hud .bar.mp{width:136px;height:11px}.compact-hud .hud .bar.xp{clip-path:none;width:122px;height:3px}.compact-hud .hud .bar.xp span{display:none}.compact-hud .hud .bar span{padding-left:27px;font-size:.6rem}.compact-hud .hud .bar em{font-size:.54rem;left:6px}.compact-hud .hud .hud-br{top:calc(10px + var(--safe-t));right:calc(56px + var(--safe-r));gap:6px;bottom:auto;left:auto}.compact-hud:not(.has-touch) .hud .hud-br{right:calc(10px + var(--safe-r))}.has-touch .hud .hud-br [data-act=journal]{display:none}.compact-hud .hud .round{width:40px;height:40px}.compact-hud .hud .round svg{width:18px;height:18px}.compact-hud .hud .round[data-badge]:not([data-badge=""]):after{content:attr(data-badge);color:#2a1a05;background:linear-gradient(#ffe08a,#c58a2a);border-radius:9px;place-items:center;min-width:17px;height:17px;padding:0 4px;font-size:.62rem;font-weight:900;animation:1.8s ease-in-out infinite glow;display:grid;position:absolute;top:-5px;right:-5px;box-shadow:0 0 0 2px #0a0804d9,0 0 10px #ffd26acc}.compact-hud .hud .points-chip{display:none}.tbtn.pause{top:calc(10px + var(--safe-t));right:calc(10px + var(--safe-r));width:40px;height:40px;font-size:1.05rem}.compact-hud .hud .minimap{--mm:86px;top:calc(62px + var(--safe-t));right:calc(18px + var(--safe-r));bottom:auto;left:auto}.compact-hud .hud .mm-zone{padding:1px 10px;font-size:.54rem;top:calc(100% + 9px);left:auto;right:-12px;transform:none}.compact-hud .hud .hud-tr{top:calc(180px + var(--safe-t));right:calc(10px + var(--safe-r));gap:6px}.compact-hud .hud .gold-chip{gap:5px;padding:2px 10px 2px 3px;font-size:.86rem}.compact-hud .hud .gold-chip img{width:20px;height:20px}.compact-hud .hud .tracker,.compact-hud .hud .raid-block{--pill:min(248px, calc(100vw - 112px));width:max-content;max-width:var(--pill)}.compact-hud .hud .tracker{padding:5px 10px 6px 30px}.compact-hud .hud .tracker.quest{pointer-events:auto;cursor:pointer}.compact-hud .hud .tk-ico{width:14px;height:14px;top:calc(50% - 7px);left:9px}.compact-hud .hud .tk-ico:after{font-size:.62rem}.compact-hud .hud .tracker small,.compact-hud .hud .raid-block small{display:none}.compact-hud .hud .tracker h4,.compact-hud .hud .raid-block h4{white-space:nowrap;text-overflow:ellipsis;margin:0 0 2px;font-size:.8rem;overflow:hidden}.compact-hud .hud .tracker p,.compact-hud .hud .raid-block p{font-size:.7rem}.compact-hud .hud .tracker p span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.compact-hud .hud .raid-block{padding:4px 10px 5px}.compact-hud .hud .rank-chip{z-index:1;top:calc(42px + var(--safe-t));left:calc(4px + var(--safe-l));background:radial-gradient(circle at 50% 35%,#4a3a1c,#120d06 75%);border-width:1.5px;border-radius:50%;justify-content:center;gap:0;width:22px;height:22px;padding:0;box-shadow:0 0 0 2px #0a0804cc,0 0 8px #ffd26a73}.compact-hud .hud .rank-chip img,.compact-hud .hud .rank-chip small,.compact-hud .hud .rank-chip span,.compact-hud .hud .rk-bar{display:none}.compact-hud .hud .rank-chip b{font-size:.74rem}.compact-hud .hud .howl{top:calc(58px + var(--safe-t));left:calc(68px + var(--safe-l));white-space:nowrap;letter-spacing:.12em;font-size:.52rem}.compact-hud .hud .party-frames{top:calc(74px + var(--safe-t));left:calc(10px + var(--safe-l));gap:6px}.compact-hud .hud .pframe{width:auto}.compact-hud .hud .pf-body{display:none}.compact-hud .hud .pf-face{--ring:#6fdc4f;background:conic-gradient(var(--ring) calc(var(--hp,1) * 360deg), #06080abf 0);border:0;border-radius:50%;flex:0 0 36px;height:36px;padding:3px;overflow:visible;box-shadow:0 0 0 1px #f6e2ae8c,0 2px 6px #00000080}.compact-hud .hud .pf-face img{background:radial-gradient(circle at 50% 35%,#2c3956,#0b0f16 75%);border-radius:50%}.compact-hud .hud .pf-face:after{border-radius:50%;inset:3px}.compact-hud .hud .pf-face em{bottom:-3px;right:-4px}.compact-hud .hud .pframe.summon .pf-face{--ring:#5cc6f2}.compact-hud .hud .pframe.low .pf-face{--ring:#f08a3c}.compact-hud .hud .pframe.downed .pf-face{background:#e0454fb3}.compact-hud .hud .hint{top:calc(72px + var(--safe-t));left:calc(84px + var(--safe-l));right:calc(118px + var(--safe-r));pointer-events:auto;max-width:none;padding:.45rem .65rem;font-size:.74rem;line-height:1.4;bottom:auto}.compact-hud .hud:has(.boss.show) .hint{top:calc(110px + var(--safe-t))}.compact-hud .hud .boss{top:calc(72px + var(--safe-t));left:calc(84px + var(--safe-l));right:calc(118px + var(--safe-r));gap:4px;width:auto;transform:none}.compact-hud .hud .boss-name{letter-spacing:.14em;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.62rem;overflow:hidden}.compact-hud .hud .boss-bar{height:8px}.compact-hud .hud .compass{display:none}.compact-hud .hud .summon-bar{left:calc(10px + var(--safe-l));bottom:calc(10px + var(--safe-b));gap:5px;transform:none}.compact-hud .hud .slot{border-radius:7px;width:46px;height:46px}.compact-hud .hud .slot-key,.compact-hud .hud .orb{display:none}.compact-hud .hud .slot-rank,.compact-hud .hud .slot-count,.compact-hud .hud .slot-mana{font-size:.58rem}.compact-hud .hud .slot-rank{top:2px;left:4px}.compact-hud .hud .slot-count{top:2px;right:4px}.compact-hud .hud .slot-mana{bottom:2px;right:4px}.compact-hud .hud .slot.locked .slot-art:after{background-size:16px}.compact-hud .hud .slot.locked~.slot.locked{display:none}.compact-hud .hud .regroup{text-align:left;white-space:normal;letter-spacing:.1em;width:max-content;max-width:min(150px,100vw - 230px);font-size:.58rem;line-height:1.35;bottom:calc(100% + 8px);right:auto}.tbtn{pointer-events:auto;background:var(--art-ring) center / 100% no-repeat, radial-gradient(circle, #0c1016e0 58%, transparent 60%);color:var(--gold-hi);text-shadow:0 1px 2px #000;border:0;border-radius:50%;place-items:center;padding:0;font-size:1.3rem;line-height:1;transition:transform 80ms,filter 80ms;display:grid;position:absolute}.tbtn.is-down{filter:brightness(1.35)drop-shadow(0 0 10px #5cf2c899);transform:scale(.92)}.tbtn .slot-cd{border-radius:50%;inset:5px}.tbtn.cast{right:calc(14px + var(--safe-r));bottom:calc(14px + var(--safe-b));color:#eafff7;background:radial-gradient(circle,#1d8f7899,#060e10e0 70%);border:2px solid #5cf2c8e6;width:76px;height:76px;font-size:1.9rem;box-shadow:0 0 0 3px #060a0e99,0 0 18px #5cf2c880,inset 0 0 14px #5cf2c852}.tbtn.roll{right:calc(110px + var(--safe-r));bottom:calc(26px + var(--safe-b));width:52px;height:52px}.tbtn.recall{right:calc(90px + var(--safe-r));bottom:calc(90px + var(--safe-b));width:48px;height:48px;font-size:1.15rem}.tbtn.recall.on{color:#c8fff0;filter:drop-shadow(0 0 8px #5cf2c8cc)}.tbtn.command{right:calc(26px + var(--safe-r));bottom:calc(110px + var(--safe-b));width:52px;height:52px;font-size:1.15rem}.tbtn.nova{right:calc(174px + var(--safe-r));bottom:calc(76px + var(--safe-b));color:#e6dcff;filter:drop-shadow(0 0 6px #aa82ff8c);width:46px;height:46px;display:none}.touch.has-nova .tbtn.nova{display:grid}.tbtn.interact{right:calc(114px + var(--safe-r));bottom:calc(148px + var(--safe-b));filter:drop-shadow(0 0 8px #5cf2c8b3);width:54px;height:54px;display:none}.tbtn.interact.show{animation:.25s fade-in;display:grid}.tbtn.potion{right:calc(30px + var(--safe-r));bottom:calc(182px + var(--safe-b));width:44px;height:44px}.tbtn.potion img{width:24px;height:24px}.tbtn.potion b{color:#fff;font-size:.66rem;position:absolute;bottom:-2px;right:0}.compact-hud .hud .banner{white-space:normal;width:max-content;max-width:92vw;top:41%}.compact-hud .hud .banner h2{letter-spacing:.14em;font-size:clamp(1.05rem,5.4vw,1.6rem)}.compact-hud .hud .banner p{letter-spacing:.2em;margin-top:.3rem;font-size:.64rem}.compact-hud .hud .banner:before,.compact-hud .hud .banner:after{display:none}.compact-hud .hud .quest-cue{white-space:normal;width:max-content;max-width:90vw;top:49%}.compact-hud .hud .quest-cue small{letter-spacing:.3em;background-size:200px;padding-bottom:10px;font-size:.6rem}.compact-hud .hud .quest-cue h3{font-size:clamp(1.05rem,5vw,1.4rem)}.compact-hud .hud .quest-cue.complete h3{font-size:clamp(1.2rem,6vw,1.7rem)}.compact-hud .hud .quest-cue p{font-size:.74rem}.compact-hud .hud .toast{bottom:calc(296px + var(--safe-b));white-space:normal;text-align:center;width:max-content;max-width:86vw;font-size:.8rem}.compact-hud .hud .prompt{bottom:calc(238px + var(--safe-b));max-width:80vw;padding-right:14px}.compact-hud .hud .prompt .label{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.compact-hud .hud .loot-feed{right:auto;left:calc(10px + var(--safe-l));bottom:calc(104px + var(--safe-b));align-items:flex-start;gap:4px}.compact-hud .hud .loot-entry{border-right:0;border-left:3px solid var(--rc);background:linear-gradient(270deg,#0000,#080a0ecc 30%);padding:3px 12px 3px 4px;font-size:.74rem}.compact-hud .hud .loot-entry img{width:24px;height:24px}@media (max-width:760px),(max-height:560px){.compact-hud .hud .gold-chip,.compact-hud .hud .tracker.tk-contract{display:none}.compact-hud .hud .tracker.quest .tk-body{align-items:baseline;gap:10px;display:flex}.compact-hud .hud .tracker.quest h4{min-width:0;margin:0}.compact-hud .hud .tracker.quest p{flex:none}.compact-hud .hud .tracker.quest p span{display:none}}@media (max-width:760px){.compact-hud .hud .minimap{--mm:70px;top:calc(56px + var(--safe-t))}.compact-hud .hud .hud-tr{top:calc(154px + var(--safe-t))}}@media (max-width:380px){.compact-hud .hud .bar{width:132px}.compact-hud .hud .bar.mp{width:120px}.compact-hud .hud .bar.xp{width:108px}.compact-hud .hud .slot{width:42px;height:42px}}@keyframes cue-pill{0%{opacity:0;transform:translateY(8px)scale(.96)}12%{opacity:1;transform:none}82%{opacity:1}to{opacity:0;transform:translateY(-4px)}}@keyframes banner-pill{0%{opacity:0;letter-spacing:.4em;transform:translateY(8px)}14%{opacity:1;transform:none}78%{opacity:1}to{opacity:0}}@media (orientation:portrait) and (max-height:800px){.compact-hud .hud .hud-tr>*{transition:opacity .3s}.compact-hud .hud:has(.quest-cue.show,.banner.show) .hud-tr>*{opacity:0}.compact-hud .hud .quest-cue,.compact-hud .hud .banner{top:calc(154px + var(--safe-t));left:auto;right:calc(12px + var(--safe-r));text-align:right;max-width:min(248px,100vw - 112px);transform:none}.compact-hud .hud .quest-cue.show{animation-name:cue-pill}.compact-hud .hud .banner.show{animation-name:banner-pill}.compact-hud .hud .banner h2{font-size:clamp(1rem,4.6vw,1.3rem)}.compact-hud .hud .quest-cue small{background-position:100% 100%;background-size:150px;padding-bottom:6px}.compact-hud .hud .quest-cue h3{margin-top:3px;font-size:clamp(1rem,4.6vw,1.2rem)}.compact-hud .hud .quest-cue.complete h3{font-size:clamp(1.1rem,5.2vw,1.35rem)}.compact-hud .hud .quest-cue p{margin-top:3px;font-size:.7rem}.compact-hud .hud .pf-face{flex-basis:32px;height:32px}.compact-hud .hud:has(.boss.show) .hint{display:none}.compact-hud .hud .toast{bottom:calc(261px + var(--safe-b))}.compact-hud .hud .prompt{bottom:calc(205px + var(--safe-b))}.compact-hud .hud .loot-entry:nth-child(n+4){display:none}.tbtn.cast{right:calc(12px + var(--safe-r));bottom:calc(12px + var(--safe-b));width:70px;height:70px}.tbtn.roll{right:calc(99px + var(--safe-r));bottom:calc(23px + var(--safe-b));width:48px;height:48px}.tbtn.recall{right:calc(77px + var(--safe-r));bottom:calc(77px + var(--safe-b));width:48px;height:48px}.tbtn.command{right:calc(23px + var(--safe-r));bottom:calc(99px + var(--safe-b));width:48px;height:48px}.tbtn.nova{right:calc(138px + var(--safe-r));bottom:calc(90px + var(--safe-b));width:44px;height:44px}.tbtn.interact{right:calc(87px + var(--safe-r));bottom:calc(135px + var(--safe-b));width:50px;height:50px}.tbtn.potion{right:calc(25px + var(--safe-r));bottom:calc(155px + var(--safe-b));width:44px;height:44px}}@media (min-width:700px){.compact-hud .hud .compass{top:calc(6px + var(--safe-t));width:min(300px,30vw);display:block}}@media (orientation:landscape) and (max-height:560px){.compact-hud .hud .minimap{display:none}.compact-hud .hud .hud-tr{top:calc(58px + var(--safe-t))}.compact-hud .hud .tracker,.compact-hud .hud .raid-block{--pill:min(240px, 30vw)}.compact-hud .hud .party-frames{gap:4px}.compact-hud .hud .pf-face{flex-basis:30px;height:30px}.compact-hud .hud .hint,.compact-hud .hud .boss{margin:0 auto;left:0;right:0}.compact-hud .hud .hint{top:calc(56px + var(--safe-t));width:max-content;max-width:min(340px,36vw)}.compact-hud .hud:has(.boss.show) .hint{top:calc(88px + var(--safe-t))}.compact-hud .hud .boss{top:calc(44px + var(--safe-t));width:34vw}.compact-hud .hud .banner{top:30%}.compact-hud .hud .quest-cue{top:48%}.compact-hud .hud .toast{bottom:calc(78px + var(--safe-b))}.compact-hud .hud .prompt{bottom:calc(16px + var(--safe-b));max-width:36vw}.compact-hud .hud .loot-feed{left:calc(84px + var(--safe-l));bottom:calc(112px + var(--safe-b))}.tbtn.cast{width:72px;height:72px}.tbtn.roll{right:calc(105px + var(--safe-r));bottom:calc(25px + var(--safe-b));width:50px;height:50px}.tbtn.recall{right:calc(88px + var(--safe-r));bottom:calc(78px + var(--safe-b));width:46px;height:46px}.tbtn.command{right:calc(39px + var(--safe-r));bottom:calc(104px + var(--safe-b));width:50px;height:50px}.tbtn.nova{right:calc(177px + var(--safe-r));bottom:calc(27px + var(--safe-b))}.tbtn.interact{right:calc(154px + var(--safe-r));bottom:calc(99px + var(--safe-b));width:52px;height:52px}.tbtn.potion{right:calc(108px + var(--safe-r));bottom:calc(156px + var(--safe-b));width:42px;height:42px}}.has-touch .fs-toggle:not([hidden]){top:calc(14px + var(--safe-t));right:calc(14px + var(--safe-r));color:#f1e6cc;min-height:42px;font:inherit;letter-spacing:.14em;text-transform:uppercase;-webkit-backdrop-filter:blur(6px);cursor:pointer;background:#080c168c;border:1px solid #d9b26b80;border-radius:999px;align-items:center;gap:.45rem;padding:0 1rem 0 .8rem;font-size:.8rem;display:flex;position:absolute}.has-touch .fs-toggle:active{border-color:var(--gold-hi);transform:translateY(1px)}.fs-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.fs-toggle .fs-out,.fs-toggle.on .fs-in{display:none}.fs-toggle.on .fs-out{display:inline}@media (max-width:480px){.has-touch .fs-toggle:not([hidden]){justify-content:center;width:42px;padding:0}.has-touch .fs-toggle span{display:none}}
