@font-face{font-family:Metamorphous;font-style:normal;font-weight:400;font-display:swap;src:url(../media/f04bb203f6d252e8-s.40v59g43ayjm9.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Metamorphous;font-style:normal;font-weight:400;font-display:swap;src:url(../media/505bf1c40cc4a634-s.p.26gen8j144zas.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Metamorphous Fallback;src:local(Arial);ascent-override:77.12%;descent-override:22.99%;line-gap-override:0.0%;size-adjust:124.86%}.metamorphous_f9df9b7d-module__ZVfPqW__className{font-family:Metamorphous,Metamorphous Fallback;font-style:normal;font-weight:400}.metamorphous_f9df9b7d-module__ZVfPqW__variable{--font-metamorphous:"Metamorphous", "Metamorphous Fallback"}
@font-face{font-family:Marcellus;font-style:normal;font-weight:400;font-display:swap;src:url(../media/50df388245113a6d-s.1odqrhin2722e.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Marcellus;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ec2f4458eb06f74e-s.p.217u6tza6brar.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Marcellus Fallback;src:local(Times New Roman);ascent-override:86.59%;descent-override:24.87%;line-gap-override:0.0%;size-adjust:112.5%}.marcellus_6a73e44a-module__wOAZvW__className{font-family:Marcellus,Marcellus Fallback;font-style:normal;font-weight:400}.marcellus_6a73e44a-module__wOAZvW__variable{--font-marcellus:"Marcellus", "Marcellus Fallback"}
@font-face{font-family:Figtree;font-style:normal;font-weight:300 900;font-display:swap;src:url(../media/400bf8aa837fcb7e-s.2u3lqdovtp4z3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:300 900;font-display:swap;src:url(../media/f7aa21714c1c53f8-s.p.0jgzmitmnoe6_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree Fallback;src:local(Arial);ascent-override:94.32%;descent-override:24.82%;line-gap-override:0.0%;size-adjust:100.72%}.figtree_4fd20b5-module__hpvSLW__className{font-family:Figtree,Figtree Fallback;font-style:normal}.figtree_4fd20b5-module__hpvSLW__variable{--font-figtree:"Figtree", "Figtree Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.3zhtymus0wdqb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.3nkuoiize4urq.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.1da667lu-u79a.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1i05ju5aeyhye.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.1dgcou5jor5q_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.31-2bzhq1gx_9.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.3xauquyg2sixn.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.2taws-qdxmzlf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.0htwiiqufp3l9.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.28xcb7557rbh2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_1ee802ec-module__ZM0_tq__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_1ee802ec-module__ZM0_tq__variable{--font-plex-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--night:#0a0f21;--panel:#111a33;--panel-2:#172245;--edge:#34405f;--gold:#e9b949;--gold-deep:#a8792a;--gold-hi:#ffe39a;--ink:#ece6d6;--muted:#a6acbf;--wow-yellow:#ffd100;--wow-green:#4be35a;--wow-red:#ff5a48;--wind:#72d8ea;--alliance:#4a8fe0;--horde:#d8453a;--display:var(--font-metamorphous), "Palatino Linotype", Georgia, serif;--serif:var(--font-marcellus), "Palatino Linotype", Palatino, Georgia, serif;--body:var(--font-figtree), "Segoe UI", system-ui, -apple-system, sans-serif;--mono:var(--font-plex-mono), ui-monospace, Menlo, monospace;--corners:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cg transform=''%3E%3Cpath d='M2 27V9a7 7 0 0 1 7-7h18' fill='none' stroke='%23E9B949' stroke-width='2'/%3E%3Cpath d='M6 27V12a6 6 0 0 1 6-6h15' fill='none' stroke='%23A8792A' stroke-width='1'/%3E%3Cpath d='M1 1h7L1 8z' fill='%23E9B949'/%3E%3Ccircle cx='10' cy='10' r='1.8' fill='%23FFE39A'/%3E%3C/g%3E%3C/svg%3E") top left / 28px no-repeat, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cg transform='translate(28 0) scale(-1 1)'%3E%3Cpath d='M2 27V9a7 7 0 0 1 7-7h18' fill='none' stroke='%23E9B949' stroke-width='2'/%3E%3Cpath d='M6 27V12a6 6 0 0 1 6-6h15' fill='none' stroke='%23A8792A' stroke-width='1'/%3E%3Cpath d='M1 1h7L1 8z' fill='%23E9B949'/%3E%3Ccircle cx='10' cy='10' r='1.8' fill='%23FFE39A'/%3E%3C/g%3E%3C/svg%3E") top right / 28px no-repeat, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cg transform='translate(0 28) scale(1 -1)'%3E%3Cpath d='M2 27V9a7 7 0 0 1 7-7h18' fill='none' stroke='%23E9B949' stroke-width='2'/%3E%3Cpath d='M6 27V12a6 6 0 0 1 6-6h15' fill='none' stroke='%23A8792A' stroke-width='1'/%3E%3Cpath d='M1 1h7L1 8z' fill='%23E9B949'/%3E%3Ccircle cx='10' cy='10' r='1.8' fill='%23FFE39A'/%3E%3C/g%3E%3C/svg%3E") bottom left / 28px no-repeat, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cg transform='translate(28 28) scale(-1 -1)'%3E%3Cpath d='M2 27V9a7 7 0 0 1 7-7h18' fill='none' stroke='%23E9B949' stroke-width='2'/%3E%3Cpath d='M6 27V12a6 6 0 0 1 6-6h15' fill='none' stroke='%23A8792A' stroke-width='1'/%3E%3Cpath d='M1 1h7L1 8z' fill='%23E9B949'/%3E%3Ccircle cx='10' cy='10' r='1.8' fill='%23FFE39A'/%3E%3C/g%3E%3C/svg%3E") bottom right / 28px no-repeat}*{box-sizing:border-box}body{background:var(--night);color:var(--ink);font:15px/1.55 var(--body);background-image:radial-gradient(1200px 600px at 80% -10%,#72d8ea1a,#0000 60%),radial-gradient(900px 500px at -10% 20%,#e9b9490f,#0000 60%);background-attachment:fixed}a{color:var(--gold-hi)}h1,h2,h3{text-wrap:balance;margin:0;font-weight:400}.wrap{max-width:1160px;margin:0 auto;padding-inline:20px}.muted{color:var(--muted)}.frame{background:linear-gradient(180deg, var(--panel-2), var(--panel));border:1px solid var(--gold-deep);border-radius:6px;position:relative;box-shadow:inset 0 0 0 1px #000000b3,inset 0 0 0 3px #e9b9491a,0 12px 30px #00000059}.frame.ornate{background:var(--corners), linear-gradient(180deg, var(--panel-2), var(--panel))}.frame.rivets:before,.frame.rivets:after{content:"";background:var(--gold);width:9px;height:9px;box-shadow:0 0 0 2px var(--night), 0 0 8px #e9b94999;position:absolute;transform:rotate(45deg)}.frame.rivets:before{margin-left:-5px;top:-5px;left:50%}.frame.rivets:after{margin-left:-5px;bottom:-5px;left:50%}.h2{font:400 24px/1.2 var(--serif);color:var(--gold-hi);letter-spacing:.02em;align-items:center;gap:12px;margin:40px 0 16px;display:flex}.h2:before{content:"";background:var(--gold);flex:none;width:10px;height:10px;transform:rotate(45deg);box-shadow:0 0 10px #e9b94999}.h2:after{content:"";background:linear-gradient(90deg, var(--gold-deep), transparent);flex:1;height:1px}.h2 small{font:13px/1 var(--body);color:var(--muted);letter-spacing:0}.eyebrow{font:500 12px/1 var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--wind)}.btn{font:400 16px/1 var(--serif);cursor:pointer;color:var(--ink);border:1px solid var(--edge);background:linear-gradient(#1c2748,#0d1430);border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:11px 18px;text-decoration:none;transition:filter .15s,box-shadow .15s;display:inline-flex;box-shadow:0 0 0 1px #000}.btn:hover{filter:brightness(1.15)}.btn.wow{color:var(--wow-yellow);text-shadow:0 1px #000;border:1px solid var(--gold);background:linear-gradient(#c3321f 0%,#8a150b 55%,#5d0b05 100%);box-shadow:inset 0 1px #ffc89666,inset 0 -2px #0000004d,0 0 0 1px #000,0 4px 14px #c3321f4d}.btn.wow:hover{box-shadow:inset 0 1px #ffc89680,0 0 0 1px #000,0 0 18px #ffd10059}.btn:active{transform:translateY(1px)}.btn:focus-visible,button:focus-visible,a:focus-visible,textarea:focus-visible{outline:2px solid var(--wind);outline-offset:2px}.top{top:env(safe-area-inset-top,0px);z-index:30;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--gold-deep);background:#080c1ceb;position:sticky;box-shadow:0 1px #000c,0 6px 20px #00000059}.top .wrap{flex-wrap:wrap;align-items:center;gap:22px;min-height:66px;padding-block:6px;display:flex}.logo{align-items:center;gap:8px;text-decoration:none;display:flex}.logo svg{filter:drop-shadow(0 0 10px #e9b94940);flex:none;width:86px;height:56px}.wordmark{line-height:1;display:grid}.wordmark b{font:400 25px/1 var(--display);letter-spacing:.04em;background:linear-gradient(100deg, var(--gold-deep) 0%, var(--gold) 30%, var(--gold-hi) 45%, #fff6d8 50%, var(--gold-hi) 55%, var(--gold) 70%, var(--gold-deep) 100%);color:#0000;background-position:100% 0;background-size:250% 100%;-webkit-background-clip:text;background-clip:text}.wordmark span{font:500 10px/1.4 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--wind);margin-top:3px}nav.main{flex-wrap:wrap;gap:2px;display:flex}nav.main a{color:var(--muted);font:400 16px/1 var(--serif);padding:10px 11px;text-decoration:none;position:relative}nav.main a:after{content:"";background:linear-gradient(90deg, transparent, var(--gold), transparent);height:2px;transition:left .25s,right .25s;position:absolute;bottom:3px;left:50%;right:50%}nav.main a:hover,nav.main a:focus-visible{color:var(--gold-hi);outline:none}nav.main a:hover:after,nav.main a[aria-current=page]:after{left:8px;right:8px}nav.main a[aria-current=page]{color:var(--gold-hi);text-shadow:0 0 12px #e9b94980}.build-pill{font:12px/1.3 var(--mono);color:var(--muted);align-items:center;gap:8px;margin-left:auto;display:flex}.build-pill i{background:var(--wow-green);width:8px;height:8px;box-shadow:0 0 8px var(--wow-green);border-radius:50%}main{min-height:60vh;padding-block:24px 64px}main.enter{animation:.35s ease-out enter}.loading{place-items:center;gap:14px;padding-block:80px;display:grid}.loading p{font:400 18px/1 var(--serif);color:var(--gold-hi);margin:0}.lbar{border:1px solid var(--gold-deep);background:#05070f;border-radius:3px;width:min(520px,90%);height:18px;overflow:hidden;box-shadow:inset 0 0 0 1px #000}.lbar i{background:linear-gradient(#ffe39a,#e9b949 45%,#a8792a);width:35%;height:100%;display:block;box-shadow:0 0 12px #e9b94999}.hero{border:1px solid var(--gold-deep);border-radius:8px;grid-template-columns:1.15fr 1fr;align-items:center;min-height:400px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #000000b3,0 20px 50px #00000073}.hero canvas{width:100%;height:100%;position:absolute;inset:0}.hero-copy{gap:16px;padding:36px 36px 64px;display:grid;position:relative}.hero h1{font:400 46px/1.05 var(--display);color:var(--ink);text-shadow:0 2px 20px #0009}.hero h1 em{background:linear-gradient(100deg, var(--gold) 0%, var(--gold) 40%, #fff6d8 50%, var(--gold) 60%, var(--gold) 100%);color:#0000;background-size:250% 100%;-webkit-background-clip:text;background-clip:text;font-style:normal}.hero p{color:#c9cedc;max-width:46ch;margin:0;font-size:16px}.count{gap:10px;display:flex}.count div{text-align:center;border:1px solid var(--gold-deep);background:#05081499;border-radius:4px;min-width:74px;padding:10px 12px}.count strong{font:500 30px/1 var(--mono);color:var(--gold-hi);font-variant-numeric:tabular-nums;display:block}.count span{font:11px/1.8 var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.btns{flex-wrap:wrap;gap:10px;display:flex}.crest{filter:drop-shadow(0 10px 30px #00000080);justify-self:center;width:min(340px,90%);position:relative}.crest svg{width:100%;height:auto;display:block}.tipbar{background:linear-gradient(#03050e8c,#03050eeb);border-top:1px solid #e9b94959;align-items:center;gap:14px;padding:10px 20px;display:flex;position:absolute;bottom:0;left:0;right:0}.tipbar b{font:400 15px/1 var(--serif);color:var(--wow-yellow);flex:none}.tipbar span{color:#d8dce6;flex:1;min-height:1.4em;font-size:14px}.tipbar .lbar{flex:none;width:160px;height:10px}.tipbar .lbar i{transform-origin:0;width:100%}.strip{flex-wrap:wrap;align-items:center;gap:16px;margin-top:18px;padding:14px 18px;display:flex}.strip .v{font:500 14px/1 var(--mono);color:var(--gold-hi)}.strip .stat{color:var(--muted);align-items:baseline;gap:6px;font-size:14px;display:flex}.strip .stat b{font:500 18px/1 var(--mono);color:var(--ink)}.strip a{font-family:var(--serif);margin-left:auto}.news{grid-template-columns:1.4fr 1fr;gap:16px;display:grid}.news .side{gap:16px;display:grid}.post{align-content:start;gap:10px;padding:20px 22px;transition:transform .2s,box-shadow .2s;display:grid}.post:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 1px #000000b3,inset 0 0 0 3px #e9b9492e,0 16px 34px #00000073}.post h3{font:400 20px/1.25 var(--serif);color:var(--ink)}.post.lead h3{font-size:27px}.post p{color:#c3c8d6;margin:0}.post .icons{gap:6px;display:flex}.post .icons img{width:34px;height:34px;box-shadow:0 0 0 1px var(--gold-deep);border:1px solid #000;border-radius:4px}.meta{font:12px/1 var(--mono);color:var(--muted);align-items:center;gap:10px;display:flex}.tag{font:500 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--wind);background:#72d8ea1f;border:1px solid #72d8ea4d;border-radius:3px;padding:4px 7px}.post a{font:400 15px/1 var(--serif)}.classes{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;display:grid}.class-tile{color:var(--ink);background:linear-gradient(90deg, color-mix(in srgb, var(--cc) 22%, transparent), transparent 70%), var(--panel);border:1px solid var(--edge);border-radius:6px;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.class-tile:after{content:"";background:linear-gradient(100deg,#0000,#ffffff24,#0000);width:40%;position:absolute;top:0;bottom:0;left:-60%;transform:skew(-18deg)}.class-tile img{border:2px solid var(--cc);width:44px;height:44px;box-shadow:0 0 0 2px #000, 0 0 14px color-mix(in srgb, var(--cc) 45%, transparent);border-radius:50%;transition:transform .2s}.class-tile b{font:400 18px/1.1 var(--serif);display:block}.class-tile span{color:var(--muted);font-size:12px}.class-tile:hover{border-color:var(--cc);box-shadow:0 8px 22px color-mix(in srgb, var(--cc) 25%, transparent);transform:translateY(-2px)}.class-tile:hover img{transform:scale(1.08)rotate(-4deg)}.class-strip{z-index:6;justify-content:space-between;align-items:center;gap:8px;margin-top:22px;display:flex;position:relative}.class-strip a{border:2px solid var(--cc);width:64px;height:64px;box-shadow:0 0 0 2px #000, 0 0 12px color-mix(in srgb, var(--cc) 35%, transparent);border-radius:50%;flex:none;transition:transform .15s,box-shadow .15s;display:block;position:relative}.class-strip img{border-radius:50%;width:100%;height:100%;display:block}.class-strip a:after{content:attr(data-name);white-space:nowrap;font:400 13px/1 var(--serif);color:var(--gold-hi);border:1px solid var(--gold-deep);opacity:0;pointer-events:none;z-index:5;background:#060818f2;border-radius:4px;padding:4px 8px;transition:opacity .15s;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)}.class-strip a:hover,.class-strip a:focus-visible{box-shadow:0 0 0 2px #000, 0 0 20px color-mix(in srgb, var(--cc) 70%, transparent);outline:none;transform:translateY(-3px)scale(1.06)}.class-strip a:hover:after,.class-strip a:focus-visible:after{opacity:1}@media (max-width:980px){.class-strip a{width:52px;height:52px}}@media (max-width:640px){.class-strip{gap:4px}.class-strip a{border-width:1.5px;width:34px;height:34px}}.page-head{gap:10px;margin-bottom:20px;display:grid}.page-head h1{font:400 40px/1.1 var(--display);color:var(--ink);text-shadow:0 0 24px #72d8ea26}.page-head p{color:#c3c8d6;max-width:68ch;margin:0}.class-bar{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.class-bar .class-btn{cursor:pointer;background:var(--panel);border:1px solid var(--edge);width:84px;color:var(--muted);font:400 13px/1.1 var(--serif);border-radius:6px;flex-direction:column;align-items:center;gap:6px;padding:10px 4px 8px;text-decoration:none;transition:border-color .15s,transform .15s;display:flex}.class-bar img{filter:saturate(.6)brightness(.8);border:2px solid #000;border-radius:50%;width:40px;height:40px;transition:filter .15s,transform .2s}.class-bar .class-btn:hover{transform:translateY(-2px)}.class-bar .class-btn:hover img{filter:none;transform:rotate(-6deg)}.class-bar .class-btn[aria-current=page]{color:var(--ink);border-color:var(--cc);background:linear-gradient(180deg, color-mix(in srgb, var(--cc) 25%, transparent), var(--panel))}.class-bar .class-btn[aria-current=page] img{filter:none;border-color:var(--cc);box-shadow:0 0 12px color-mix(in srgb, var(--cc) 60%, transparent)}.calc-status{flex-wrap:wrap;align-items:center;gap:22px;margin-bottom:14px;padding:12px 18px;display:flex}.calc-status .who{align-items:center;gap:10px;display:flex}.calc-status .who img{border:2px solid var(--cc);border-radius:50%;width:40px;height:40px}.calc-status .who b{font:400 22px/1 var(--serif);color:var(--cc)}.calc-status .num{font:500 22px/1 var(--mono);font-variant-numeric:tabular-nums}.calc-status .lab{font:11px/1.6 var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.calc-status .grow{flex:1}.xp{width:100%;height:12px;box-shadow:0 0 0 1px var(--gold-deep);background:#1a1030;border:1px solid #000;border-radius:2px;position:relative;overflow:hidden}.xp i{background:linear-gradient(#b58cff,#7a3fd6 55%,#4d1f95);height:100%;transition:width .35s ease-out;display:block;box-shadow:0 0 10px #a06eff99}.xp:after{content:"";background:repeating-linear-gradient(90deg,#0000 0 calc(10% - 1px),#0009 calc(10% - 1px) 10%);position:absolute;inset:0}.io{gap:12px;margin-bottom:14px;padding:16px 18px;display:grid}.io h3{font:400 18px/1.2 var(--serif);color:var(--gold-hi)}.io textarea{resize:vertical;width:100%;min-height:64px;font:13px/1.4 var(--mono);color:var(--gold-hi);border:1px solid var(--edge);background:#05070f;border-radius:4px;padding:8px 10px}.io .row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.io .msg{font-size:14px}.io .msg.ok{color:var(--wow-green)}.io .msg.err{color:var(--wow-red)}.io-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.calc-layout{grid-template-columns:1fr 300px;align-items:start;gap:16px;display:grid}.branch-tabs{gap:6px;margin-bottom:10px;display:none}.branch-tabs button{border:1px solid var(--edge);background:var(--panel);color:var(--muted);font:400 14px/1.1 var(--serif);cursor:pointer;border-radius:4px;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 6px;display:flex}.branch-tabs button img{border-radius:3px;width:22px;height:22px}.branch-tabs button[aria-selected=true]{color:var(--gold-hi);border-color:var(--gold-deep);background:var(--panel-2)}.branch-tabs .p{font:500 12px/1 var(--mono);color:var(--ink)}.branches{grid-template-columns:repeat(3,auto);justify-content:start;gap:14px;padding-bottom:4px;display:grid;overflow-x:auto}.branch{background:radial-gradient(130% 55% at 50% 0%, color-mix(in srgb, var(--cc) 20%, transparent), transparent 70%), linear-gradient(180deg, #0f1731, #0a1024);padding:14px}.branch header{align-items:center;gap:10px;margin-bottom:14px;display:flex}.branch header img{width:32px;height:32px;box-shadow:0 0 0 1px var(--gold-deep);border:1px solid #000;border-radius:4px}.branch h3{font:400 19px/1.1 var(--serif);color:var(--gold-hi);flex:1}.branch .pts{font:500 14px/1 var(--mono);color:var(--ink);border:1px solid var(--edge);background:#00000080;border-radius:3px;padding:4px 7px}.grid{grid-template-columns:repeat(4,48px);gap:14px;display:grid;position:relative}.grid svg{pointer-events:none;position:absolute;inset:0;overflow:visible}.node{cursor:pointer;background:#000;border:2px solid #3b3f4d;border-radius:5px;width:48px;height:48px;padding:0;position:relative;box-shadow:inset 0 0 0 1px #000}.node img{border-radius:3px;width:100%;height:100%;display:block}.node .ph{width:100%;height:100%;font:18px/1 var(--serif);color:var(--muted);place-items:center;display:grid}.node .rk{font:500 11px/1 var(--mono);color:#9a9a9a;font-variant-numeric:tabular-nums;background:#000;border:1px solid #555;border-radius:3px;padding:3px 4px;position:absolute;bottom:-9px;right:-9px}.node.locked img,.node.locked .ph{filter:grayscale()brightness(.55)}.node.open{border-color:var(--wow-green);box-shadow:0 0 10px #4be35a59}.node.open .rk{color:var(--wow-green);border-color:var(--wow-green)}.node.max{border-color:var(--gold);box-shadow:0 0 12px #e9b9498c}.node.max .rk{color:var(--wow-yellow);border-color:var(--gold)}.node.sel{outline:2px solid var(--wind);outline-offset:3px}.tt{top:calc(env(safe-area-inset-top,0px) + 84px);background:#060818f5;border:1px solid #9aa4bd;border-radius:5px;gap:8px;padding:14px 16px;display:grid;position:sticky;box-shadow:0 0 0 1px #000,0 10px 30px #0009}.tt h3{font:400 18px/1.2 var(--serif);color:#fff}.tt .rank{color:#fff;font-size:14px}.tt .desc{color:var(--wow-yellow);margin:0}.tt .nl{color:#fff;margin:4px 0 0}.tt .req{color:var(--wow-red);margin:0;font-size:14px}.tt .head{align-items:center;gap:12px;display:flex}.tt .head img{border:1px solid #000;border-radius:4px;width:44px;height:44px;box-shadow:0 0 0 1px #555}.tt .row{gap:8px;margin-top:6px;display:flex}.tt .row button{font:600 18px/1 var(--body);border:1px solid var(--edge);background:var(--panel-2);color:var(--ink);cursor:pointer;border-radius:4px;flex:1;padding:9px}.tt .row button:disabled{opacity:.35;cursor:default}.tt .more{font:400 15px/1 var(--serif)}.chip{font:500 10px/1 var(--mono);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;border-radius:3px;padding:3px 6px}.chip.cambio{color:var(--wow-yellow);background:#ffd1001f;border:1px solid #ffd10059}.chip.quitado{color:var(--wow-red);background:#ff5a481f;border:1px solid #ff5a4866}.chip.nuevo{color:var(--wow-green);background:#4be35a1f;border:1px solid #4be35a66}.chip.en{color:var(--muted);border:1px solid var(--edge);background:#a6acbf1f}.hint{color:var(--muted);font-size:13px}.note{color:var(--muted);max-width:85ch;margin-top:14px;font-size:13px}.code{font:13px/1.4 var(--mono);word-break:break-all;border:1px solid var(--edge);color:var(--gold-hi);background:#0006;border-radius:4px;padding:4px 8px}.ficha{grid-template-columns:1fr 340px;align-items:start;gap:16px;display:grid}.ficha-head{align-items:center;gap:18px;padding:20px 22px;display:flex}.ficha-head .big{border:2px solid var(--gold);border-radius:6px;width:72px;height:72px;box-shadow:0 0 0 2px #000,0 0 22px #e9b94966}.ficha-head h1{font:400 34px/1.1 var(--display)}.ficha-head .sub{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;display:flex}.ranks{border-collapse:collapse;width:100%}.ranks th,.ranks td{text-align:left;border-bottom:1px solid var(--edge);vertical-align:top;padding:10px 12px}.ranks th{font:500 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.ranks td:first-child{font:500 15px/1.4 var(--mono);color:var(--gold-hi);white-space:nowrap}.ranks td:last-child{color:var(--wow-yellow)}.hist{border-left:2px solid var(--gold-deep);gap:14px;margin:0;padding:0 0 0 18px;list-style:none;display:grid}.hist li{position:relative}.hist li:before{content:"";background:var(--gold);width:10px;height:10px;box-shadow:0 0 0 2px var(--night);position:absolute;top:5px;left:-25px;transform:rotate(45deg)}.hist b{font:500 13px/1.4 var(--mono);color:var(--gold-hi);display:block}.side-card{gap:12px;padding:18px 20px;display:grid}.side-card h2{font:400 20px/1.2 var(--serif);color:var(--gold-hi)}.matrix-wrap{overflow-x:auto}.matrix{border-collapse:separate;border-spacing:0;width:100%;min-width:720px}.matrix th,.matrix td{text-align:center;border-bottom:1px solid var(--edge);padding:8px}.matrix thead th{background:var(--panel)}.matrix thead img{border:2px solid var(--cc);border-radius:50%;width:34px;height:34px;margin:0 auto 4px;display:block}.matrix thead span{font:400 12px/1.2 var(--serif);color:var(--muted)}.matrix th.race{text-align:left;white-space:nowrap}.matrix tbody tr{transition:background .15s}.matrix tbody tr:hover{background:#e9b9490f}.race-cell{align-items:center;gap:10px;display:flex}.race-cell img,.race-cell .sky{width:38px;height:38px;box-shadow:0 0 0 1px var(--edge);border:1px solid #000;border-radius:4px;flex:none}.race-cell b{font:400 16px/1.15 var(--serif);display:block}.race-cell small{font:11px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.08em}.f-Alianza{color:var(--alliance)}.f-Horda{color:var(--horde)}tr.sky-row{background:linear-gradient(90deg,#72d8ea1f,#0000 70%)}.yes{background:var(--muted);opacity:.7;width:12px;height:12px;display:inline-block;transform:rotate(45deg)}.yes.new{background:var(--gold);opacity:1;width:14px;height:14px;box-shadow:0 0 10px #e9b949cc}.yes.skyc{background:var(--wind);opacity:1;box-shadow:0 0 10px #72d8eab3}.legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:18px;margin-top:10px;font-size:13px;display:flex}.legend span{align-items:center;gap:8px;display:inline-flex}.lore{grid-template-columns:1fr 1fr;gap:16px;display:grid}.lore .frame{align-content:start;gap:10px;padding:22px 24px;display:grid}.lore p{color:#c3c8d6;margin:0}.lore .cls{gap:6px;display:flex}.lore .cls img{border:2px solid var(--cc);border-radius:50%;width:30px;height:30px}.perk-trees{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.perk-tree{align-content:start;gap:14px;padding:20px;display:grid}.perk-tree h2{font:400 22px/1.2 var(--serif);color:var(--gold-hi)}.perk{grid-template-columns:42px 1fr;align-items:start;gap:12px;display:grid}.perk img,.perk .ph{width:42px;height:42px;box-shadow:0 0 0 1px var(--gold-deep);border:1px solid #000;border-radius:4px}.perk .ph{background:var(--panel-2);color:var(--muted);font-family:var(--serif);place-items:center;display:grid}.perk b{font:400 16px/1.25 var(--serif);color:#fff;display:block}.perk span{color:var(--wow-yellow);font-size:14px}.perk em{font-style:normal;font:500 11px/1 var(--mono);color:var(--wind);text-transform:uppercase;letter-spacing:.06em}.timeline{gap:16px;display:grid}.patch{gap:14px;padding:20px 22px;display:grid}.patch-head{flex-wrap:wrap;align-items:baseline;gap:14px;display:flex}.patch-head h2{font:400 26px/1.1 var(--serif);color:var(--gold-hi)}.patch-head .date{font:13px/1 var(--mono);color:var(--muted)}.patch-head .sum{font:13px/1.4 var(--mono);color:var(--muted);margin-left:auto}.patch-cls{gap:8px;display:grid}.patch-cls>header{border-bottom:1px solid var(--edge);align-items:center;gap:10px;padding-bottom:6px;display:flex}.patch-cls>header img,.patch-cls>header svg{border:2px solid var(--cc);border-radius:50%;width:28px;height:28px}.patch-cls>header b{font:400 18px/1 var(--serif);color:var(--cc)}.change{grid-template-columns:36px 1fr;gap:12px;padding:6px 0;display:grid}.change img,.change .ph{border:1px solid #000;border-radius:4px;width:36px;height:36px;box-shadow:0 0 0 1px #555}.change .ph{background:var(--panel-2);color:var(--muted);place-items:center;display:grid}.change .t{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.change .t b,.change .t a{font:400 16px/1.2 var(--serif);color:#fff}.change .t a{border-bottom:1px dotted var(--gold-deep);text-decoration:none}.change .t a:hover{color:var(--gold-hi)}.change .what{color:var(--ink);font-size:14px}.change .now{color:var(--wow-yellow);margin:2px 0 0;font-size:14px}.patch.quiet{padding:14px 22px}.patch.quiet .patch-head h2{color:var(--ink);font-size:20px}.legal-nav{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.legal-nav a{color:var(--muted);font:400 15px/1 var(--serif);border:1px solid var(--edge);background:var(--panel);border-radius:4px;padding:9px 12px;text-decoration:none}.legal-nav a[aria-current=page]{color:var(--gold-hi);border-color:var(--gold-deep)}.legal{gap:12px;max-width:900px;padding:26px 30px;display:grid}.legal h2{font:400 21px/1.25 var(--serif);color:var(--gold-hi);margin-top:10px}.legal p,.legal li{color:#d3d7e2;max-width:72ch}.legal ul{gap:4px;margin:0;padding-left:20px;display:grid}.legal table{border-collapse:collapse;width:100%;min-width:620px;font-size:14px}.legal th,.legal td{text-align:left;vertical-align:top;border-bottom:1px solid var(--edge);padding:8px 10px}.legal th{font:500 11px/1.3 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.legal code{font:13px var(--mono);color:var(--wind)}.table-wrap{overflow-x:auto}.todo{border:1px dashed var(--wow-yellow);color:var(--wow-yellow);background:#ffd1001f;border-radius:3px;padding:0 5px}.notice{z-index:40;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));background:#0c1228f7;align-items:center;gap:14px;max-width:620px;margin:0 auto;padding:12px 16px;display:flex;position:fixed}.notice p{flex:1;margin:0;font-size:14px}.notice .btn{padding:9px 14px;font-size:15px}.toasts{z-index:60;left:50%;bottom:calc(90px + env(safe-area-inset-bottom,0px));pointer-events:none;gap:10px;width:min(420px,100% - 32px);display:grid;position:fixed;transform:translate(-50%)}.ach{border:2px solid var(--gold);background:linear-gradient(#2a2112,#120d05);border-radius:8px;grid-template-columns:52px 1fr 44px;align-items:center;gap:12px;padding:10px 14px;animation:.5s cubic-bezier(.2,1.4,.4,1) both achIn;display:grid;box-shadow:0 0 0 1px #000,0 0 30px #e9b94973,inset 0 0 20px #0009}.ach.out{animation:.4s ease-in both achOut}.ach img{width:52px;height:52px;box-shadow:0 0 0 2px var(--gold-deep);border:1px solid #000;border-radius:6px}.ach small{font:500 11px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--gold);display:block}.ach b{font:400 18px/1.2 var(--serif);color:#fff;display:block}.ach span{color:#d8cfb8;font-size:13px}.ach .pts{width:44px;height:44px;font:600 16px/1 var(--mono);color:#2a1a04;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);background:radial-gradient(circle at 40% 35%,#fff1c4,#e9b949 55%,#8a5f1c);place-items:center;display:grid}.levelup{z-index:70;pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.levelup div{text-align:center;animation:2.4s ease-out both lvl}.levelup b{font:400 64px/1 var(--display);color:var(--wow-yellow);text-shadow:0 0 30px #ffd100cc,0 4px #5a3d0e;display:block}.levelup span{font:400 20px/1.4 var(--serif);color:#fff;text-shadow:0 2px 8px #000}.levelup:before{content:"";background:repeating-conic-gradient(from 0deg, #ffd10029 0 6deg, transparent 6deg 18deg);width:900px;height:900px;animation:2.4s ease-out both rays;position:absolute;top:calc(50% - 450px);left:calc(50% - 450px);-webkit-mask:radial-gradient(circle,#000 0,#0000 60%);mask:radial-gradient(circle,#000 0,#0000 60%)}.spark{z-index:55;pointer-events:none;width:0;height:0;position:fixed}.spark i{background:radial-gradient(circle,#fff6d8,#ffd100 55%,#0000 70%);border-radius:50%;width:6px;height:6px;margin:-3px;animation:.7s ease-out forwards burst;position:absolute}.spark.down i{background:radial-gradient(circle,#ffd0c8,#ff5a48 55%,#0000 70%)}.sring{border:2px solid #ffd100e6;border-radius:50%;width:60px;height:60px;animation:.6s ease-out forwards ring;position:absolute;top:-30px;left:-30px}.pop{animation:.35s cubic-bezier(.2,1.6,.4,1) pop}.tt.swap{animation:.18s ease-out ttIn}.flip{animation:.5s ease-out flip}footer{border-top:1px solid var(--gold-deep);color:var(--muted);background:#05081499;padding-block:26px 40px;font-size:13px}footer .wrap{gap:6px;display:grid}.foot-links{flex-wrap:wrap;gap:18px;margin-top:6px;display:flex}.foot-links a{color:var(--gold-hi);font:400 14px/1.4 var(--serif)}@media (max-width:980px){.calc-layout,.ficha{grid-template-columns:1fr}.tt{order:-1;position:static}.branches{grid-template-columns:repeat(auto-fit,minmax(262px,max-content))}.perk-trees,.lore,.news,.io-grid{grid-template-columns:1fr}}@media (max-width:760px){.hero{grid-template-columns:1fr}.crest{display:none}.hero h1{font-size:34px}.hero-copy{padding:24px 24px 76px}.tipbar{flex-wrap:wrap}.tipbar .lbar{display:none}.build-pill{margin-left:0}.wrap{padding-inline:16px}.strip a{margin-left:0}.class-bar{scroll-snap-type:x proximity;flex-wrap:nowrap;padding-bottom:6px;overflow-x:auto}.class-bar .class-btn{scroll-snap-align:start;flex:none;width:70px;text-decoration:none}.top{position:static}.top .wrap{gap:10px}.logo svg{width:64px;height:42px}.wordmark b{font-size:21px}nav.main a{padding:8px;font-size:15px}.tt{position:static}.branch-tabs{display:flex}.branches{grid-template-columns:1fr;justify-content:stretch}.branches[data-active="0"] .branch:not([data-b="0"]),.branches[data-active="1"] .branch:not([data-b="1"]),.branches[data-active="2"] .branch:not([data-b="2"]){display:none}.branch .grid{margin-inline:auto}.levelup b{font-size:44px}}@media (prefers-reduced-motion:no-preference){.wordmark b{animation:7s ease-in-out infinite shine}.hero h1 em{animation:5s ease-in-out infinite shine}.crest svg{animation:7s ease-in-out infinite bob}.crest .ring{animation:90s linear infinite spin}.class-tile:hover:after{animation:.8s ease-out sweep}.lbar.run i{animation:7s linear fill}.loading .lbar i{animation:1.2s ease-in-out infinite load}.flow{animation:1.2s linear infinite flow}.node{transition:box-shadow .15s,border-color .15s,transform .1s}.node:hover{transform:translateY(-1px)}.node.max{animation:2.4s ease-in-out infinite glow}}@media (prefers-reduced-motion:reduce){main.enter,.ach,.pop,.tt.swap,.flip{animation:none}}@keyframes enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes shine{0%,to{background-position:100% 0}50%{background-position:0 0}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes sweep{0%{left:-60%}to{left:130%}}@keyframes fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes load{0%{transform:translate(-100%)}to{transform:translate(300%)}}@keyframes flow{to{stroke-dashoffset:-16px}}@keyframes glow{0%,to{box-shadow:0 0 10px #e9b94973}50%{box-shadow:0 0 18px #ffd100cc}}@keyframes burst{0%{opacity:1;transform:translate(0)scale(1)}to{transform:translate(var(--x), var(--y)) scale(.2);opacity:0}}@keyframes ring{0%{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(1.6)}}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.5)}to{transform:scale(1)}}@keyframes ttIn{0%{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes flip{0%{opacity:.3;transform:rotateX(90deg)}to{opacity:1;transform:none}}@keyframes achIn{0%{opacity:0;transform:translateY(40px)scale(.9)}to{opacity:1;transform:none}}@keyframes achOut{to{opacity:0;transform:translateY(20px)}}@keyframes lvl{0%{opacity:0;transform:scale(.4)}15%{opacity:1;transform:scale(1.1)}25%{transform:scale(1)}80%{opacity:1}to{opacity:0;transform:translateY(-20px)}}@keyframes rays{0%{opacity:0;transform:scale(.3)rotate(0)}20%{opacity:1}to{opacity:0;transform:scale(1.1)rotate(40deg)}}html{-webkit-text-size-adjust:100%}body{margin:0}img{max-width:100%}[hidden]{display:none!important}.skip{z-index:100;background:var(--panel);color:var(--gold-hi);border:1px solid var(--gold);border-radius:4px;padding:10px 14px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}.seo-list{margin-top:28px}.seo-list h2{font:400 20px/1.2 var(--serif);color:var(--gold-hi);margin:0 0 8px}.seo-cols{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.seo-cols ul{columns:1;margin:0;padding-left:18px}.seo-cols li{margin:2px 0}.seo-cols a{color:var(--ink);border-bottom:1px dotted var(--gold-deep);text-decoration:none}.seo-cols a:hover{color:var(--gold-hi)}.consent .btns{flex-wrap:nowrap}.foot-links button{color:var(--gold-hi);font:400 14px/1.4 var(--serif);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.crumbs{font:13px/1.4 var(--mono);color:var(--muted);flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.crumbs a{color:var(--wind);text-decoration:none}@media (max-width:760px){.seo-cols{grid-template-columns:1fr}.consent{flex-wrap:wrap}}
