:root{--bg:#000;--panel:#0a0a0b;--panel2:#111113;--line:#1c1c1f;--line2:#2a2a2e;--fg:#ececee;--muted:#8b8b93;--dim:#55555c;--amber:#ffb000;--amber2:#ffcb5c;--amber-soft:#ffb0001a;--cyan:#5ad8f0;--green:#42d392;--violet:#a78bfa;--pink:#f472b6;--display:"Saira Condensed","Arial Narrow",sans-serif;--body:"IBM Plex Sans",system-ui,sans-serif;--mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;color-scheme:dark}*{box-sizing:border-box}html{background:#000}html,body{margin:0}body{background:0 0}html{scroll-behavior:smooth}body{color:var(--fg);font:15px/1.6 var(--body);flex-direction:column;min-height:100vh;display:flex;overflow-x:hidden}a{color:inherit}::selection{background:var(--amber);color:#000}:focus-visible{outline:2px solid var(--amber);outline-offset:3px;border-radius:2px}#stars{z-index:-1;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.glow-top{z-index:-1;pointer-events:none;background:radial-gradient(55% 40% at 80% -5%,#ffb00017,#0000 70%),radial-gradient(50% 45% at 0 100%,#5ad8f00f,#0000 70%);position:fixed;inset:0}.wrap{width:100%;max-width:1080px;margin:0 auto;padding:0 20px}main{flex:1}.top{justify-content:space-between;align-items:center;gap:16px;padding:20px 0;display:flex}.brand{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:11px;font-size:21px;font-weight:700;text-decoration:none;display:flex}.brand img{width:30px;height:30px;transition:transform .5s cubic-bezier(.2,.8,.2,1);display:block}.brand:hover img{transform:rotate(-8deg)scale(1.08)}.top .links{flex-wrap:wrap;gap:22px;font-size:14px;display:flex}.top .links a{color:var(--muted);padding:4px 0;text-decoration:none;position:relative}.top .links a:after{content:"";background:var(--amber);transform-origin:0;height:1px;transition:transform .3s;position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}.top .links a:hover{color:var(--fg)}.top .links a:hover:after,.top .links a[aria-current=page]:after{transform:scaleX(1)}.top .links a[aria-current=page]{color:var(--fg)}.eyebrow{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--amber);align-items:center;gap:10px;font-size:12px;display:flex}.eyebrow:before{content:"";background:var(--amber);width:28px;height:1px}.phead{border-bottom:1px solid var(--line);margin:40px 0 30px;padding-bottom:22px}.pcat{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dim);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.pcat a{color:var(--amber);text-decoration:none}.pcat a:hover{text-decoration:underline}.pcat i{color:var(--muted);margin:0 2px;font-style:normal}.pcat .ty{letter-spacing:.1em;border:1px solid;border-radius:999px;margin-left:6px;padding:1px 8px;font-size:11px}.pcat-top{margin:40px 0 14px}.phead h1{margin:12px 0}.pdesc{color:var(--muted);max-width:62ch;margin:0;font-size:17px;line-height:1.6}.ptags{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.tg span[data-tag]{cursor:pointer;transition:color .15s,border-color .15s}.tg span[data-tag]:hover,.ptags a:hover{color:var(--amber);border-color:var(--amber)}.ptags a{text-decoration:none}.tagchip{font-family:var(--mono);color:var(--amber)!important;border-color:var(--amber)!important}.tagchip:after{content:" ×";opacity:.7}.tg span:before,.ptags a:before{content:"#";color:var(--amber);opacity:.7}.crumb{font-family:var(--mono);color:var(--dim);margin:40px 0 8px;font-size:12.5px}.crumb a{color:var(--muted);text-decoration:none}.crumb a:hover{color:var(--amber)}h1{font-family:var(--display);letter-spacing:.005em;text-wrap:balance;margin:10px 0 16px;font-size:clamp(44px,7vw,80px);font-weight:700;line-height:.95}h1 em{color:var(--amber);font-style:normal}.lede{color:var(--muted);max-width:56ch;margin:0 0 8px;font-size:17px}h2.sec{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);align-items:center;gap:14px;margin:72px 0 20px;font-size:15px;font-weight:600;display:flex}h2.sec:after{content:"";background:linear-gradient(90deg,var(--line2),transparent);flex:1;height:1px}.hero{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:32px;min-height:min(78vh,720px);padding:24px 0 8px;display:grid}.hero h1{margin:18px 0;font-size:clamp(64px,11vw,140px);line-height:.86}.hero h1 .line{padding-bottom:.04em;display:block;overflow:hidden}.hero h1 .line span{display:inline-block}.roles{font-family:var(--mono);color:var(--muted);min-height:1.6em;margin:0 0 30px;font-size:15px}.roles b{color:var(--fg);font-weight:500}.roles .caret{background:var(--amber);vertical-align:-.2em;width:2px;height:1.1em;margin-left:2px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.cta{flex-wrap:wrap;gap:12px;display:flex}.btn{border:1px solid var(--line2);border-radius:999px;align-items:center;gap:8px;padding:12px 20px;font-size:14.5px;font-weight:600;text-decoration:none;transition:border-color .2s,background .2s,transform .2s,box-shadow .2s;display:inline-flex;position:relative;overflow:hidden}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--amber);color:#000;border-color:var(--amber);box-shadow:0 0 #ffb00080}.btn.primary:hover{box-shadow:0 10px 30px -8px #ffb00099}.btn.primary:after{content:"";background:linear-gradient(110deg,#0000 30%,#ffffff73 50%,#0000 70%);animation:4.5s ease-in-out 2.2s infinite shine;position:absolute;inset:0;transform:translate(-120%)}@keyframes shine{0%,70%{transform:translate(-120%)}to{transform:translate(120%)}}.btn.ghost:hover{border-color:var(--amber);background:var(--amber-soft)}.btn .arr{transition:transform .2s}.btn:hover .arr{transform:translate(3px)}.scroll-hint{justify-content:center;padding:8px 0 0;display:flex}.scroll-hint a{border:1px solid var(--line2);border-radius:14px;width:24px;height:38px;display:block;position:relative}.scroll-hint a:after{content:"";background:var(--amber);border-radius:2px;width:3px;height:7px;margin-left:-1.5px;animation:1.8s ease-in-out infinite wheel;position:absolute;top:8px;left:50%}@keyframes wheel{0%{opacity:0;transform:translateY(0)}30%{opacity:1}to{opacity:0;transform:translateY(12px)}}.orbit{aspect-ratio:1;justify-self:center;width:100%;max-width:440px;position:relative}.orbit svg{width:100%;height:100%;overflow:visible}.ring{fill:none;stroke:var(--line2);stroke-width:1px}.spin{transform-origin:200px 200px;transform-box:view-box;animation:48s linear infinite spin}.spin.r{animation-duration:30s;animation-direction:reverse}.spin.s{animation-duration:80s}@keyframes spin{to{transform:rotate(360deg)}}.planet-glow{transform-origin:200px 200px;transform-box:view-box;animation:5s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}.float{animation:9s ease-in-out infinite float}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.intro{opacity:0;animation:.9s cubic-bezier(.2,.8,.2,1) forwards rise;animation-delay:var(--d,0s);transform:translateY(18px)}.hero h1 .line span{animation:1s cubic-bezier(.2,.8,.2,1) forwards lineup;animation-delay:var(--d,0s);transform:translateY(105%)}@keyframes rise{to{opacity:1;transform:none}}@keyframes lineup{to{transform:none}}.orbit.intro{animation:1.6s cubic-bezier(.2,.8,.2,1) .25s forwards planetin;transform:scale(.85)rotate(-12deg)}@keyframes planetin{to{opacity:1;transform:none}}.reveal{opacity:0;transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1);transition-delay:var(--d,0s);transform:translateY(24px)}.reveal.in{opacity:1;transform:none}.grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}a.card{--mx:50%;--my:50%;background:var(--panel);border:1px solid var(--line);isolation:isolate;border-radius:10px;flex-direction:column;gap:12px;padding:24px;text-decoration:none;transition:border-color .25s,transform .25s,box-shadow .25s;display:flex;position:relative;overflow:hidden}a.card:before{content:"";z-index:-1;opacity:0;background:radial-gradient(420px circle at var(--mx) var(--my),#ffb0001f,transparent 45%);transition:opacity .3s;position:absolute;inset:0}a.card:hover{border-color:#ffb00073;transform:translateY(-4px);box-shadow:0 20px 40px -24px #ffb00059}a.card:hover:before{opacity:1}.card .top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.icon{background:var(--amber-soft);width:46px;height:46px;color:var(--amber);border:1px solid #ffb0004d;border-radius:10px;place-items:center;display:grid}.icon svg{width:24px;height:24px}.count{font-family:var(--mono);color:var(--muted);font-size:12px}.count b{color:var(--amber);font-weight:600}.card h3{font-family:var(--display);letter-spacing:.02em;margin:6px 0 0;font-size:30px;font-weight:700;line-height:1}.card p{color:var(--muted);margin:0;font-size:14.5px}.go{color:var(--amber);align-items:center;gap:6px;margin-top:auto;padding-top:6px;font-size:14px;font-weight:600;display:flex}.go span{transition:transform .2s}a.card:hover .go span{transform:translate(5px)}.ls{flex-direction:column;display:flex}a.ent{border-top:1px solid var(--line);grid-template-columns:110px minmax(0,1fr) auto;align-items:baseline;gap:4px 22px;padding:20px 8px;text-decoration:none;transition:background .2s,padding .2s;display:grid;position:relative}.ls a.ent:last-child{border-bottom:1px solid var(--line)}a.ent:before{content:"";background:var(--amber);width:2px;transition:transform .25s;position:absolute;top:-1px;bottom:-1px;left:0;transform:scaleY(0)}a.ent:hover{background:linear-gradient(90deg,#ffb0000d,#0000 60%);padding-left:16px}a.ent:hover:before{transform:scaleY(1)}a.ent:hover .t{color:var(--amber)}.ent .d{font-family:var(--mono);color:var(--dim);font-size:12.5px}.ent .t{font-family:var(--display);letter-spacing:.02em;font-size:24px;font-weight:600;line-height:1.1;transition:color .2s}.ent .ty{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;border:1px solid;border-radius:999px;align-self:center;padding:2px 8px;font-size:11px}.ty.tool{color:var(--green)}.ty.note{color:var(--cyan)}.ty.post{color:var(--pink)}.ent .s{color:var(--muted);grid-column:2;font-size:14.5px}.ent .tg{flex-wrap:wrap;grid-column:2;gap:6px;margin-top:4px;display:flex}.ent .tg span,.ptags a{font-family:var(--mono);color:var(--dim);border:1px solid var(--line2);border-radius:999px;padding:1px 9px;font-size:11.5px}.ent .sx{display:none}.group{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--amber);margin:30px 0 8px;font-size:18px;font-weight:600}.empty{color:var(--dim);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 8px}.more{color:var(--amber);gap:6px;margin-top:18px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.more:hover span{transform:translate(4px)}.more span{transition:transform .2s}.search{border:1px solid var(--line2);background:var(--panel);border-radius:12px;align-items:center;gap:12px;margin:28px 0 14px;padding:13px 18px;transition:border-color .2s,box-shadow .2s;display:flex}.search:focus-within{border-color:var(--amber);box-shadow:0 0 0 4px #ffb0001f}.search svg{width:18px;height:18px;color:var(--muted);flex:none}.search input{min-width:0;color:var(--fg);font:inherit;caret-color:var(--amber);background:0 0;border:0;outline:none;flex:1;font-size:16px}.search kbd{font-family:var(--mono);color:var(--dim);border:1px solid var(--line2);border-radius:4px;padding:1px 6px;font-size:11px}.filters{flex-wrap:wrap;gap:8px;margin-bottom:22px;display:flex}.filters button{font:inherit;color:var(--muted);border:1px solid var(--line2);cursor:pointer;background:0 0;border-radius:999px;padding:5px 14px;font-size:13px;transition:all .2s}.filters button:hover{color:var(--fg);border-color:var(--muted)}.filters button[aria-pressed=true]{color:#000;background:var(--amber);border-color:var(--amber)}.filters .sep{background:var(--line2);width:1px;margin:0 4px}mark{color:var(--amber2);background:#ffb00038;border-radius:2px}.viewtog{border:1px solid var(--line2);border-radius:999px;flex:none;gap:2px;padding:2px;display:inline-flex}.viewtog button{width:30px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;transition:background .2s,color .2s;display:grid}.viewtog button:hover{color:var(--fg)}.viewtog button[aria-pressed=true]{background:var(--amber);color:#000}.viewtog svg{width:15px;height:15px}h2.sec .viewtog{letter-spacing:0;order:2}h2.sec:after{order:1}.listbar{justify-content:flex-end;margin:0 0 12px;display:flex}.filters .viewtog{margin-left:auto}.view-grid .ls{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px;display:grid}.view-grid a.ent{border:1px solid var(--line);background:var(--panel);border-radius:12px;grid-template-columns:auto minmax(0,1fr);grid-auto-rows:min-content;align-content:start;gap:10px;min-height:210px;padding:22px}.view-grid .ls a.ent:last-child{border-bottom:1px solid var(--line)}.view-grid a.ent:before{display:none}.view-grid a.ent:hover{background:var(--panel);border-color:#ffb00073;padding-left:22px;transform:translateY(-3px);box-shadow:0 18px 36px -24px #ffb00059}.view-grid .ent .ty{grid-area:1/1;justify-self:start}.view-grid .ent .d{grid-area:1/2;place-self:center end}.view-grid .ent .t{grid-column:1/-1;margin-top:4px;font-size:26px}.view-grid .ent .s,.view-grid .ent .tg{grid-column:1/-1}.view-grid .ent .tg{margin-top:auto;padding-top:6px}.searchbtn{font:inherit;color:var(--muted);background:var(--panel);border:1px solid var(--line2);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:5px 8px 5px 12px;font-size:13px;transition:border-color .2s,color .2s;display:inline-flex}.searchbtn:hover{color:var(--fg);border-color:var(--muted)}.searchbtn svg{width:15px;height:15px}.searchbtn kbd,.pal kbd{font-family:var(--mono);color:var(--dim);border:1px solid var(--line2);border-radius:4px;padding:1px 5px;font-size:10.5px}.navright{flex-wrap:wrap;align-items:center;gap:22px;display:flex}.pal-wrap{z-index:100;-webkit-backdrop-filter:blur(6px);background:#000000b8;justify-content:center;align-items:flex-start;padding:12vh 16px 16px;display:none;position:fixed;inset:0}.pal-wrap.open{animation:.18s ease-out fadein;display:flex}@keyframes fadein{0%{opacity:0}}.pal{border:1px solid var(--line2);background:#0b0b0d;border-radius:14px;width:100%;max-width:640px;animation:.22s cubic-bezier(.2,.8,.2,1) popin;overflow:hidden;box-shadow:0 30px 80px -20px #000000e6,0 0 0 1px #ffb00014}@keyframes popin{0%{opacity:0;transform:translateY(-10px)scale(.98)}}.pal-in{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:16px 18px;display:flex}.pal-in svg{width:19px;height:19px;color:var(--amber);flex:none}.pal-in input{min-width:0;color:var(--fg);font:inherit;caret-color:var(--amber);background:0 0;border:0;outline:none;flex:1;font-size:17px}.pal-res{max-height:min(60vh,460px);padding:8px;overflow-y:auto}.pal-res a{border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:2px 12px;padding:10px 12px;text-decoration:none;display:grid}.pal-res a[aria-selected=true]{background:var(--amber-soft);box-shadow:inset 0 0 0 1px #ffb00059}.pal-res .pi{background:var(--panel2);width:30px;height:30px;color:var(--muted);border-radius:8px;grid-row:1/3;place-items:center;display:grid}.pal-res .pi svg{width:16px;height:16px}.pal-res a[aria-selected=true] .pi{color:var(--amber)}.pal-res .pt{font-size:15px;font-weight:600}.pal-res .ps{color:var(--dim);white-space:nowrap;text-overflow:ellipsis;grid-column:2;font-size:12.5px;overflow:hidden}.pal-res .pk{font-family:var(--mono);color:var(--dim);text-transform:uppercase;letter-spacing:.08em;grid-area:1/3/3;font-size:11px}.pal-head{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dim);padding:10px 12px 4px;font-size:11px}.pal-empty{text-align:center;color:var(--dim);padding:28px 12px}.pal-foot{border-top:1px solid var(--line);color:var(--dim);gap:16px;padding:10px 18px;font-size:12px;display:flex}.pal-foot span{align-items:center;gap:6px;display:inline-flex}article{max-width:70ch;padding-bottom:72px}article h1{font-size:clamp(40px,6vw,64px)}article .body{color:#cfcfd4;font-size:17px;line-height:1.75}article .body h2{font-family:var(--display);letter-spacing:.02em;color:var(--fg);margin:44px 0 8px;font-size:28px;font-weight:700}article .body a{color:var(--amber);text-underline-offset:3px;text-decoration-color:#ffb00066}article .body code{font-family:var(--mono);background:var(--panel2);border:1px solid var(--line2);color:var(--amber2);border-radius:4px;padding:1px 6px;font-size:.84em}article .body pre{font-family:var(--mono);background:var(--panel);border:1px solid var(--line);color:var(--fg);border-radius:10px;padding:16px 18px;font-size:13.5px;line-height:1.6;overflow-x:auto}article .body pre code{color:inherit;background:0 0;border:0;padding:0}article .body blockquote{border-left:3px solid var(--amber);color:var(--muted);margin:28px 0;padding:4px 0 4px 18px}footer{border-top:1px solid var(--line);color:var(--dim);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:56px;padding:24px 0 36px;font-size:12.5px;display:flex}footer .live{color:var(--green)}@media (width<=860px){.hero{grid-template-columns:1fr;min-height:0;padding-top:8px}.orbit{order:-1;max-width:280px}.scroll-hint{display:none}}@media (width>=641px) and (width<=1100px){.searchbtn kbd{display:none}.top .links{gap:16px}.navright{gap:14px}}@media (width<=640px){.top{flex-wrap:wrap;row-gap:10px}.brand{white-space:nowrap;font-size:19px}.top .links{gap:16px;font-size:13.5px}.navright{justify-content:space-between;gap:12px;width:100%}.searchbtn kbd,.pal-foot{display:none}.pal-wrap{padding-top:8vh}a.ent{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px}.ent .d{grid-area:1/1}.ent .ty{grid-area:1/2}.ent .t,.ent .s,.ent .tg{grid-column:1/-1}}.gcover{width:100%;height:100%;display:block}a.gcard{padding-top:0}.gc-art{border-bottom:1px solid var(--line);height:170px;margin:0 -24px 6px;position:relative;overflow:hidden}.gc-art .gcover{transition:transform .6s cubic-bezier(.2,.8,.2,1)}a.gcard:hover .gc-art .gcover{transform:scale(1.06)}.gc-art:after{content:"";background:linear-gradient(180deg,transparent 55%,var(--panel));position:absolute;inset:0}.gc-art .count{z-index:1;border:1px solid var(--line2);backdrop-filter:blur(4px);background:#0009;border-radius:999px;padding:3px 10px;position:absolute;top:12px;right:14px}.gc-ship{animation:9s ease-in-out infinite alternate gc-drift}@keyframes gc-drift{to{transform:translate(415px,123px)rotate(-18deg)}}.ghero{border:1px solid var(--line);border-radius:14px;align-items:flex-end;min-height:260px;margin:6px 0 26px;display:flex;position:relative;overflow:hidden}.ghero .gcover{position:absolute;inset:0}.ghero:after{content:"";background:linear-gradient(90deg,#000000d9 0%,#00000073 55%,#0000),linear-gradient(#0000 40%,#000000b3);position:absolute;inset:0}.ghero-txt{z-index:1;max-width:720px;padding:28px 28px 24px;position:relative}.ghero h1{margin:0 0 10px}.ghero .lede{margin:0}.cv{z-index:0;pointer-events:none;width:min(46%,460px);color:var(--c);opacity:.45;background:radial-gradient(circle at 78% 50%,color-mix(in srgb,var(--c) 20%,transparent),transparent 60%);transition:opacity .25s;display:block;position:absolute;top:0;bottom:0;right:0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 55%);mask-image:linear-gradient(90deg,#0000,#000 55%)}.cv svg{width:100%;height:100%;display:block}.cv-m{filter:drop-shadow(0 0 5px var(--c))}.cv-l .cv-sh{transform:translate(156px)}a.ent>:not(.cv){z-index:1;position:relative}a.ent:hover .cv{opacity:.8}a.ent{grid-template-columns:88px minmax(0,1fr) auto}.ent .d{font-size:11.5px}.view-grid .ent .cv{z-index:auto;opacity:1;width:auto;position:relative;-webkit-mask-image:none;mask-image:none}.view-grid .cv-l .cv-sh{transform:none}@media (width<=640px){.cv{opacity:.45;width:70%}}.cv{--c:var(--amber)}.view-grid a.ent{overflow:hidden}.view-grid .ent .cv{height:110px;color:var(--c);border:0;border-bottom:1px solid var(--line);background:radial-gradient(circle at var(--gx,76%) 50%,color-mix(in srgb,var(--c) 24%,transparent),transparent 55%),radial-gradient(circle at 10% 0%,#ffb0001a,transparent 50%),#030304;border-radius:0;grid-area:1/1/auto/-1;align-self:stretch;margin:-22px -22px 6px;display:block}.view-grid .ent .cv svg{width:100%;height:100%;display:block}.view-grid .ent .cv-m{filter:drop-shadow(0 0 6px var(--c))}.view-grid .ent .ty,.view-grid .ent .d{grid-row:2}.gc-icon{z-index:1;backdrop-filter:blur(4px);background:#0000008c;position:absolute;bottom:16px;left:18px}.sc-float{animation:6s ease-in-out infinite alternate sc-float}@keyframes sc-float{to{translate:0 -6px}}.sc-caret{animation:1.1s step-end infinite sc-blink}@keyframes sc-blink{50%{opacity:0}}.sc-pulse{transform-origin:350px 150px;animation:2.4s ease-out infinite sc-pulse}@keyframes sc-pulse{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(1.8)}}.sc-lap{animation:5s linear infinite sc-lap}@keyframes sc-lap{to{stroke-dashoffset:-1420px}}.hmenu{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hmenu a{border:1px solid var(--line2);min-height:38px;font-family:var(--display);letter-spacing:.03em;color:var(--fg);background:#0a0a0bb3;border-radius:999px;align-items:center;gap:7px;padding:0 16px;font-size:16px;font-weight:600;text-decoration:none;transition:color .2s,border-color .2s,background .2s,transform .2s;display:inline-flex}.hmenu .hbr{flex-basis:100%;height:0}.hmenu a:hover{color:var(--amber);border-color:var(--amber);background:#ffb00014;transform:translateY(-1px)}.hmenu a:first-child{border-color:#ffb00080}.stats{border:1px solid var(--line2);background:#0a0a0bb3;border-radius:12px;flex-wrap:wrap;margin:30px 0 0;padding:0;display:inline-flex;overflow:hidden}.stats div{border-left:1px solid var(--line2);padding:10px 16px}.stats div:first-child{border-left:0}.stats dt{font-family:var(--display);color:var(--fg);font-size:24px;font-weight:700;line-height:1}.stats div:first-child dt{color:var(--amber)}.stats dd{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:4px 0 0;font-size:10.5px}.feat .ls{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width>=1000px){.feat .ls{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=560px){.feat .ls{grid-template-columns:minmax(0,1fr)}}.feat a.ent{min-height:0}.feat .ent .s{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.feat .ent .tg{display:none}@media (width<=640px){.gc-art{height:140px}.ghero{min-height:220px}.ghero-txt{padding:20px 18px 18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.intro,.reveal,.hero h1 .line span,.orbit.intro{opacity:1!important;transform:none!important}}[hidden]{display:none!important}article .body pre.astro-code{border-left:3px solid var(--amber);background:var(--panel)!important}article .body a{word-break:break-word}article .body :not(pre)>code{overflow-wrap:anywhere}.series{border:1px solid var(--line2);background:var(--panel);border-radius:12px;margin:0 0 22px;overflow:hidden}.series summary{cursor:pointer;font-family:var(--display);letter-spacing:.02em;flex-wrap:wrap;align-items:center;gap:10px;padding:14px 18px;font-size:19px;font-weight:600;list-style:none;display:flex}.series summary::-webkit-details-marker{display:none}.series summary:after{content:"▾";color:var(--muted);margin-left:auto;transition:transform .2s}.series:not([open]) summary:after{transform:rotate(-90deg)}.series-label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#000;background:var(--amber);border-radius:999px;padding:2px 9px;font-size:11px}.series-count{font-family:var(--mono);color:var(--muted);letter-spacing:0;font-size:12px;font-weight:400}.series ol{color:var(--muted);margin:0;padding:4px 18px 16px 40px}.series li{padding:3px 0;font-size:14.5px}.series li a{color:var(--fg);text-decoration:none}.series li a:hover{color:var(--amber)}.series li.here{color:var(--amber);font-weight:600}.toc{border-left:2px solid var(--line2);margin:0 0 30px;padding:2px 0 2px 16px}.toc b{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--dim);font-size:11.5px;font-weight:500}.toc ol{columns:2;column-gap:28px;margin:8px 0 0;padding-left:18px}.toc li{break-inside:avoid;color:var(--dim);padding:2px 0;font-size:14px}.toc a{color:var(--muted);text-decoration:none}.toc a:hover{color:var(--amber)}@media (width<=640px){.toc ol{columns:1}}.pager{grid-template-columns:1fr 1fr;gap:14px;margin-top:48px;display:grid}.pager a{border:1px solid var(--line2);background:var(--panel);border-radius:12px;flex-direction:column;gap:4px;padding:16px 18px;text-decoration:none;transition:border-color .2s,transform .2s;display:flex}.pager a:hover{border-color:var(--amber);transform:translateY(-2px)}.pager small{font-family:var(--mono);color:var(--dim);letter-spacing:.06em;font-size:11.5px}.pager span{font-family:var(--display);font-size:19px;font-weight:600}.pager .next{text-align:right;grid-column:2}article .body table{border-collapse:collapse;width:100%;margin:20px 0;font-size:14.5px;display:block;overflow-x:auto}article .body th,article .body td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:9px 12px}article .body th{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom-color:var(--line2);font-size:11.5px;font-weight:500}article .body td code{white-space:nowrap}article .body h3{font-family:var(--display);color:var(--fg);margin:30px 0 6px;font-size:21px;font-weight:600}article .body ol li,article .body ul li{margin:6px 0}.eve-kit{grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:10px;margin:20px 0;display:grid}.eve-kit>div,.eve-ship{background:var(--panel);border:1px solid var(--line);border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 14px;padding:12px 14px;transition:border-color .2s;display:grid}.eve-kit>div:hover,.eve-ship:hover{border-color:var(--line2)}.eve-kit img{background:var(--panel2);border:1px solid var(--line2);border-radius:6px;grid-row:1/3;width:44px;height:44px}.eve-kit b,.eve-ship b{font-family:var(--display);color:var(--fg);font-size:17px;font-weight:600;line-height:1.2}.eve-kit span,.eve-ship span{color:var(--muted);font-size:13.5px;line-height:1.45}.eve-ships{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:12px;margin:20px 0;display:grid}.eve-ship{background:radial-gradient(120% 140% at 0% 50%,var(--amber-soft),transparent 60%),var(--panel);gap:16px;margin:20px 0}.eve-ships .eve-ship{margin:0}.eve-ship img{object-fit:cover;border:1px solid var(--line2);background:var(--bg);border-radius:8px;width:112px;height:112px}.eve-ship div{flex-direction:column;gap:4px;display:flex}.eve-ship b{font-size:24px}@media (width<=420px){.eve-ship img{width:84px;height:84px}}.code-wrap{margin:18px 0;position:relative}.code-wrap pre{margin:0!important;padding-top:34px!important}.code-lang{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dim);pointer-events:none;font-size:10.5px;position:absolute;top:9px;left:16px}.copy-btn{font:500 12px var(--body);color:var(--muted);background:var(--panel2);border:1px solid var(--line2);cursor:pointer;opacity:.75;border-radius:999px;align-items:center;gap:6px;padding:3px 10px 3px 8px;transition:opacity .2s,color .2s,border-color .2s,background .2s;display:inline-flex;position:absolute;top:7px;right:8px}.copy-btn svg{width:13px;height:13px}.code-wrap:hover .copy-btn,.copy-btn:focus-visible{opacity:1}.copy-btn:hover{color:var(--fg);border-color:var(--amber)}.copy-btn.done{color:#000;background:var(--green);border-color:var(--green);opacity:1}@media (hover:none){.copy-btn{opacity:1}}@media (pointer:coarse){.top .links a{padding:10px 0}.searchbtn{min-height:40px}.filters button{min-height:36px}.viewtog button{width:40px;height:34px}.crumb a{padding:6px 0;display:inline-block}.copy-btn{min-height:30px}.toc li,.series li{padding:6px 0}input,select,textarea{font-size:16px}}.wrap{max-width:1600px;padding:0 clamp(20px,4vw,64px)}.home-sections{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}@media (width>=1280px){.hero{gap:64px}.hero h1{font-size:clamp(140px,10vw,190px)}.orbit{max-width:600px}}article{max-width:780px}article .body h2,article .body h3{scroll-margin-top:96px}@media (width>=1180px){article.has-toc{grid-template-columns:minmax(0,780px) 260px;column-gap:clamp(48px,6vw,110px);max-width:none;display:grid}article.has-toc>*{grid-column:1;min-width:0}article.has-toc>.phead{grid-column:1/-1}article.has-toc>.toc{grid-area:2/2/span 40;align-self:start;max-height:calc(100vh - 130px);margin:4px 0 0;position:sticky;top:96px;overflow:auto}article.has-toc .toc ol{columns:1}}.toc li{position:relative}.toc a{transition:color .2s}.toc a.on{color:var(--amber)}.toc a.on:before{content:"";background:var(--amber);width:2px;box-shadow:0 0 8px var(--amber);position:absolute;top:3px;bottom:3px;left:-36px}@media (width>=641px){.top{z-index:50;transition:padding .3s;position:sticky;top:0}.navbg{height:var(--navh,0px);z-index:49;pointer-events:none;backdrop-filter:blur(12px);border-bottom:1px solid var(--line);opacity:0;background:#000000b8;transition:opacity .3s;position:fixed;top:0;left:0;right:0}.scrolled .top{padding:10px 0}.scrolled .navbg{opacity:1}}.navbg{display:none}@media (width>=641px){.navbg{display:block}}.progress{z-index:60;pointer-events:none;background:linear-gradient(90deg,var(--amber),var(--amber2));transform-origin:0;height:2px;transform:scaleX(var(--p,0));position:fixed;top:0;left:0;right:0;box-shadow:0 0 10px #ffb00099}.totop{z-index:55;border:1px solid var(--line2);backdrop-filter:blur(6px);width:44px;height:44px;color:var(--fg);cursor:pointer;opacity:0;pointer-events:none;background:#0a0a0bd9;border-radius:50%;place-items:center;transition:opacity .3s,transform .3s,border-color .2s,color .2s;display:grid;position:fixed;bottom:clamp(14px,3vw,32px);right:clamp(14px,3vw,32px);transform:translateY(14px)scale(.9)}.totop.on{opacity:1;pointer-events:auto;transform:none}.totop:hover{border-color:var(--amber);color:var(--amber)}.totop svg{width:18px;height:18px}.reveal{filter:blur(5px);transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1),filter .8s cubic-bezier(.2,.8,.2,1);transition-delay:var(--d,0s)}.reveal.in{filter:none}.view-grid a.ent.reveal.in{transition:opacity .8s,transform .25s,border-color .25s,box-shadow .25s,filter .8s}h2.sec.reveal:after{transform-origin:0;transition:transform 1.2s cubic-bezier(.2,.8,.2,1) .25s;transform:scaleX(0)}h2.sec.reveal.in:after{transform:none}.hero .orbit{translate:0 calc(var(--sy,0) * .22px)}.hero>div:first-child{translate:0 calc(var(--sy,0) * .07px);opacity:calc(1 - var(--sy,0) / 900)}.scroll-hint a{opacity:calc(1 - var(--sy,0) / 160)}.ghero .gcover{scale:1.15;translate:0 min(calc(var(--sy,0) * .1px),18px)}@media (prefers-reduced-motion:reduce){.reveal{filter:none!important}h2.sec.reveal:after{transform:none!important}}.ent .go{display:none}.view-grid .ent .go{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;grid-column:1/-1;align-items:center;gap:8px;font-size:11.5px;display:flex}.ent .go svg{width:14px;height:14px;transition:transform .25s}a.ent:hover .go svg{transform:translate(4px)}.view-grid .ent .tg{margin-top:0}.view-grid .ent .go,.view-grid .ent .tg+.go{margin-top:auto}.view-grid a.ent[data-type=tool]{border-top:2px solid color-mix(in srgb,var(--green) 55%,transparent)}.view-grid a.ent[data-type=tool] .go{color:var(--green);background:color-mix(in srgb,var(--green) 6%,transparent);border-top:1px solid var(--line);justify-content:space-between;margin:8px -22px -22px;padding:13px 22px;transition:background .25s}.view-grid a.ent[data-type=tool]:hover{border-color:color-mix(in srgb,var(--green) 55%,transparent);box-shadow:0 18px 36px -24px color-mix(in srgb,var(--green) 45%,transparent)}.view-grid a.ent[data-type=tool]:hover .go{background:color-mix(in srgb,var(--green) 14%,transparent)}.view-grid a.ent[data-type=tool]:hover .t{color:var(--green)}.view-grid a.ent:not([data-type=tool]){--k:var(--cyan);background:linear-gradient(90deg,color-mix(in srgb,var(--k) 5%,transparent),transparent 40%),var(--panel);min-height:0;padding-left:26px}.view-grid a.ent[data-type=post]{--k:var(--pink)}.view-grid a.ent:not([data-type=tool]):before{background:var(--k);opacity:.7;width:3px;display:block;top:0;bottom:0;transform:none}.view-grid a.ent:not([data-type=tool]):hover{border-color:color-mix(in srgb,var(--k) 45%,transparent);box-shadow:0 18px 36px -24px color-mix(in srgb,var(--k) 40%,transparent);padding-left:26px}.view-grid a.ent:not([data-type=tool]):hover .t{color:var(--k)}.view-grid a.ent:not([data-type=tool]) .cv{opacity:.35;background:radial-gradient(circle at 70% 40%,color-mix(in srgb,var(--c) 18%,transparent),transparent 65%);border:0;grid-area:auto;width:55%;height:auto;margin:0;position:absolute;inset:0 0 0 auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 60%);mask-image:linear-gradient(90deg,#0000,#000 60%)}.view-grid a.ent:not([data-type=tool]):hover .cv{opacity:.6}.view-grid a.ent:not([data-type=tool]) .ty,.view-grid a.ent:not([data-type=tool]) .d{grid-row:1}.view-grid a.ent:not([data-type=tool]) .go{color:var(--k);padding-top:10px}.view-grid .ls-guides{grid-template-columns:repeat(auto-fill,minmax(min(440px,100%),1fr))}.view-grid a.ent:not([data-type=tool]){grid-template-rows:auto auto auto auto 1fr}.view-grid a.ent:not([data-type=tool]) .go{align-self:end}.view-grid a.ent:not([data-type=tool]) .cv-l .cv-sh{transform:translate(156px)}.view-grid a.ent:not([data-type=tool]) .cv{-webkit-mask-composite:source-in;width:min(300px,65%);height:110px;top:6px;bottom:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 60%),linear-gradient(#000 60%,#0000);mask-image:linear-gradient(90deg,#0000,#000 60%),linear-gradient(#000 60%,#0000);mask-composite:intersect}.ded-grid{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:10px;margin:14px 0 30px;display:grid}article .body a.ded{background:var(--panel);border:1px solid var(--line);color:var(--fg);border-radius:10px;grid-template-columns:28px minmax(0,1fr);align-content:start;gap:2px 12px;padding:12px 14px;text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s;display:grid}article .body a.ded:hover{border-color:#ffb00073;transform:translateY(-2px);box-shadow:0 14px 28px -22px #ffb00066}a.ded img{border-radius:6px;grid-row:1/3;align-self:center;width:28px;height:28px;margin:0}a.ded b{font-family:var(--display);color:var(--fg);font-size:17px;font-weight:600;line-height:1.2}a.ded small{font-family:var(--mono);color:var(--muted);font-size:11.5px}a.ded span{color:var(--muted);grid-column:1/-1;grid-template-columns:58px minmax(0,1fr);gap:8px;font-size:13px;line-height:1.45;display:grid}a.ded img+b+small+span{border-top:1px solid var(--line);margin-top:8px;padding-top:8px}a.ded i{font-style:normal;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--amber);padding-top:2px;font-size:10px}a.ded em{color:var(--fg);font-style:normal}article .body td .ded-i{vertical-align:middle;border-radius:4px;width:22px;height:22px;margin:0 2px 0 0;display:inline-block}.ded-fac{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr))}div.ded{background:var(--panel);border:1px solid var(--line);border-radius:10px;grid-template-columns:28px minmax(0,1fr);align-content:start;gap:2px 12px;padding:12px 14px;display:grid}div.ded img{border-radius:6px;grid-row:1/3;align-self:center;width:28px;height:28px;margin:0}div.ded b{font-family:var(--display);color:var(--fg);font-size:17px;font-weight:600;line-height:1.2}div.ded small{font-family:var(--mono);color:var(--muted);font-size:11.5px}div.ded>span{color:var(--muted);grid-column:1/-1;grid-template-columns:58px minmax(0,1fr);gap:8px;font-size:13px;line-height:1.45;display:grid}div.ded img+b+small+span{border-top:1px solid var(--line);margin-top:8px;padding-top:8px}div.ded i{font-style:normal;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--amber);padding-top:2px;font-size:10px}div.ded em{color:var(--fg);font-style:normal}.ded-bps{flex-wrap:wrap;gap:4px 12px;display:flex}.ded-bp{color:var(--fg);align-items:center;gap:6px;display:inline-flex}article .body .ded-bp img{border-radius:4px;width:20px;height:20px;margin:0;display:block}a.ded>span,div.ded>span{color:var(--muted);padding-left:66px;font-size:13px;line-height:1.5;display:block}a.ded>span>i,div.ded>span>i{vertical-align:1px;width:58px;margin-left:-66px;margin-right:8px;padding-top:0;display:inline-block}div.ded .ded-bps{display:inline-flex}.acct{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));align-items:start;gap:18px;margin:0 0 60px;display:grid}.acard{background:var(--panel);border:1px solid var(--line);border-radius:16px;min-width:0;padding:22px}.acard-wide{flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:14px;display:flex}.acard h2{margin:0 0 16px;font-size:24px}.acct-note{color:var(--muted);margin:0;font-size:15px}.acard h2+.acct-note{margin:-8px 0 8px;font-size:13.5px}.aprof{align-items:flex-start;gap:18px;min-width:0;display:flex}.aprof img,.aprof .ph{border:1px solid var(--line2);object-fit:cover;background:var(--panel2);border-radius:12px;flex:none;width:96px;height:96px}.aprof .ph{font:600 34px/1 var(--display);color:var(--amber);place-items:center;display:grid}.aprof .who{min-width:0}.aprof .nm{font:700 30px/1.1 var(--display);overflow-wrap:anywhere;margin-bottom:8px}.ameta{grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:13.5px;display:grid}.ameta dt{font:500 11px/1.9 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--amber)}.ameta dd{color:var(--muted);overflow-wrap:anywhere;margin:0}.aact{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.alink{border-top:1px solid var(--line);align-items:center;gap:12px;padding:12px 0;display:flex}.alink .pv{flex:1;min-width:0}.alink .pv b{font-weight:600;display:block}.alink .pv span{color:var(--dim);overflow-wrap:anywhere;font-size:13px;display:block}.alink.on .pv span{color:var(--muted)}.alink.on .pv b:after{content:"";background:var(--green);vertical-align:2px;border-radius:50%;width:7px;height:7px;margin-left:8px;display:inline-block}.abtn{border:1px solid var(--line2);background:var(--panel2);min-height:36px;color:var(--fg);font:500 13.5px/1 var(--body);cursor:pointer;border-radius:999px;padding:0 16px;transition:border-color .2s,color .2s}.abtn:hover:not(:disabled){border-color:var(--amber);color:var(--amber)}.abtn:disabled{opacity:.45;cursor:not-allowed}.abtn.danger:hover:not(:disabled){border-color:var(--pink);color:var(--pink)}.amsg{min-height:1.4em;color:var(--muted);margin:10px 0 0;font-size:13.5px}@media (pointer:coarse){.abtn{min-height:40px}}@media (width<=420px){.aprof{flex-direction:column}.aprof img,.aprof .ph{width:80px;height:80px}}.brand{white-space:nowrap}.top .le-acct-btn.in{padding:3px}.top .le-acct-btn.in .le-nm{display:none}.hmenu .le-acct-btn{min-height:38px}.ent .t .lock{border:1px solid var(--line2);font:500 10.5px/1.6 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--amber);vertical-align:3px;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;margin-left:8px;padding:1px 7px;display:inline-flex}.ent .t .lock svg{width:10px;height:10px}.pcat .ty.lock{color:var(--amber)}.social{border-top:1px solid var(--line);margin-top:48px;padding-top:24px}.social[hidden]{display:none}.rx{flex-wrap:wrap;gap:8px;display:flex}.rx button{border:1px solid var(--line2);background:var(--panel);min-height:36px;color:var(--muted);font:500 13.5px/1 var(--body);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:0 14px;transition:color .2s,border-color .2s,background .2s;display:inline-flex}.rx button .ic{font:600 13px/1 var(--mono);color:var(--dim)}.rx button b{font:600 12.5px/1 var(--mono);color:var(--fg)}.rx button:hover{color:var(--fg);border-color:#ffb00080}.rx button[aria-pressed=true]{border-color:var(--amber);background:var(--amber-soft);color:var(--amber)}.rx button[aria-pressed=true] .ic,.rx button[aria-pressed=true] b{color:var(--amber)}.rx button:focus-visible,.cm button:focus-visible,.cm textarea:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.cm{margin-top:36px;scroll-margin-top:96px}.cm h2{font-family:var(--display);letter-spacing:.02em;margin:0 0 14px;font-size:28px;font-weight:700}.cm h2 .n{font:500 15px/1 var(--mono);color:var(--dim);letter-spacing:0}.cm-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.cmt{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px 16px;scroll-margin-top:96px}.cmt:target{border-color:var(--amber)}.cmt.hid{opacity:.6;border-style:dashed}.cm-meta{font:500 12px/1.3 var(--mono);color:var(--dim);flex-wrap:wrap;align-items:center;gap:4px 10px;margin-bottom:8px;display:flex}.cm-meta .av{object-fit:cover;background:var(--panel2);border-radius:50%;flex:none;width:28px;height:28px}.cm-meta .av.ph{border:1px solid var(--line2);color:var(--amber);font:600 12px/1 var(--mono);place-items:center;display:inline-grid}.cm-meta .who{font:600 14px/1.2 var(--body);color:var(--fg);overflow-wrap:anywhere}.cm-meta .at{color:var(--dim);text-decoration:none}.cm-meta .at:hover{color:var(--muted)}.cm-meta .ed{font-style:italic}.cm-meta .hb{border:1px solid var(--line2);color:var(--pink);text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:1px 7px;font-size:10.5px}.cm-body{color:#cfcfd4;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15.5px;line-height:1.65}.cm-body a{color:var(--amber);text-underline-offset:3px;text-decoration-color:#ffb00066}.cm-acts{flex-wrap:wrap;gap:2px;margin:4px 0 -6px -10px;display:flex}.cm-acts button,.cm-row button{min-height:32px;color:var(--muted);font:500 13px/1 var(--body);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:0 10px}.cm-acts button:hover,.cm-row button:hover{color:var(--fg);border-color:var(--line2)}.cm-acts button:disabled,.cm-row button:disabled{opacity:.45;cursor:not-allowed}.cm-note{color:var(--muted);margin:4px 0 0;font-size:14.5px}.cm-note[hidden]{display:none}.cm-form{margin-top:18px}.cm-ed{flex-direction:column;gap:8px;display:flex}.cm-ed textarea{box-sizing:border-box;resize:vertical;border:1px solid var(--line2);background:var(--bg);width:100%;min-height:104px;color:var(--fg);font:400 16px/1.55 var(--body);border-radius:10px;padding:12px 14px}.cm-ed textarea:focus{border-color:var(--amber);outline:none}.cm-row{justify-content:flex-end;align-items:center;gap:8px;display:flex}.cm-row .left{font:500 12px/1 var(--mono);color:var(--dim);margin-right:auto}.cm-row button.pri,.cm-signin{border:1px solid var(--amber);background:var(--amber);color:#000;min-height:40px;font:600 14px/1 var(--body);cursor:pointer;border-radius:10px;padding:0 18px}.cm-row button.pri:hover{color:#000;border-color:var(--amber2);background:var(--amber2)}.cm-signin{background:var(--panel2);color:var(--fg);border-color:var(--line2)}.cm-signin:hover{border-color:var(--amber)}.cm-msg{min-height:1.2em;color:var(--muted);margin:0;font-size:13.5px}.cm-msg.err{color:#f87171}@media (pointer:coarse){.cm-acts button,.cm-row button{min-height:40px}}@media (prefers-reduced-motion:reduce){.rx button{transition:none}}.pcat .views[hidden]{display:none}.pcat .views:before{content:"·";color:var(--line2);margin-right:8px}.chap{counter-increment:chap}body[data-section=learn] .chap{margin-top:34px}body[data-section=learn] .chap>.group{align-items:baseline;gap:12px;margin:0 0 8px;padding:12px 0;display:flex;position:relative}body[data-section=learn] .chap>.group:before{content:counter(chap,decimal-leading-zero);font:500 12px/1 var(--mono);letter-spacing:.12em;color:var(--dim)}body[data-section=learn] .chap>.group:after{content:"";background:var(--line);transform-origin:0;height:1px;position:absolute;bottom:0;left:0;right:0}@media (width>=641px){body[data-section=learn] .chap>.group{top:calc(var(--navh,64px) - 1px);z-index:5;background:linear-gradient(#000 78%,#0000);position:sticky}.kbbar{top:calc(var(--navh,64px) - 1px);z-index:5;background:linear-gradient(#000 82%,#0000);margin:0 -12px;padding:2px 12px 1px;position:sticky}.kbbar .search{margin-top:20px}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.hero>div:first-child,.hero .orbit,.home-sections>a.gcard,body[data-section=learn] :is(.phead,.chap>.group,.ls>a.ent),body[data-section=gaming] :is(.phead,.grid>a.gcard,.ghero,.ls>a.ent),body[data-section=kb] :is(.phead,.ls>a.ent){filter:none}:is(.home-sections>a.gcard,body[data-section=learn] :is(.phead,.chap>.group,.ls>a.ent),body[data-section=gaming] :is(.phead,.grid>a.gcard,.ghero,.ls>a.ent),body[data-section=kb] :is(.phead,.ls>a.ent)).reveal:not(.in){opacity:1;transform:none}.hero{overflow-x:clip}.hero .orbit{translate:none}.hero>div:first-child{animation:linear both le-hero-out scroll(root);animation-range:0 70vh}.hero .orbit>svg{animation:linear both le-planet scroll(root);animation-range:0 85vh}.home-sections{perspective:1400px}.home-sections>a.gcard{transform-origin:50% 100%;animation:linear both le-rise view();animation-range:entry}.home-sections>a.gcard:nth-child(4n+2){animation-range:entry 12%}.home-sections>a.gcard:nth-child(4n+3){animation-range:entry 24%}.home-sections>a.gcard:nth-child(4n+4){animation-range:entry 36%}body[data-section=learn] .phead{transform-origin:0 0;animation:linear both le-recede scroll(root);animation-range:0 320px}body[data-section=learn] .chap{view-timeline:--chap}body[data-section=learn] .chap>.group:after{background:var(--amber);animation:linear both le-fill --chap;animation-range:cover 10% contain;box-shadow:0 0 8px #ffb00080}body[data-section=learn] .ls{perspective:1600px}body[data-section=learn] .ls>a.ent{transform-origin:50% 100%;animation:linear both le-flip view();animation-range:entry}body[data-section=gaming] .phead{transform-origin:0 0;animation:linear both le-recede scroll(root);animation-range:0 320px}body[data-section=gaming] .grid>a.gcard{animation:linear both le-warp view();animation-range:entry cover 45%}body[data-section=gaming] .gc-art>.gcover{animation:linear both le-pan view();animation-range:cover}body[data-section=gaming] .ghero{view-timeline:--hero}body[data-section=gaming] .ghero .gcover{animation:linear both le-hero-bg --hero;animation-range:exit}body[data-section=gaming] .ghero .ghero-txt{animation:linear both le-hero-txt --hero;animation-range:exit exit 70%}body[data-section=gaming] .ls{overflow-clip-margin:28px;overflow-x:clip}body[data-section=gaming] .ls>a.ent{animation:linear both le-slide-l view();animation-range:entry}body[data-section=gaming] .ls>a.ent:nth-child(2n){animation-name:le-slide-r}body[data-section=kb] .phead{transform-origin:0 0;animation:linear both le-recede scroll(root);animation-range:0 260px}body[data-section=kb] .ls>a.ent{animation:linear both le-pop view();animation-range:entry}body[data-section=kb] .ls>a.ent:nth-child(3n+2){animation-range:entry 10%}body[data-section=kb] .ls>a.ent:nth-child(3n+3){animation-range:entry 20%}}}@keyframes le-hero-out{to{opacity:0;translate:0 -10vh;scale:.94}}@keyframes le-planet{to{opacity:0;translate:0 12vh;scale:1.45}}@keyframes le-rise{0%{opacity:0;translate:0 90px;rotate:x -22deg}to{opacity:1;translate:0;rotate:x 0deg}}@keyframes le-recede{to{opacity:.2;translate:0 -24px;scale:.94}}@keyframes le-fill{0%{scale:0 1}to{scale:1}}@keyframes le-flip{0%{opacity:0;translate:0 50px;rotate:x 26deg}to{opacity:1;translate:0;rotate:x 0deg}}@keyframes le-warp{0%{opacity:0;translate:0 70px;scale:.72}to{opacity:1;translate:0;scale:1}}@keyframes le-pan{0%{translate:0 -12px;scale:1.28}to{translate:0 12px;scale:1.06}}@keyframes le-hero-bg{0%{translate:0;scale:1.15}to{translate:0 22%;scale:1.3}}@keyframes le-hero-txt{to{opacity:0;translate:0 -36px}}@keyframes le-slide-l{0%{opacity:0;translate:-56px}to{opacity:1;translate:0}}@keyframes le-slide-r{0%{opacity:0;translate:56px}to{opacity:1;translate:0}}@keyframes le-pop{0%{opacity:0;translate:0 36px;scale:.88}to{opacity:1;translate:0;scale:1}}
