:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--mist);background:var(--ink);--ink:#10233a;--ink-deep:#0b3d6e;--header:#0b2f3b;--panel:#15283f;--panel-raise:#163848;--panel-deep:#0a222c;--forever-blue:#1469b8;--mist:#f7fbfe;--parchment:#f5e5cf;--gold:#e0a335;--muted:#9eb0c4;--line:#fff2;--balance:#a78bfa;--feral:#c87b47;--restoration:#6ca86c;--header-height:64px;--page-max:1480px;--scrollbar-size:10px;--scrollbar-thumb:color-mix(in srgb, var(--gold) 55%, var(--ink));--scrollbar-thumb-hover:var(--gold);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);background-clip:content-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}*{box-sizing:border-box}:root{--cursor:url(/brand/cursor.png) 2 2, auto}html,body,a,button,summary,label{cursor:var(--cursor)}html,body{height:100%;overflow:hidden}body{background:radial-gradient(ellipse at 50% 0, #1469b833, transparent 42%), var(--header);margin:0}button,input,textarea{font:inherit}button{color:inherit;border:0}button:disabled{opacity:.4}button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:4px;outline:2px solid #f1d28c}.page-path{letter-spacing:.04em;color:var(--muted);white-space:nowrap;margin:0 0 12px;font-size:13px;font-weight:500}.data-status{color:var(--parchment);margin:28px 0;line-height:1.6}.corner-tools{z-index:40;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:fixed;bottom:16px;right:16px}.lang-toggle{position:relative}.lang-toggle-trigger{border:1px solid color-mix(in srgb, var(--gold) 55%, transparent);color:#f6d887;background:#081c26f0;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;text-decoration:none;display:flex}.corner-author.is-active{border-color:var(--gold)}.corner-author.is-active path{fill:currentColor}.lang-toggle-trigger svg{width:22px;height:22px}.lang-toggle-trigger:hover,.lang-toggle-trigger.is-open{border-color:var(--gold)}.lang-toggle-pop{z-index:1;border:1px solid color-mix(in srgb, var(--gold) 45%, transparent);background:#081822f5;border-radius:10px;min-width:148px;padding:8px;position:absolute;bottom:calc(100% + 60px);right:0}.lang-toggle-pop p{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 8px 6px;font-size:.72rem}.lang-toggle-pop button{width:100%;color:var(--parchment);text-align:left;background:0 0;border-radius:6px;justify-content:space-between;padding:8px;display:flex}.lang-toggle-pop button.is-active,.lang-toggle-pop button:hover{color:#f6d887}.data-status strong{color:var(--gold)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-header{height:var(--header-height);z-index:50;padding:0 max(16px, calc((100% - var(--page-max)) / 2));background:var(--header);border-bottom:1px solid color-mix(in srgb, var(--gold) 55%, transparent);align-items:center;gap:36px;display:flex;position:fixed;top:0;left:0;right:0}.app-home .app-main{scroll-snap-type:y mandatory;scroll-behavior:smooth;scrollbar-width:none;scrollbar-gutter:auto;padding:0;top:0;overflow:hidden auto}.app-home .app-main::-webkit-scrollbar{display:none}.app-header .brand{min-width:max-content;color:var(--parchment);flex-shrink:0;align-items:center;gap:12px;text-decoration:none;display:flex}.app-header .brand-mark{object-fit:contain;filter:drop-shadow(0 2px 6px #0008);flex-shrink:0;width:42px;height:42px}.app-header .brand small,.app-header .brand strong{font-family:Georgia,serif;display:block}.app-header .brand small{letter-spacing:1.8px;color:#d7e6f5;font-size:9px}.app-header .brand strong{letter-spacing:.04em;color:var(--parchment);white-space:nowrap;font-size:18px}.brand-name-line,.nav-toggle,.nav-backdrop{display:none}.app-header nav{flex-shrink:0;align-self:stretch;display:flex}.app-header nav a{color:#c5d6e2;white-space:nowrap;border-bottom:2px solid #0000;align-items:center;padding:0 16px;font-size:13px;text-decoration:none;display:flex}.app-header nav a:hover,.app-header nav a.active{color:var(--parchment);border-color:var(--gold)}.app-header .header-tag{letter-spacing:1px;color:#d7e6f5;white-space:nowrap;flex-shrink:0;align-items:center;gap:8px;margin-left:auto;font-size:11px;display:flex}@media (width<=1120px){html[lang=en] .app-header .header-tag{display:none}}@media (width<=980px){html[lang=zh-CN] .app-header .header-tag{display:none}}.app-header .header-emblem{object-fit:contain;flex-shrink:0;width:32px;height:32px}@media (width<=760px){:root{--header-height:56px}.app-header{gap:10px;padding:0 12px}.app-header .brand{gap:8px}.app-header .brand small{display:none}.app-header .brand strong{letter-spacing:0;font-size:14px;line-height:1.05}.brand-name-full{display:none}.brand-name-line{display:block}.app-header .brand-mark{width:34px;height:34px}.app-header .header-tag{display:none}.nav-toggle{z-index:2;border:1px solid color-mix(in srgb, var(--gold) 55%, transparent);background:0 0;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;margin-left:auto;padding:0;display:flex;position:relative}.nav-toggle span{background:var(--parchment);width:18px;height:2px;transition:transform .15s,opacity .15s;display:block}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav-backdrop{z-index:1;top:var(--header-height);background:#02080e8c;border:0;padding:0;display:block;position:fixed;bottom:0;left:0;right:0}.app-header nav{z-index:2;top:var(--header-height);background:var(--header);border-left:1px solid color-mix(in srgb, var(--gold) 55%, transparent);visibility:hidden;flex-direction:column;align-items:stretch;width:min(280px,100% - 48px);padding:8px 0;position:fixed;bottom:0;right:0;transform:translate(100%)}.app-header nav.is-open{visibility:visible;transform:none}.app-header nav a{border-bottom:0;border-left:3px solid #0000;padding:14px 20px;font-size:16px}.app-header nav a.active{border-bottom-color:#0000;border-left-color:var(--gold)}}.route-fade{animation:.42s ease-out both route-fade-in}.app-home .route-fade{height:100%}:is(.app-guides .app-main:has(.guides-frame) .route-fade,.app-abilities .app-main:has(.abilities-frame.is-spec) .route-fade){flex-direction:column;flex:1;min-height:0;display:flex}@keyframes route-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.route-fade{animation:none}}.app-main{top:var(--header-height);scrollbar-gutter:stable both-edges;max-width:none;padding:24px max(28px, calc((100% - var(--page-max)) / 2)) 24px;background-color:var(--panel-deep);background-position:top;background-repeat:no-repeat;background-size:cover;margin:0;position:fixed;bottom:0;left:0;right:0;overflow:auto}.app-talents .app-main{background-image:linear-gradient(#0b2f3bc7,#081824e6),url(/brand/forever-masthead.jpg);background-position:0}.app-abilities .app-main{background-image:linear-gradient(#0b2f3bcc,#071620eb),url(/brand/forever-skyborne.jpg);background-position:50% 30%}.ghost{background:#ffffff08;border:1px solid #ffffff2b;border-radius:7px;padding:10px 15px}input[type=search],input[type=url],input[type=number],textarea{background:var(--panel-deep);color:var(--mist);border:1px solid #ffffff26;border-radius:5px;padding:9px}input[type=search]{width:190px;font-size:12px}.landing-scene,.landing-board{scroll-snap-align:start;scroll-snap-stop:always;height:100%}.landing-scene{width:100%;color:var(--parchment);background-color:var(--ink);background-image:linear-gradient(to bottom, color-mix(in srgb, var(--ink) 28%, transparent), transparent 22%), url(/brand/forever-cinematic.jpg);isolation:isolate;background-position:50%;background-repeat:no-repeat;background-size:cover;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.landing-atmosphere{z-index:0;pointer-events:none;opacity:1;transition:opacity 1.4s linear;position:absolute;inset:0;overflow:hidden}.landing-scene[data-intro] .landing-atmosphere{opacity:0;transition:none}.landing-side-mist,.landing-starlight{position:absolute;inset:0}.landing-side-mist span{background:radial-gradient(closest-side,#ffffffb3 0%,#0000 70%);width:68vw;height:78%;animation:linear infinite landing-mist-cross;position:absolute;left:0}.landing-side-mist span:first-child{animation-duration:36s;top:-12%}.landing-side-mist span:nth-child(2){height:58%;animation-duration:48s;animation-delay:-20s;top:18%}.landing-side-mist span:nth-child(3){height:64%;animation-duration:30s;animation-delay:-12s;top:46%}.landing-starlight span{--star-from-x:96vw;--star-to-x:-4vw;--star-from-y:4vh;--star-to-y:92vh;width:min(42vw,340px);height:min(42vw,340px);margin-top:calc(min(42vw,340px)/-2);margin-left:calc(min(42vw,340px)/-2);animation:22s linear infinite landing-star-x;position:absolute;top:0;left:0}.landing-starlight span:before{content:"";background:radial-gradient(circle, #ffffffb8 0%, color-mix(in srgb, var(--parchment) 36%, transparent) 18%, transparent 64%);border-radius:9999px;animation:22s cubic-bezier(.42,.02,.78,.35) infinite landing-star-y,22s linear infinite landing-star-fade;position:absolute;inset:0}.landing-starlight span:nth-child(2){--star-from-x:88vw;--star-to-x:6vw;--star-from-y:16vh;--star-to-y:98vh;width:min(30vw,240px);height:min(30vw,240px);margin:calc(min(30vw,240px)/-2);animation-duration:28s;animation-delay:-11s}.landing-starlight span:nth-child(2):before{animation-duration:28s,28s;animation-delay:-11s,-11s}.landing-starlight span:nth-child(3){--star-from-x:100vw;--star-to-x:-8vw;--star-from-y:0vh;--star-to-y:74vh;width:min(50vw,400px);height:min(50vw,400px);margin:calc(min(50vw,400px)/-2);animation-duration:26s;animation-delay:-6s}.landing-starlight span:nth-child(3):before{animation-duration:26s,26s;animation-delay:-6s,-6s}.landing-starlight span:nth-child(4){--star-from-x:78vw;--star-to-x:2vw;--star-from-y:10vh;--star-to-y:86vh;width:min(24vw,190px);height:min(24vw,190px);margin:calc(min(24vw,190px)/-2);animation-duration:34s;animation-delay:-19s}.landing-starlight span:nth-child(4):before{animation-duration:34s,34s;animation-delay:-19s,-19s}.landing-stage{z-index:1;text-align:center;opacity:0;flex-direction:column;align-items:center;padding:0 24px;animation:.7s ease-out .15s both landing-stage-fade;display:flex;position:relative}.landing-scene[data-intro] .landing-stage{opacity:0;animation:none}.landing-stage:before{content:"";z-index:-1;background:radial-gradient(ellipse at center, color-mix(in srgb, var(--ink) 50%, transparent) 0%, transparent 62%);pointer-events:none;position:absolute;inset:-80% -40%}.landing-logo{filter:drop-shadow(0 8px 18px #00000073);width:min(28vw,168px);height:auto;margin-bottom:18px}.landing-eyebrow{letter-spacing:.28em;text-transform:uppercase;color:var(--parchment);text-shadow:0 2px 8px #00000073;margin:0 0 10px;font-size:12px;font-weight:700}.landing-wordmark{letter-spacing:.06em;color:var(--parchment);text-shadow:0 4px 16px #0000008c;flex-direction:column;align-items:center;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(42px,7vw,72px);font-weight:700;line-height:1.05;display:flex}.landing-wordmark span{white-space:nowrap;display:block}.landing-motto{letter-spacing:.28em;color:var(--parchment);text-shadow:0 2px 8px #00000073;margin:12px 0 0;font-size:12px;font-weight:700}.landing-explore{background:var(--gold);color:#1c1408;letter-spacing:.08em;border-radius:999px;align-items:center;gap:8px;margin-top:22px;padding:12px 26px;font-size:15px;font-weight:700;display:inline-flex;box-shadow:0 8px 24px #00000059}.landing-explore svg{width:16px;height:16px}.landing-explore:hover{background:#f0c06a}.landing-board{color:var(--parchment);padding:calc(var(--header-height) + 16px) 28px 28px;background-color:#071820;background-image:linear-gradient(#071820f0,#081622e6),url(/brand/landing-world.jpg);background-position:50% 62%;background-size:cover;justify-content:safe center;align-items:safe center;display:flex;overflow:auto}.landing-board-inner{width:min(1320px,100%)}.landing-board-kicker{text-align:center;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin:0 0 8px;font-size:12px;font-weight:700}.landing-board h2{text-align:center;letter-spacing:.04em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(32px,4vw,48px);font-weight:700}.landing-places{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:28px 0 0;padding:0;list-style:none;display:grid}.landing-places a{height:100%;color:var(--parchment);border:1px solid color-mix(in srgb, var(--gold) 32%, transparent);background:#081822d1;border-radius:14px;flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.landing-places a:hover{border-color:var(--gold);background:#0c202ceb}.landing-places img{aspect-ratio:16/10;object-fit:cover;object-position:center top;width:100%}.landing-places span{flex-direction:column;gap:6px;padding:12px 14px 14px;display:flex}.landing-places strong{font-family:Georgia,Times New Roman,serif;font-size:18px;font-weight:700}.landing-notice{z-index:1;text-align:center;color:color-mix(in srgb, var(--mist) 78%, transparent);text-shadow:0 1px 4px #0009;margin:0;font-size:11px;line-height:1.5;position:absolute;bottom:18px;left:24px;right:24px}.landing-intro{z-index:90;background:var(--mist);pointer-events:none;justify-content:center;align-items:center;animation:3.4s linear both landing-intro-fade;display:flex;position:fixed;inset:0}.landing-mist{position:absolute;inset:0;overflow:hidden}.landing-mist-layer{background:radial-gradient(closest-side,#fffffff0 0%,#0000 72%);width:70%;height:84%;position:absolute;top:8%}.landing-mist-layer:first-child{animation:3.4s linear both landing-mist-part-left;left:-28%}.landing-mist-layer:nth-child(2){width:92%;animation:3.4s linear both landing-mist-part-center;left:12%}.landing-mist-layer:nth-child(3){animation:3.4s linear both landing-mist-part-right;left:46%}.landing-intro-mark{transform-origin:50%;width:min(46vw,320px);height:auto;animation:3.4s cubic-bezier(.2,.7,.3,1) both landing-intro-approach;position:relative}@keyframes landing-intro-approach{0%{opacity:0;transform:scale(.36)}30%{opacity:1;transform:scale(1)}55%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.08)}}@keyframes landing-intro-fade{0%,46%{opacity:1}to{opacity:0}}@keyframes landing-mist-part-left{0%{opacity:.55;transform:translate(12%)}40%{opacity:.92;transform:translate(0)}to{opacity:0;transform:translate(-36%)}}@keyframes landing-mist-part-center{0%{opacity:.7;transform:translateY(6%)}40%{opacity:.95;transform:translate(0,0)}to{opacity:0;transform:translateY(-8%)}}@keyframes landing-mist-part-right{0%{opacity:.55;transform:translate(-12%)}40%{opacity:.92;transform:translate(0)}to{opacity:0;transform:translate(36%)}}@keyframes landing-star-x{0%{transform:translate3d(var(--star-from-x), 0, 0)}to{transform:translate3d(var(--star-to-x), 0, 0)}}@keyframes landing-star-y{0%{transform:translate3d(0, var(--star-from-y), 0)}to{transform:translate3d(0, var(--star-to-y), 0)}}@keyframes landing-star-fade{0%,to{opacity:0}14%,78%{opacity:.8}}@keyframes landing-mist-cross{0%{transform:translate(-80vw)}to{transform:translate(120vw)}}@keyframes landing-stage-fade{0%{opacity:0}to{opacity:1}}@media (width<=1100px){.landing-places{grid-template-columns:1fr 1fr}}@media (width<=760px){.landing-intro-mark{width:min(72vw,260px)}.landing-logo{width:min(24vw,112px);margin-bottom:12px}.landing-notice{bottom:14px;left:16px;right:68px}.landing-board{padding-inline:16px}.landing-places{grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.landing-places strong{font-size:16px}.landing-places span{padding:10px 10px 12px}}@media (prefers-reduced-motion:reduce){.landing-intro,.landing-intro-mark,.landing-mist-layer,.landing-side-mist span,.landing-starlight span,.landing-starlight span:before,.landing-stage{animation:none}.landing-stage,.landing-atmosphere{opacity:1}.app-home .app-main{scroll-behavior:auto}}.talents-bar{align-items:center;gap:24px;padding:0 0 8px;display:flex}.talents-bar .toolbar{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.talents-bar .add-hint{color:#93a18f;margin-left:auto;font-size:11px}.talents-bar .toolbar button{box-sizing:border-box;white-space:nowrap;justify-content:center;align-items:center;min-width:88px;height:36px;padding:0 12px;font-size:12px;line-height:1;display:inline-flex}.tree-nav{display:none}.search-label{color:#b8c2b1;align-items:center;gap:10px;font-size:11px;display:flex}.talents-bar .points{text-align:right;color:#9ba697;grid-template-columns:1fr auto;align-items:center;gap:2px 12px;width:180px;display:grid}.talents-bar .points>span{letter-spacing:1px;text-align:left;font-size:11px}.talents-bar .points b{color:#f1d497;font:700 26px Georgia,serif}.talents-bar .points b i{color:#829283;margin-left:6px;font-size:14px;font-style:normal}.talents-bar .meter,.talents-bar .points small{grid-column:1/-1;margin-top:2px}.talents-bar .meter{background:#ffffff13;border-radius:4px;height:5px}.talents-bar .meter i{background:linear-gradient(90deg,#e3ae55,#fff0a3);border-radius:4px;height:100%;transition:width .15s;display:block}.talents-bar .points small{font-size:12px}.talents-workspace{grid-template-columns:minmax(0,1fr) 278px;align-items:start;gap:18px;display:grid}.trees-scroll{min-width:0;padding-bottom:3px;overflow:auto hidden}.trees{--row-height:86px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:744px;display:grid}.tree-panel{background:radial-gradient(ellipse at 50% 35%, color-mix(in srgb, var(--tree) 14%, transparent), transparent 70%), var(--panel);border:1px solid color-mix(in srgb, var(--tree) 35%, var(--panel-deep));border-radius:9px;min-width:0;overflow:hidden}.tree-head{background:linear-gradient(110deg, color-mix(in srgb, var(--tree) 8%, transparent), transparent);border-bottom:1px solid #ffffff0d;align-items:center;gap:9px;margin-bottom:7px;padding:13px 12px;display:flex}.tree-head h2{white-space:nowrap;margin:0;font:500 20px Georgia,serif}.tree-head small{color:#8e9e8a;margin-top:4px;font-size:10px;display:block}.tree-head>b{color:var(--tree);margin-left:auto;font:600 25px Georgia,serif}.tree-icon{object-fit:cover;border:1px solid var(--tree);border-radius:50%;flex-shrink:0;width:32px;height:32px}.tree-grid{grid-template:repeat(7, var(--row-height)) / repeat(4, minmax(0, 1fr));background:0 0;margin:0 8px 10px;display:grid;position:relative}.connections{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.connections>path{stroke:#bfa66a66;stroke-width:1.3px;fill:none;vector-effect:non-scaling-stroke}.connections>path.ready{stroke:#e0c17b}.connections marker path{fill:#bfa66a}.node{z-index:1;min-width:0;height:var(--row-height);background:0 0;border-radius:6px;flex-direction:column;place-self:start stretch;align-items:center;gap:6px;padding:4px 1px 0;display:flex;position:relative}.orb{color:#d5dfc8;background:#152117;border:2px solid #82936d;border-radius:7px;flex-shrink:0;place-items:center;width:46px;height:46px;font:600 18px Georgia,serif;transition:border-color .12s,box-shadow .12s;display:grid;position:relative;box-shadow:0 1px 4px #0009}.orb>img{object-fit:cover;pointer-events:none;border-radius:5px;width:100%;height:100%;display:block}.rank{color:#f6d67d;z-index:2;background:#0b110c;border:1px solid #988349;border-radius:3px;padding:1px 3px;font:700 9px system-ui;position:absolute;bottom:-5px;right:-4px}.node-name{color:#bac8b3;pointer-events:none;text-align:center;max-width:112px;padding:0 2px;font-size:9px;line-height:1.15}.node.locked .orb{filter:none;opacity:1;border-color:#3c4b38}.node.locked .orb>img{filter:saturate(.5)brightness(.67)}.node.locked .node-name{color:#84907c}.node:hover .orb,.node.inspected .orb{border-color:#eacf94;box-shadow:0 0 0 1px #eacf9466,0 0 13px #eacf9433}.node:hover .orb>img,.node.inspected .orb>img{filter:none}.node.learned .orb{border-color:var(--tree);box-shadow:0 0 0 1px color-mix(in srgb, var(--tree) 25%, transparent), 0 0 13px color-mix(in srgb, var(--tree) 25%, transparent)}.node.maxed .orb{border-color:#e6c97c}.node.maxed .rank{color:#c7f2b8;border-color:#76b165}.node.search-dim{opacity:.15}.node.budget-dim{opacity:.25}.node.budget-dim.search-dim{opacity:.08}.node.budget-dim:hover,.node.budget-dim:focus-visible{opacity:.65}@media (width<=760px){.app-talents .app-main{padding:8px 4px 12px}.search-label,.add-hint,.talents-aside{display:none}.talents-bar{flex-direction:column-reverse;align-items:stretch;gap:8px;padding:4px 4px 8px}.talents-bar .toolbar{flex-wrap:nowrap;gap:8px}.talents-bar .toolbar button{flex:1 1 0;min-width:0;height:44px;min-height:44px;padding:0 6px}.talents-bar .points{width:100%}.talents-bar .points b{font-size:22px}.trees-scroll{overflow:hidden}.tree-stage{grid-template-columns:44px minmax(0,1fr) 44px;align-items:stretch;gap:2px;min-height:0;display:grid}.tree-nav{border:1px solid color-mix(in srgb, var(--gold) 45%, transparent);min-width:44px;min-height:44px;color:var(--parchment);background:#0b2f3bd1;border-radius:8px;justify-content:center;align-self:stretch;align-items:center;padding:0;font-size:28px;line-height:1;display:flex}.tree-nav:disabled{opacity:.28}.trees{--row-height:72px;grid-template-columns:1fr;min-width:0}.tree-slot:not(.is-current){display:none}.tree-head{margin-bottom:2px;padding:8px}.tree-head h2{font-size:16px}.tree-icon{width:28px;height:28px}.tree-grid{margin:0 2px 6px}.orb{width:40px;min-width:40px;height:40px;min-height:40px}.node{min-width:0;min-height:var(--row-height)}.node-name{max-width:100%;font-size:10px}}.talents-aside{max-height:calc(100dvh - var(--header-height) - 32px);flex-direction:column;gap:13px;display:flex;position:sticky;top:16px;overflow-y:auto}.tooltip{background:linear-gradient(135deg, var(--panel-raise), var(--panel-deep));border:1px solid #b6985988;border-radius:8px;padding:16px;box-shadow:0 10px 35px #0003}.tooltip .eyebrow{letter-spacing:1px;color:#bdab78;margin:0 0 7px;font-size:10px;font-weight:700}.talent-heading{align-items:center;gap:12px;margin:12px 0;display:flex}.talent-heading>img{border:1px solid #b7a266;border-radius:6px;flex-shrink:0;width:40px;height:40px}.tooltip h3{color:#f2e1b0;margin:0;font:500 20px/1.15 Georgia,serif}.tooltip h4{color:#e6dcc2;margin-bottom:10px}.rank-line{color:#a4afa0;justify-content:space-between;font-size:11px;display:flex}.rank-line b{color:#8fdaa7}.effect-label{color:#bdc8b7;text-transform:uppercase;letter-spacing:.7px;border-top:1px solid #ffffff15;margin:17px 0 10px;padding-top:14px;font-size:12px}.effect{color:#e6d9a0;white-space:pre-wrap;margin:10px 0;font-size:14px;line-height:1.5}.next-effect .effect{color:#bbcaad}.spell-details{color:#d5dccd;grid-template-columns:1fr 1fr;gap:4px 12px;margin-bottom:12px;font-size:11px;display:grid}.form-requirement,.lock-reason{color:#dcaa8b;font-size:11px;line-height:1.5}.prerequisite{color:#b5c1af;font-size:11px;line-height:1.5}.actions{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.actions button{color:#162016;background:#d4a958;border:0;border-radius:5px;padding:9px 12px;font-size:12px;font-weight:700}.actions .ghost{color:#d7dfd1;background:0 0;border:1px solid #ffffff30}.summary{background:var(--panel);border:1px solid #ffffff14;border-radius:9px;padding:16px}.summary .eyebrow{letter-spacing:1px;color:#bdab78;margin:0 0 10px;font-size:10px;font-weight:700}.split>div{color:#bac6ba;align-items:center;gap:7px;padding:6px 0;font-size:12px;display:flex}.split span{border-radius:100%;width:7px;height:7px}.split b{color:#e6d49a;margin-left:auto}.summary ul{border-top:1px solid #ffffff15;max-height:205px;margin:15px 0 0;padding:14px 0 0;list-style:none;overflow:auto}.summary li{justify-content:space-between;gap:8px;padding:5px 0;font-size:11px;display:flex}.summary li button{color:#c6d0c4;text-align:left;background:0 0;padding:0;font-size:11px}.summary li button:hover{text-decoration:underline}.summary li b{color:#e5c574;white-space:nowrap}.summary .empty{color:#9aa695;margin:17px 0 0;font-size:12px;line-height:1.6}.talent-tip-layer{display:none}dialog{background:var(--panel);color:var(--parchment);border:1px solid #b69859;border-radius:10px;width:min(640px,92vw);max-height:90vh;padding:24px}dialog::backdrop{background:#020604cc}.dialog-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.dialog-head h2{margin:0;font:500 25px Georgia,serif}.dialog-head button{font-size:20px}dialog p{color:#b8c1b2;font-size:13px;line-height:1.5}dialog label{margin-bottom:7px;font-size:12px;display:block}#build-link{background:var(--panel-deep);width:100%;color:var(--mist);border:1px solid #ffffff26;border-radius:5px;padding:10px;font-size:14px}.build-code-options{border-top:1px solid #ffffff20;margin-top:22px;padding-top:16px}.build-code-options summary{color:#bdc8b7;margin-bottom:14px;font-size:14px}textarea{resize:vertical;word-break:break-all;width:100%;line-height:1.5}@media (width<=1200px){.talents-workspace{grid-template-columns:1fr}.talents-aside{max-height:none;position:static;overflow:visible}}@media (width<=760px){.talents-aside{display:none}.talent-tip-layer{z-index:70;padding:12px 8px calc(12px + env(safe-area-inset-bottom));background:#02080e8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.talent-tip{border-radius:14px;width:min(100%,520px);max-height:min(68dvh,520px);position:relative;overflow:auto}.talent-tip .tooltip{margin:0;box-shadow:0 18px 50px #000a}.talent-tip-close{z-index:1;width:36px;min-width:36px;height:36px;min-height:36px;color:var(--parchment);background:#00000059;border-radius:8px;font-size:22px;line-height:1;position:absolute;top:8px;right:8px}.talent-tip .actions button{flex:1;min-width:88px;min-height:44px}}.trainer{border:1px solid var(--line);background:linear-gradient(145deg, var(--panel-raise), var(--panel));border-radius:9px;margin-top:18px;padding:22px}.trainer .section-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;padding-bottom:17px;display:flex}.trainer .section-head h2{margin:0;font:500 1.55rem Georgia,serif}.trainer .section-head>span{color:#899588;font-size:.72rem}.level-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;display:grid}.level-grid>section{background:var(--panel-deep);border:1px solid #ffffff10;border-radius:7px;grid-template-columns:78px 1fr;gap:12px;padding:13px;display:grid}.level{border-right:1px solid var(--line);color:#9aa69a;flex-direction:column;justify-content:center;align-items:center;display:flex}.level span{letter-spacing:.1rem;font-size:.58rem}.level strong{color:#e3c477;font:600 2rem Georgia,serif}.upgrade-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.upgrade{background:var(--panel);color:var(--parchment);text-align:left;border:0;border-radius:5px;align-items:center;gap:8px;padding:7px;display:flex}.upgrade:hover{background:var(--panel-raise)}.upgrade img{border:1px solid #586657;border-radius:5px;width:32px;height:32px}.upgrade b{font-size:.73rem;display:block}.upgrade span{color:#899589;font-size:.64rem}.ability-tooltip{background:linear-gradient(145deg, var(--panel-raise), var(--panel-deep));color:#f1eee2;z-index:10;border:1px solid #b89a54;border-radius:10px;width:min(430px,100vw - 28px);margin:0;padding:20px;position:fixed;inset:auto 20px 20px auto;box-shadow:0 24px 70px #000c}.ability-tooltip[hidden]{display:none}.ability-tooltip:not([data-pinned=true]){pointer-events:none}.tooltip-close{color:#9eaa9d;background:0 0;border:0;font-size:1.5rem;position:absolute;top:8px;right:10px}.tooltip-head{align-items:center;gap:13px;padding-right:24px;display:flex}.tooltip-head img{border:1px solid #b49c60;border-radius:7px;width:54px;height:54px}.tooltip-head h2{color:#f6d887;margin:0;font:500 1.3rem Georgia,serif}.tooltip-head p{color:#9eaa9d;margin:4px 0 0;font-size:.75rem}.tooltip-details{grid-template-columns:1fr 1fr;gap:7px 14px;margin:18px 0 14px;display:grid}.tooltip-details span{border-bottom:1px solid #ffffff12;padding-bottom:7px;font-size:.77rem}.tooltip-description{color:#e8dfb7;white-space:pre-wrap;margin:0;font-size:.88rem;line-height:1.58}.view-toggle{background:var(--panel);border:1px solid var(--line);border-radius:999px;gap:4px;width:fit-content;max-width:100%;margin:0 0 18px;padding:4px;display:flex}.view-toggle button{color:var(--parchment);white-space:nowrap;background:0 0;border:0;border-radius:999px;padding:8px 16px;font-size:.88rem}.view-toggle button[aria-checked=true]{background:var(--gold);color:#1a1408;font-weight:700}.app-abilities .app-main:has(.abilities-frame.is-spec){flex-direction:column;display:flex;overflow:hidden}.abilities-frame.is-spec{flex-direction:column;flex:1;min-height:0;display:flex}.abilities-frame.is-spec .page-path,.abilities-frame.is-spec .view-toggle{flex-shrink:0}.spec-stage{flex:1;grid-template-columns:minmax(0,1fr);min-height:0;display:grid}.spec-nav{display:none}.spec-board{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:16px;height:100%;min-height:0;display:grid}.spec-column{border:1px solid color-mix(in srgb, var(--spec,var(--gold)) 42%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--spec,var(--gold)) 14%, var(--panel)), var(--panel-deep));border-radius:9px;flex-direction:column;min-width:0;min-height:0;padding:14px 8px 14px 14px;display:flex;overflow:hidden}.spec-head{flex-shrink:0;align-items:center;gap:10px;margin-bottom:12px;padding-right:6px;display:flex}.spec-head img{border:1px solid color-mix(in srgb, var(--spec,var(--gold)) 55%, #586657);border-radius:6px;width:36px;height:36px}.spec-head h2{color:var(--parchment);margin:0;font:500 1.25rem Georgia,serif}.spec-head span{color:var(--muted);margin-top:2px;font-size:.72rem;display:block}.spec-spells{scrollbar-gutter:stable;flex:1;align-content:start;gap:7px;min-height:0;padding-bottom:4px;display:grid;overflow:auto}.spec-spells .upgrade[aria-pressed=true]{outline:1px solid var(--gold);background:var(--panel-raise)}.learn-board{border:1px solid var(--line);background:linear-gradient(145deg, var(--panel-raise), var(--panel));border-radius:9px;padding:18px 0 8px}.learn-intro{padding:0 18px 8px}.learn-intro h2{margin:0;font:500 1.35rem Georgia,serif}.learn-intro p{color:var(--muted);margin:6px 0 0;font-size:.86rem;line-height:1.5}.learn-scroll{overflow-x:auto}.learn-inner{min-width:760px}.learn-axis,.learn-row{grid-template-columns:168px minmax(560px,1fr);align-items:center;display:grid}.learn-axis{color:var(--muted);font-size:.68rem}.learn-row+.learn-row{border-top:1px solid #ffffff10}.learn-label,.learn-axis>span:first-child{z-index:1;background:var(--panel);text-align:left;align-items:center;gap:8px;padding:8px 12px 8px 16px;display:flex;position:sticky;left:0}.learn-label{min-height:64px}.learn-axis>span:first-child{align-self:end;min-height:22px}.learn-label{color:var(--parchment);border:0;width:100%}.learn-label img{border:1px solid #586657;border-radius:5px;flex-shrink:0;width:32px;height:32px}.learn-label b{font-size:.78rem;display:block}.learn-label em{color:var(--spec,var(--gold));margin-top:2px;font-size:.66rem;font-style:normal;display:block}.learn-label[aria-pressed=true]{box-shadow:inset 3px 0 0 var(--gold)}.learn-track{height:74px;margin:0 36px 0 18px;position:relative}.learn-axis .learn-track{height:22px}.learn-tick{position:absolute;top:0;transform:translate(-50%)}.learn-line{background:linear-gradient(90deg, color-mix(in srgb, var(--spec,var(--gold)) 35%, transparent), var(--spec,var(--gold)));border-radius:99px;height:2px;position:absolute;top:27px}.learn-node{width:52px;color:var(--parchment);background:0 0;flex-direction:column;align-items:center;gap:2px;padding:0;display:flex;position:absolute;top:10px;transform:translate(-50%)}.learn-node i{background:var(--spec,var(--gold));width:12px;height:12px;box-shadow:0 0 0 3px color-mix(in srgb, var(--spec,var(--gold)) 28%, #0a222c);border-radius:50%}.learn-node strong{color:#e3c477;font-size:.72rem;line-height:1.1}.learn-node em{color:#b7c4d4;font-size:.6rem;font-style:normal;line-height:1.1}.learn-node[aria-current=true] i{box-shadow:0 0 0 3px var(--parchment)}.ability-drawer-backdrop{top:var(--header-height);z-index:35;background:#02080e59;border:0;padding:0;position:fixed;bottom:0;left:0;right:0}.ability-drawer{top:var(--header-height);z-index:40;background:linear-gradient(180deg, var(--panel-raise), var(--panel-deep));color:#f1eee2;border-left:1px solid #b89a54;width:min(440px,100%);padding:22px 18px 32px;position:fixed;bottom:0;right:0;overflow:auto;box-shadow:-18px 0 48px #000a}.ability-drawer:focus{outline:none}.ability-drawer .tooltip-head{margin-bottom:8px}.rank-stack{flex-direction:column;gap:14px;margin:8px 0 0;padding:0;list-style:none;display:flex}.rank-stack li{background:#08182473;border:1px solid #ffffff14;border-radius:8px;padding:12px 12px 14px}.rank-stack li.is-focus{border-color:var(--gold)}.rank-prereq{color:#d7c48a;letter-spacing:.04em;margin:0 0 8px;font-size:.72rem}.rank-stack-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.rank-stack-head b{color:#f6d887;font-size:.95rem}.rank-stack-head span{color:#9eaa9d;font-size:.75rem}.rank-stack .tooltip-details{margin:0 0 10px}.rank-stack .tooltip-description{font-size:.84rem}@media (width<=820px){.level-grid,.upgrade-list{grid-template-columns:1fr}.view-toggle{width:100%}.view-toggle button{flex:1;padding-inline:8px}.ability-drawer{width:100%}}@media (width<=760px){.ability-tooltip{width:min(430px,100% - 28px);left:50%;right:auto;transform:translate(-50%)}.spec-stage{grid-template-columns:44px minmax(0,1fr) 44px;align-items:stretch;gap:2px}.spec-nav{border:1px solid color-mix(in srgb, var(--gold) 45%, transparent);min-width:44px;min-height:44px;color:var(--parchment);background:#0b2f3bd1;border-radius:8px;justify-content:center;align-self:stretch;align-items:center;padding:0;font-size:28px;line-height:1;display:flex}.spec-nav:disabled{opacity:.28}.spec-board{grid-template-columns:1fr;min-width:0}.spec-column:not(.is-current){display:none}.learn-board{padding-top:14px}.learn-intro{padding:0 14px 4px}.learn-intro h2{font-size:1.05rem}.learn-scroll{overflow:visible}.learn-inner{min-width:0}.learn-axis{display:none}.learn-row{display:block}.learn-label{background:0 0;min-height:0;padding:10px 14px 6px;position:static}.learn-track{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));align-items:center;gap:8px;height:auto;margin:0 12px 12px 14px;display:grid}.learn-line{display:none}.learn-node{border:1px solid color-mix(in srgb, var(--spec,var(--gold)) 40%, transparent);background:#0816208c;border-radius:8px;flex-direction:row;justify-content:flex-start;align-items:center;gap:6px;width:auto;min-height:36px;padding:6px 10px;position:static;transform:none}.learn-node strong{font-size:.84rem}.learn-node strong:after{content:"级";margin-left:1px;font-weight:600}.learn-node em{font-size:.78rem}.learn-node[aria-current=true]{border-color:var(--gold)}}.app-guides .app-main{background-image:linear-gradient(#081c28e0,#06121cf0),url(/brand/forever-cinematic.jpg);background-position:top}.app-guides .app-main:has(.guides-frame){flex-direction:column;display:flex;overflow:hidden}.guides-frame{flex-direction:column;flex:1;min-height:0;display:flex}.guides-frame .page-path,.guides-frame .view-toggle{flex-shrink:0}.route-stage{flex:1;min-height:0;position:relative;overflow:hidden}.guide-building{flex:1;place-items:center;min-height:0;padding:28px 16px 48px;display:grid}.guide-building-card{text-align:center;border:1px solid color-mix(in srgb, var(--gold) 55%, transparent);background:radial-gradient(at 50% 0,#f6d88729,#0000 58%),#0d2230e6;border-radius:18px;width:min(460px,100%);padding:36px 32px 32px;box-shadow:0 18px 48px #00000047}.guide-building-card img{width:72px;height:auto;margin-bottom:14px}.guide-building-kicker{color:var(--gold);letter-spacing:.18em;margin:0 0 8px;font-size:12px;font-weight:700}.guide-building-card h2{color:var(--parchment);margin:0;font:500 clamp(1.35rem,4vw,1.75rem)/1.35 Georgia,serif}.route-canvas{transform-origin:0 0;position:absolute;top:0;left:0}.route-lines{position:absolute;inset:0;overflow:visible}.route-lines path{fill:none;stroke:color-mix(in srgb, var(--gold) 78%, white);stroke-width:1.5px}.route-node{text-align:center;color:var(--parchment);border:1px solid color-mix(in srgb, var(--gold) 62%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#08162047;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;display:flex;position:absolute}.route-node b{color:#f6d887;white-space:nowrap;font:600 .95rem Georgia,serif}.route-node.is-open{border-color:var(--gold);background:#e0a33529}.route-tip{z-index:2;background:linear-gradient(160deg,#1b4254,#0c2834);border:1px solid #b89a54;border-radius:12px;padding:14px 14px 16px;position:absolute;box-shadow:0 16px 40px #0006}.route-tip h2{color:#f6d887;margin:0;font:600 1.15rem Georgia,serif}.route-tip p{color:var(--parchment);margin:8px 0 12px;font-size:.86rem;line-height:1.55}.route-tip a{background:var(--gold);color:#1a1408;border-radius:999px;padding:7px 12px;font-weight:700;text-decoration:none;display:inline-flex}.docs-split{flex:1;grid-template-columns:240px minmax(0,1fr);gap:16px;min-height:0;display:grid}.docs-aside,.guide-reading{scrollbar-gutter:stable;border:1px solid var(--line);background:linear-gradient(#102a36f0,#0a222cf5);border-radius:12px;min-height:0;overflow:auto}.docs-aside{padding:14px 12px 18px}.docs-aside ul{margin:0;padding:0;list-style:none}.docs-aside li{margin:0}.docs-aside li>span{color:var(--gold);letter-spacing:.04em;margin:12px 8px 4px;font:600 .78rem Georgia,serif;display:block}.docs-aside li li>span{color:#f0d48f;margin-left:14px}.docs-aside a{color:var(--parchment);border-radius:8px;margin:2px 0;padding:7px 10px;line-height:1.35;text-decoration:none;display:block}.docs-aside li li a{margin-left:12px}.docs-aside a:hover{background:#ffffff0d}.docs-aside a[aria-current=page]{color:#f6d887;background:#e0a33529}.guide-reading{padding:8px 22px 32px}.catalog-toggle,.catalog-backdrop,.catalog-close{display:none}.guide-prose{width:100%;color:var(--parchment)}.guide-prose h1,.guide-prose h2,.guide-prose h3{color:#f6d887;margin:1.3em 0 .45em;font-family:Georgia,serif;font-weight:600;line-height:1.25}.guide-prose h1{font-size:2rem}.guide-prose h2{font-size:1.35rem}.guide-prose h3{font-size:1.1rem}.guide-prose p,.guide-prose li{line-height:1.7}.guide-prose a{color:#f0d48f}.guide-prose ul,.guide-prose ol{padding-left:1.3em}.guide-prose blockquote{border-left:3px solid var(--gold);color:#f3ead8;background:#e0a33514;margin:1em 0;padding:8px 14px}.guide-prose blockquote p{margin:.3em 0}.guide-prose code{background:#00000047;border-radius:4px;padding:.1em .35em;font-size:.9em}.guide-prose pre{background:#071820;border-radius:8px;padding:12px 14px;overflow:auto}.guide-prose pre code{background:0 0;padding:0}.guide-prose img{border:1px solid color-mix(in srgb, var(--gold) 35%, transparent);border-radius:12px;width:100%;height:auto;margin:12px 0 16px;display:block}.guide-prose table{border-collapse:collapse;width:100%;margin:12px 0 18px;font-size:.92rem}.guide-prose th,.guide-prose td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 10px}.guide-prose th{color:#f6d887;font-weight:600}@media (width<=820px){.docs-split{grid-template-columns:200px minmax(0,1fr);gap:10px}.guide-reading{padding:8px 14px 24px}.guide-prose h1{font-size:1.6rem}}@media (width<=760px){.guide-building-card{padding:28px 20px 24px}.docs-split{grid-template-columns:minmax(0,1fr)}.guide-reading{flex-direction:column;display:flex}.catalog-toggle{z-index:2;border:1px solid color-mix(in srgb, var(--gold) 55%, transparent);background:#0b2f3be0;border-radius:8px;flex-direction:column;flex:none;justify-content:center;align-self:flex-end;align-items:center;gap:5px;width:40px;height:40px;margin:8px 0 4px;padding:0;display:inline-flex;position:sticky;top:8px}.catalog-toggle span{background:var(--parchment);border-radius:1px;width:16px;height:2px;display:block}.catalog-backdrop{top:var(--header-height);z-index:35;background:#02080e73;border:0;padding:0;display:block;position:fixed;bottom:0;left:0;right:0}.docs-aside{top:var(--header-height);z-index:40;background:linear-gradient(#102a36,#0a222c);border-top:0;border-bottom:0;border-right:0;border-radius:0;flex-direction:column;width:min(320px,86%);margin:0;transition:transform .2s;display:flex;position:fixed;bottom:0;right:0;transform:translate(100%)}.docs-aside.is-open{transform:translate(0)}.catalog-close{width:36px;height:36px;color:var(--parchment);background:0 0;border:0;justify-content:center;align-self:flex-end;align-items:center;margin:8px 8px 0;font-size:1.6rem;line-height:1;display:inline-flex}}.app-author .app-main{background-image:linear-gradient(#0a1c28e6,#061018f0),url(/brand/forever-skyborne.jpg);background-position:bottom}.author-page{flex-direction:column;gap:28px;width:min(1100px,100%);margin:0 auto;padding-bottom:28px;display:flex}.author-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:36px;display:grid}.author-block h2{color:#f6d887;margin:0 0 12px;font:600 1.2rem Georgia,serif}.author-prose{color:var(--parchment);margin:0 0 10px;line-height:1.7}.author-credits{width:100%}.author-credit-groups,.author-credit-names,.author-credit-sources{margin:0;padding:0;list-style:none}.author-credit-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.author-credit-groups li{border:1px solid var(--line);color:var(--parchment);background:#0a1c2673;border-radius:12px;padding:12px 16px;line-height:1.5}.author-credit-sub{color:#f6d887;margin:0 0 8px;font:600 .95rem Georgia,serif}.author-credit-names{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.author-credit-names li{border:1px solid color-mix(in srgb, var(--gold) 35%, transparent);color:var(--parchment);border-radius:999px;padding:4px 10px;font-size:.86rem;line-height:1.5}.author-credit-sources{flex-direction:column;gap:10px;display:flex}.author-credit-sources li{border:1px solid var(--line);background:linear-gradient(90deg,#12303ef5,#0a1c2673);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:12px 16px;display:flex}.author-credit-sources div{min-width:0}.author-credit-sources a{color:#f6d887;font:600 1rem Georgia,serif;text-decoration:none}.author-credit-sources a:hover{text-decoration:underline}.author-credit-sources span{color:var(--parchment);margin-top:2px;font-size:.86rem;line-height:1.45;display:block}.author-credit-sources em{color:var(--parchment);flex-shrink:0;font-size:.95rem;font-style:normal}.author-id{flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:14px;display:flex}.author-portrait{object-fit:cover;object-position:center 18%;border:1px solid color-mix(in srgb, var(--gold) 70%, transparent);border-radius:16px;flex-shrink:0;width:96px;height:96px}.author-meta{flex:none;min-width:0}.author-name{color:var(--parchment);margin:0;font:600 1.45rem Georgia,serif}.author-alias{color:var(--gold);margin:2px 0 0;font-size:.92rem}.author-social{flex-wrap:wrap;justify-content:flex-start;gap:8px 12px;display:flex}.author-social a{min-width:40px;color:var(--muted);flex-direction:column;align-items:center;gap:4px;text-decoration:none;display:flex}.author-social img{width:26px;height:26px}.author-social span{letter-spacing:.02em;font-size:.68rem}.author-social a:hover{color:#f6d887}.author-social a:focus-visible{outline-offset:3px;outline:2px solid #f1d28c}.author-pays{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.author-pay{border:1px solid var(--line);min-height:76px;color:var(--parchment);text-align:center;background:linear-gradient(#102a36eb,#0a1c26f5);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:8px 4px;text-decoration:none;display:flex}button.author-pay{width:100%;font:inherit}.author-pay img{object-fit:contain;width:auto;max-width:70%;height:22px}.author-pay span{white-space:pre-line;font-size:.68rem;line-height:1.3}.author-pay:hover{border-color:color-mix(in srgb, var(--gold) 65%, transparent)}.author-pay:focus-visible{outline-offset:3px;outline:2px solid #f1d28c}.author-community{flex-direction:column;height:100%;display:flex}.author-communities{flex-direction:column;flex:1;gap:10px;display:flex}.author-communities a{border:1px solid var(--line);min-height:68px;color:var(--parchment);background:linear-gradient(90deg,#12303ef5,#0a1c2673);border-radius:12px;flex:1;align-items:center;gap:14px;padding:10px 16px;text-decoration:none;display:flex}.author-communities img{object-fit:cover;border-radius:12px;flex-shrink:0;width:44px;height:44px}.author-communities strong{color:#f6d887;font:600 1.05rem Georgia,serif}.author-communities a:hover{border-color:var(--gold)}.author-communities a:focus-visible{outline-offset:3px;outline:2px solid #f1d28c}.author-shots{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.author-shot{border:1px solid color-mix(in srgb, var(--gold) 32%, transparent);height:230px;color:var(--parchment);border-radius:16px;text-decoration:none;transition:transform .2s,border-color .2s;display:block;position:relative;overflow:hidden}.author-shot img{object-fit:cover;object-position:center top;width:100%;height:100%;position:absolute;inset:0}.author-shot span{background:linear-gradient(#0000,#02060a59 38%,#02060af0);flex-direction:column;gap:4px;padding:42px 14px 14px;display:flex;position:absolute;bottom:0;left:0;right:0}.author-shot strong{color:#f6d887;font:600 1.05rem Georgia,serif}.author-shot em{color:var(--parchment);font-size:.82rem;font-style:normal;line-height:1.4}.author-shot:hover{border-color:var(--gold);transform:translateY(-4px)}.author-shot:focus-visible{outline-offset:3px;outline:2px solid #f1d28c}.author-modal-backdrop{z-index:60;background:#02080e9e;border:0;padding:0;position:fixed;inset:0}.author-modal{z-index:61;background:#102a36;border:1px solid #b89a54;border-radius:14px;width:min(320px,100% - 32px);padding:28px 18px 18px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.author-modal img{background:#fff;width:100%;height:auto;display:block}.author-modal-box{width:min(480px,100% - 32px)}.author-modal-box img{background:0 0;border-radius:8px}.author-modal-box p{color:var(--parchment);text-align:center;margin:14px 0 12px;line-height:1.6}.author-modal-box a{color:#1a1408;text-align:center;background:#f6d887;border-radius:10px;padding:10px 14px;font-weight:700;text-decoration:none;display:block}.author-modal-box a:hover{background:var(--parchment)}.author-modal-close{color:var(--parchment);background:0 0;font-size:1.5rem;line-height:1;position:absolute;top:2px;right:8px}@media (width<=760px){.author-top{grid-template-columns:1fr;gap:28px}.author-credit-groups{grid-template-columns:1fr}.author-portrait{width:72px;height:72px}.author-social{flex:1 0 100%}.author-pays{grid-template-columns:repeat(2,minmax(0,1fr))}.author-communities a{flex:none;min-height:60px}.author-pay,button.author-pay{width:100%;min-height:72px;padding:8px 4px}.author-pay span{font-size:.66rem}.author-shots{grid-template-columns:1fr}.author-shot{height:188px}.author-shot strong{font-size:.98rem}.author-shot em{font-size:.78rem}}.app-practice .app-main{scrollbar-gutter:auto;background:#07141c;padding:0;overflow:hidden}.app-practice .route-fade{flex-direction:column;height:100%;min-height:0;display:flex}.practice{height:100%;min-height:0;color:var(--parchment);flex-direction:column;display:flex;position:relative}.practice-stage{flex:auto;min-height:180px;position:relative}.practice-scene,.practice-canvas{width:100%;height:100%;display:block}.practice-path{text-shadow:0 1px 2px #000;margin:0;position:absolute;top:12px;left:16px}.practice-enemy{text-align:center;pointer-events:none;width:min(420px,100% - 32px);position:absolute;top:36px;left:50%;transform:translate(-50%)}.practice-count{z-index:4;color:var(--parchment);text-shadow:0 1px 2px #000;align-items:center;gap:6px;font-size:12px;display:flex;position:absolute;top:12px;right:16px}@media (width<=760px){.practice-count>span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}}.practice-count button{border:1px solid color-mix(in srgb, var(--gold) 45%, transparent);width:28px;height:28px;color:var(--parchment);background:#081620d9;border-radius:6px}.practice-count button[aria-pressed=true]{border-color:var(--gold);color:#f6d887}.practice-plates{z-index:2;pointer-events:none;position:absolute;inset:0}.practice-plate{transform-origin:bottom;color:#fff;text-align:center;pointer-events:auto;filter:drop-shadow(0 1px 1px #000000d9);background:0 0;border:0;width:228px;margin:0;padding:0;transition:transform .12s;position:absolute;transform:translate(-50%,-100%)}.practice-plate.is-selected{transform:translate(-50%,-100%)scale(1.08)}.practice-plate b{letter-spacing:.01em;text-shadow:0 1px #000,0 0 4px #000;font-size:15px;font-weight:700;display:block}.practice-plate.is-selected b{color:#f6d887}.practice-plate-bar{align-items:center;gap:4px;margin-top:1px;display:flex}.practice-plate-level,.practice-plate-pct{font-variant-numeric:tabular-nums;text-shadow:0 1px #000,0 0 3px #000;flex:none;font-size:13px;font-weight:800}.practice-plate-level{text-align:right;min-width:1.4em}.practice-plate-pct{text-align:right;min-width:3.6em}.practice-alert{z-index:3;color:#ff2a2a;letter-spacing:.04em;text-shadow:0 2px #000;pointer-events:none;white-space:nowrap;margin:0;font-size:32px;font-weight:800;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)}.practice-hp{background:#141414;border:1px solid #000;border-radius:1px;flex:1;height:14px;overflow:hidden;box-shadow:inset 0 -2px #2f6ea8}.practice-plate.is-selected .practice-hp{box-shadow:inset 0 -2px 0 #2f6ea8, 0 0 0 1px var(--gold)}.practice-hp span{background:linear-gradient(#f4f4f4 0%,#d5d5d5 72%,#9ec0e4 100%);height:100%;display:block}.practice-hp-text{font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #000;margin-top:2px;font-size:12px}.practice-debuffs{flex-wrap:wrap-reverse;justify-content:center;gap:3px;width:max-content;max-width:168px;margin:0;display:flex;position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%)}.practice-debuff{display:inline-block;position:relative}.practice-debuff img{border:1px solid #000;border-radius:2px;width:26px;height:26px;display:block}.practice-debuff em{font-variant-numeric:tabular-nums;color:#ffe14a;text-shadow:1px 1px #000,-1px -1px #000,1px -1px #000,-1px 1px #000;font-size:13px;font-style:normal;font-weight:800;position:absolute;bottom:-1px;right:1px}.practice-floaters{pointer-events:none;height:0;margin:0;position:absolute;top:58px;left:0;right:0}.practice-floater{letter-spacing:.02em;white-space:nowrap;text-shadow:0 2px #000,0 0 6px #000;color:#fff1c2;font-size:20px;font-weight:800;animation:2.2s linear both practice-float;position:absolute;left:50%}.practice-floater.is-miss{color:#b7c0c8}.practice-floater.is-melee{color:#f7fbfe}.practice-floater.is-bleed{color:#ff6b57}.practice-floater.is-crit{color:#ffd15a;font-size:28px}.practice-floater.is-bleed.is-crit{color:#ffb15a}@keyframes practice-float{0%{opacity:1;transform:translate(calc(-50% + var(--dx,0px) * .45), 18px) scale(.9)}12%{opacity:1;transform:translate(calc(-50% + var(--dx,0px) * .8), -4px) scale(1.18)}75%{opacity:1;transform:translate(calc(-50% + var(--dx,0px) * 1.2), -100px) scale(1)}to{opacity:0;transform:translate(calc(-50% + var(--dx,0px) * 1.35), -148px) scale(1)}}.practice-cdm{z-index:4;pointer-events:none;background:0 0;padding:0;position:absolute;bottom:12px;left:12px;right:72px}.practice-side-actions,.practice-stack{pointer-events:auto}.practice-cdm-head{justify-content:flex-end;align-items:flex-start;gap:12px;display:flex}.practice-side-actions{flex-direction:column;align-items:stretch;gap:8px;display:flex}.practice-settings-open,.practice-reset,.practice-modal-head button{border:1px solid color-mix(in srgb, var(--gold) 45%, transparent);color:var(--parchment);white-space:nowrap;background:#081c26e6;border-radius:8px;padding:8px 12px}.practice-settings-open{min-height:36px}.practice-settings{gap:12px;margin-top:16px;display:grid}.practice-settings label{color:var(--parchment);grid-template-columns:minmax(0,1fr) 8em 2.6em;align-items:center;column-gap:10px;font-size:14px;display:grid}.practice-settings small{color:var(--muted);grid-column:1/-1;font-size:12px}.practice-setting-suffix{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.practice-tutorial{margin:16px 0 0;line-height:1.55}.practice-settings input{border:1px solid color-mix(in srgb, var(--gold) 45%, transparent);width:100%;min-width:0;min-height:40px;color:var(--parchment);font-variant-numeric:tabular-nums;background:#101820;border-radius:8px;margin:0;padding:6px 8px;font-size:16px}.practice-settings input[type=checkbox]{width:22px;height:22px;min-height:22px;accent-color:var(--gold);justify-self:start;padding:0}.practice-reset{min-height:36px}.practice-hint,.practice-notice{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.practice-modal .practice-hint{margin-top:14px}.practice-notice{color:#f3c7a2;min-height:1.2em}.practice-modal-backdrop{z-index:80;background:#02080cb8;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.practice-modal{border:1px solid color-mix(in srgb, var(--gold) 55%, transparent);width:min(440px,100%);max-height:min(640px,100% - 32px);color:var(--parchment);background:#0d2230;border-radius:12px;outline:none;flex-direction:column;display:flex;overflow:hidden}.practice-modal-head{background:#0d2230;flex:none;justify-content:space-between;align-items:center;gap:12px;padding:16px 16px 12px;display:flex}.practice-modal-body{min-height:0;padding:0 16px 20px;overflow:auto}.practice-modal-head h2{margin:0;font:500 1.25rem Georgia,serif}.practice-modal-head button{width:36px;height:36px;padding:0;font-size:22px;line-height:1}.practice-binds{grid-template-columns:1fr 1fr;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.practice-binds button{border:1px solid color-mix(in srgb, var(--gold) 35%, transparent);width:100%;min-height:44px;color:var(--parchment);text-align:left;background:#101820;border-radius:8px;align-items:center;gap:8px;padding:6px 8px;display:flex}.practice-binds button[aria-pressed=true]{border-color:var(--gold);color:#f6d887}.practice-binds img{object-fit:cover;border-radius:4px;width:32px;height:32px}.practice-binds span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.practice-binds kbd{background:#00000059;border-radius:4px;margin-left:auto;padding:2px 6px;font-family:inherit;font-size:12px}.practice-stack{width:min(520px,100%);margin:8px auto 0}.practice-meters{width:100%;margin:0}.practice-energy,.practice-mana{background:#142028;border-radius:4px;height:20px;margin-top:8px;position:relative;overflow:hidden}.practice-energy span,.practice-mana span{background:linear-gradient(#ffe38a,#e0a335);height:100%;display:block}.practice-mana span{background:linear-gradient(#8ec5ff,#2f6fbe)}.practice-energy b,.practice-mana b{color:#fff;font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #000;pointer-events:none;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex;position:absolute;inset:0}.practice-combo{grid-template-columns:repeat(5,1fr);gap:4px;width:100%;margin-top:8px;display:grid}.practice-combo i{border:1px solid color-mix(in srgb, var(--gold) 40%, transparent);background:#142028;border-radius:2px;height:16px;display:block}.practice-combo i.is-on{background:linear-gradient(#ffe38a,#c9862a)}.practice-bar{grid-template-columns:repeat(9,minmax(0,1fr));gap:6px;width:100%;margin:10px 0 0;display:grid}.practice-slot{aspect-ratio:1;touch-action:none;background:#101820;border:1px solid #000000a6;border-radius:6px;padding:0;position:relative;overflow:hidden}.practice-slot img{object-fit:cover;pointer-events:none;width:100%;height:100%}.practice-slot.is-empty{background:#ffffff0a}.practice-slot.is-dim img{filter:grayscale(.65)brightness(.55)}.practice-slot.is-pressed{box-shadow:inset 0 0 0 2px #fff4c4,inset 0 0 14px #ffdc788c}.practice-slot.is-dragging img,.practice-slot.is-dragging .practice-cost,.practice-slot.is-dragging .practice-cd,.practice-slot.is-dragging .practice-sweep{opacity:0}.practice-slot.is-drop{box-shadow:inset 0 0 0 2px var(--gold)}.practice-drag{z-index:70;pointer-events:none;border-radius:6px;margin:0;position:fixed;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 10px 18px #00000073}.practice-drag.is-snap{transition:left .14s,top .14s}.practice-drag img{object-fit:cover;width:100%;height:100%;display:block}.practice-key,.practice-cost,.practice-cd{z-index:1;color:#fff;font-variant-numeric:tabular-nums;background:#0000008c;padding:0 3px;font-size:11px;line-height:1.3;position:absolute}.practice-key{top:2px;left:2px}.practice-cost{bottom:2px;right:2px}.practice-cd{background:0 0;font-size:16px;font-weight:700;top:50%;left:50%;transform:translate(-50%,-50%)}.practice-sweep{transform-origin:top;pointer-events:none;background:#0000008c;position:absolute;inset:0}@media (width<=760px){.practice-cdm{bottom:8px;left:8px;right:64px}.practice-stack{width:100%;margin:8px 0 0}.practice-bar{gap:4px}.practice-alert{font-size:22px}.practice-plate{width:132px}.practice-settings-open,.practice-reset,.practice-settings input:not([type=checkbox]){min-height:44px}.practice-modal-backdrop{align-items:flex-end;padding:0}.practice-modal{border-radius:16px 16px 0 0;width:100%;max-height:min(78vh,640px)}.practice-modal-body{padding-bottom:calc(20px + env(safe-area-inset-bottom))}.practice-binds{grid-template-columns:1fr}}
