From a2f6c6e4d715c3ef476c3faa895cc5522cb8a161 Mon Sep 17 00:00:00 2001 From: "adamlui@protonmail.com" Date: Sun, 15 Dec 2024 01:17:21 -0800 Subject: [PATCH] Fixed contributors stopped rendering on chatgpt.js.org due to new weserv.nl restrictions --- docs/assets/js/min/onload-hacks.min.js | 2 +- docs/assets/js/src/onload-hacks.js | 10 ++++++++++ docs/assets/styles/css/style.min.css | 2 +- docs/assets/styles/scss/style.scss | 4 +++- 4 files changed, 15 insertions(+), 3 deletions(-) diff --git a/docs/assets/js/min/onload-hacks.min.js b/docs/assets/js/min/onload-hacks.min.js index 314093dee..23fd80ad8 100644 --- a/docs/assets/js/min/onload-hacks.min.js +++ b/docs/assets/js/min/onload-hacks.min.js @@ -1,3 +1,3 @@ -let taglineWords=[],features=[">> Feature-rich",">> Object-oriented",">> Easy-to-use",">> Lightweight (yet optimally performant)"],visibilityMap=[],sectionColors=["#64ffff","#f9ee16","lime","orange","#b981f9","#f581f9","#81f9c3"],iniStarZvelocity=window.starVelocity.z,warpDuration=1600,hiWarpDuration=1400,starResetDelay=15,mdLoaded=new Promise(resolve=>{new MutationObserver((mutationsList,observer)=>{document.querySelector("#shields")&&(observer.disconnect(),resolve())}).observe(document.body,{childList:!0,subtree:!0})}),iObserver=new IntersectionObserver(entries=>{entries.forEach(entry=>{var key=entry.target.id||entry.target.className;if(visibilityMap[key]=entry.isIntersecting,"cover-main"===entry.target.className)if(entry.isIntersecting){document.querySelector("#kudoai a").style.color="white",window.starColor="white",(document.querySelector("#scrollbar-style")||{}).innerText=":root { scrollbar-color: rgb(210,210,210) #1a1a1a }body::-webkit-scrollbar-thumb { background-color: white }";let kudo=document.querySelector(".kudo");kudo.classList.add("hover"),setTimeout(()=>{kudo.classList.remove("hover")},955),Array.from(document.querySelectorAll('span[id^="tagline"]')).forEach(span=>{span.textContent=""}),scrambleText([taglineWords[0]],document.querySelector("#tagline-pre-adj")),scrambleText(taglineWords[1],document.querySelector("#tagline-adj"),750),scrambleText([taglineWords[2]],document.querySelector("#tagline-post-adj")),randomizeCase(document.querySelector("#tagline-pre-adj")),randomizeCase(document.querySelector("#tagline-post-adj")),window.starVelocity.z<=iniStarZvelocity&&(window.starVelocity.z+=.024,setTimeout(()=>{window.starVelocity.z-=.02},1155),setTimeout(()=>{window.starVelocity.z=iniStarZvelocity},1355))}else clearTimeout(scrambleText.timeoutID);else"feature-list"===entry.target.id&&(entry.isIntersecting?typeText(features,entry.target,20):(entry.target.innerHTML="",clearTimeout(typeText.timeoutID)))})}),onLoadObserver=new MutationObserver(()=>{if(document.querySelector(".cover-main blockquote p")){if(smoothScroll(document,155,9),/#\/(?:\w{2}(?:-\w{2})?\/)?$/.test(location.hash)){isMobileDevice()||(document.body.className="ready close");var taglineSpans=Array.from(document.querySelectorAll('span[id^="tagline"]'));taglineSpans.map(span=>{taglineWords.push(/pre|post/.exec(span.id)?span.textContent:span.textContent.split("|"))}),taglineSpans.forEach(span=>{span.textContent=""}),iObserver.observe(document.querySelector(".cover-main"));let cover=document.querySelector(".cover"),topGradient=document.createElement("div");function updateTGvisibility(){topGradient.style.display=window.scrollY>.85*cover.offsetHeight?"":"none"}topGradient.classList.add("top-gradient"),document.body.append(topGradient),updateTGvisibility(),mdLoaded.then(()=>{navigator.userAgent.includes("Chrome")&&window.scrollBy(0,200),setTimeout(()=>window.scrollBy(0,-200),600),document.querySelector(".search").style.display="none",document.querySelector(".sidebar-nav").style.paddingTop="102px";var featureListDiv=document.querySelector("#feature-list")||document.createElement("div"),introDiv=(featureListDiv.parentElement||(featureListDiv.setAttribute("id","feature-list"),(introDiv=document.querySelector("#intro")).parentElement.insertBefore(featureListDiv,introDiv.nextElementSibling.nextElementSibling)),iObserver.observe(featureListDiv),document.querySelector("article")),featureListDiv=document.createElement("div"),introDiv=(featureListDiv.id="copyright-footer",featureListDiv.innerHTML='Copyright © 2023–'+(new Date).getFullYear()+' KudoAI.
Designed by Adam Lui / Powered by Docsify / Hosted by GitHub',introDiv.append(featureListDiv),document.querySelector('a[href*="/assets/10906554/f53c740f-d5e0-49b6-ae02-3b3140b0f8a4"]')),featureListDiv=document.createElement("iframe"),introDiv=(featureListDiv.setAttribute("width","855"),featureListDiv.setAttribute("height","455"),featureListDiv.setAttribute("src","https://www.youtube.com/embed/yG8DtsEo0PM?rel=0"),featureListDiv.allow="web-share"+(navigator.userAgent.includes("Firefox")?"":"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"),featureListDiv.setAttribute("allowfullscreen",""),featureListDiv.style.minWidth="fit-content",featureListDiv.style.width="855px",featureListDiv.style.marginBottom="30px",introDiv.parentNode.replaceChild(featureListDiv,introDiv),featureListDiv.parentNode.style.textAlign="center",document.querySelectorAll("blockquote").forEach(blockquote=>{var parent=blockquote.parentNode,content=blockquote.innerHTML;parent.replaceChild(document.createRange().createContextualFragment(content),blockquote)}),[]),featureListDiv=[],fadeLeftElements=[],introDiv=(introDiv.push(...document.querySelectorAll(".cover-main img, .cover-main a,h2, h3, p, pre, main li,div#partners-collage, #copyright-footer")),introDiv.forEach(element=>{element.classList.add("content-fadeup")}),introDiv.push(document.querySelector("#language-menu")),introDiv[introDiv.length-1].classList.add("menu-fadeup"),featureListDiv.push(...document.querySelectorAll(`#showcase ~ h3:nth-of-type(odd):not(#contributors ~ *), +let taglineWords=[],features=[">> Feature-rich",">> Object-oriented",">> Easy-to-use",">> Lightweight (yet optimally performant)"],visibilityMap=[],sectionColors=["#64ffff","#f9ee16","lime","orange","#b981f9","#f581f9","#81f9c3"],iniStarZvelocity=window.starVelocity.z,warpDuration=1600,hiWarpDuration=1400,starResetDelay=15,mdLoaded=new Promise(resolve=>{new MutationObserver((mutationsList,observer)=>{document.querySelector("#shields")&&(observer.disconnect(),resolve())}).observe(document.body,{childList:!0,subtree:!0})}),iObserver=new IntersectionObserver(entries=>{entries.forEach(entry=>{var key=entry.target.id||entry.target.className;if(visibilityMap[key]=entry.isIntersecting,"cover-main"===entry.target.className)if(entry.isIntersecting){document.querySelector("#kudoai a").style.color="white",window.starColor="white",(document.querySelector("#scrollbar-style")||{}).innerText=":root { scrollbar-color: rgb(210,210,210) #1a1a1a }body::-webkit-scrollbar-thumb { background-color: white }";let kudo=document.querySelector(".kudo");kudo.classList.add("hover"),setTimeout(()=>{kudo.classList.remove("hover")},955),Array.from(document.querySelectorAll('span[id^="tagline"]')).forEach(span=>{span.textContent=""}),scrambleText([taglineWords[0]],document.querySelector("#tagline-pre-adj")),scrambleText(taglineWords[1],document.querySelector("#tagline-adj"),750),scrambleText([taglineWords[2]],document.querySelector("#tagline-post-adj")),randomizeCase(document.querySelector("#tagline-pre-adj")),randomizeCase(document.querySelector("#tagline-post-adj")),window.starVelocity.z<=iniStarZvelocity&&(window.starVelocity.z+=.024,setTimeout(()=>{window.starVelocity.z-=.02},1155),setTimeout(()=>{window.starVelocity.z=iniStarZvelocity},1355))}else clearTimeout(scrambleText.timeoutID);else"feature-list"===entry.target.id&&(entry.isIntersecting?typeText(features,entry.target,20):(entry.target.innerHTML="",clearTimeout(typeText.timeoutID)))})}),onLoadObserver=new MutationObserver(()=>{if(document.querySelector(".cover-main blockquote p")){if(smoothScroll(document,155,9),/#\/(?:\w{2}(?:-\w{2})?\/)?$/.test(location.hash)){isMobileDevice()||(document.body.className="ready close");var taglineSpans=Array.from(document.querySelectorAll('span[id^="tagline"]'));taglineSpans.map(span=>{taglineWords.push(/pre|post/.exec(span.id)?span.textContent:span.textContent.split("|"))}),taglineSpans.forEach(span=>{span.textContent=""}),iObserver.observe(document.querySelector(".cover-main"));let cover=document.querySelector(".cover"),topGradient=document.createElement("div");function updateTGvisibility(){topGradient.style.display=window.scrollY>.85*cover.offsetHeight?"":"none"}topGradient.classList.add("top-gradient"),document.body.append(topGradient),updateTGvisibility(),mdLoaded.then(()=>{navigator.userAgent.includes("Chrome")&&window.scrollBy(0,200),setTimeout(()=>window.scrollBy(0,-200),600),document.querySelector(".search").style.display="none",document.querySelector(".sidebar-nav").style.paddingTop="102px";var featureListDiv=document.querySelector("#feature-list")||document.createElement("div"),introDiv=(featureListDiv.parentElement||(featureListDiv.setAttribute("id","feature-list"),(introDiv=document.querySelector("#intro")).parentElement.insertBefore(featureListDiv,introDiv.nextElementSibling.nextElementSibling)),iObserver.observe(featureListDiv),document.querySelector("article")),featureListDiv=document.createElement("div"),introDiv=(featureListDiv.id="copyright-footer",featureListDiv.innerHTML='Copyright © 2023–'+(new Date).getFullYear()+' KudoAI.
Designed by Adam Lui / Powered by Docsify / Hosted by GitHub',introDiv.append(featureListDiv),document.querySelector('a[href*="/assets/10906554/f53c740f-d5e0-49b6-ae02-3b3140b0f8a4"]')),featureListDiv=document.createElement("iframe"),introDiv=(featureListDiv.setAttribute("width","855"),featureListDiv.setAttribute("height","455"),featureListDiv.setAttribute("src","https://www.youtube.com/embed/yG8DtsEo0PM?rel=0"),featureListDiv.allow="web-share"+(navigator.userAgent.includes("Firefox")?"":"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"),featureListDiv.setAttribute("allowfullscreen",""),featureListDiv.style.minWidth="fit-content",featureListDiv.style.width="855px",featureListDiv.style.marginBottom="30px",introDiv.parentNode.replaceChild(featureListDiv,introDiv),featureListDiv.parentNode.style.textAlign="center",document.querySelectorAll("blockquote").forEach(blockquote=>{var parent=blockquote.parentNode,content=blockquote.innerHTML;parent.replaceChild(document.createRange().createContextualFragment(content),blockquote)}),document.querySelectorAll("img[src], source[srcset]").forEach(elem=>{var srcAttrType=elem.hasAttribute("src")?"src":"srcset",srcAttrVal=elem[srcAttrType];srcAttrVal.includes("weserv.nl")&&(elem[srcAttrType]=/[^=]+\?url=([^&?]+)[&?][^&?]+/.exec(srcAttrVal)?.[1]||srcAttrVal)}),[]),featureListDiv=[],fadeLeftElements=[],introDiv=(introDiv.push(...document.querySelectorAll(".cover-main img, .cover-main a,h2, h3, p, pre, main li,div#partners-collage, #copyright-footer")),introDiv.forEach(element=>{element.classList.add("content-fadeup")}),introDiv.push(document.querySelector("#language-menu")),introDiv[introDiv.length-1].classList.add("menu-fadeup"),featureListDiv.push(...document.querySelectorAll(`#showcase ~ h3:nth-of-type(odd):not(#contributors ~ *), #showcase ~ h3 + p:nth-of-type(odd):not(#contributors ~ *`)),featureListDiv.forEach(element=>{element.classList.add("content-faderight")}),fadeLeftElements.push(...document.querySelectorAll(`#showcase ~ h3:nth-of-type(even):not(#contributors ~ *), #showcase ~ h3 + p:nth-of-type(even):not(#contributors ~ *`)),fadeLeftElements.forEach(element=>{element.classList.add("content-fadeleft")}),[...introDiv,...featureListDiv,...fadeLeftElements]);let sideNavItems=[...document.querySelectorAll(".sidebar-nav li")],fadeObserver=new IntersectionObserver(entries=>{entries.forEach(entry=>{var headingText;entry.isIntersecting?(entry.target.classList.add("visible"),entry.target.tagName.startsWith("H")&&(headingText=entry.target.querySelector("a").textContent,headingText=(document.querySelector(`a[title="${headingText}"]`)||{}).parentElement)&&(sideNavItems.forEach(item=>item.classList.remove("nav-active")),headingText.classList.add("nav-active"))):entry.target.classList.remove("visible")})},{root:null,threshold:.02});introDiv.forEach(element=>{fadeObserver.observe(element)});featureListDiv=document.querySelector('a[href$="stargazers"]'),fadeLeftElements=featureListDiv.getAttribute("href");featureListDiv.setAttribute("href",fadeLeftElements.replace("/stargazers",""));let triggerElements=[],triggerPoints=[],partnersCollage=(triggerElements.push(...document.querySelectorAll("h2")),triggerElements.push(document.querySelector("h3#-greasemonkey")),triggerElements.push(document.querySelector("h3#-chrome")),triggerElements.push(document.querySelector('img[src*="chatgpt-infinity"]')),triggerElements.forEach(element=>{var elementPos=element.getBoundingClientRect().top,element=element.id.includes("⚡")?1.5:"IMG"===element.tagName?.8:8.8;triggerPoints.push(elementPos-window.innerHeight/element)}),triggerPoints.sort((a,b)=>a-b),window.addEventListener("scroll",()=>{if(!visibilityMap["cover-main"]&&!visibilityMap["feature-list"]){let currentSection=0;for(;window.scrollY>triggerPoints[currentSection]&¤tSection{window.starVelocity.z<=iniStarZvelocity&&(window.starColor="white")},warpDuration+starResetDelay),window.starVelocity.z+=.0045,setTimeout(()=>{window.starVelocity.z=Math.max(iniStarZvelocity,window.starVelocity.z-.0025)},hiWarpDuration),setTimeout(()=>{window.starVelocity.z=Math.max(iniStarZvelocity,window.starVelocity.z-.002)},warpDuration);let kudoAIlogo=document.querySelector("#kudoai a"),kudo=document.querySelector(".kudo"),scrollbarStyle=(kudoAIlogo.style.color=sectionColor,kudo.classList.add("hover"),setTimeout(()=>{window.starVelocity.z<=iniStarZvelocity&&(kudoAIlogo.style.color="white",kudo.classList.remove("hover"))},warpDuration+5),document.querySelector("#scrollbar-style")||document.createElement("style"));scrollbarStyle.parentElement||(scrollbarStyle.setAttribute("id","scrollbar-style"),document.head.append(scrollbarStyle)),scrollbarStyle.innerText=`:root { scrollbar-color: ${sectionColor} #1a1a1a }`+`body::-webkit-scrollbar-thumb { background-color: ${sectionColor} }`,setTimeout(()=>{window.starVelocity.z<=iniStarZvelocity&&(scrollbarStyle.innerText=":root { scrollbar-color: rgb(210,210,210) #1a1a1a }body::-webkit-scrollbar-thumb { background-color: white }")},warpDuration+5)}}}),document.querySelectorAll("picture").forEach(picture=>{var srcSet=picture.querySelector("source").getAttribute("srcset"),imgElement=document.createElement("img");imgElement.setAttribute("src",srcSet),picture.parentNode.replaceChild(imgElement,picture)}),document.getElementById("partners-collage")),emailFooter=document.createElement("div");fetch("assets/html/footer.html").then(response=>response.text()).then(html=>{emailFooter.innerHTML=html,partnersCollage.insertAdjacentElement("afterend",emailFooter)});introDiv=[...document.querySelectorAll("a")].find(link=>link.textContent.includes("↑"));introDiv?.previousSibling.remove(),introDiv?.remove(),setTimeout(()=>{let parallaxTriggers=[];document.querySelectorAll('#main, h2:not([id="about"])').forEach(trigger=>{var y=trigger.getBoundingClientRect().top-window.innerHeight/1.2,trigger="H2"===trigger.tagName?trigger.parentElement:trigger;parallaxTriggers.push({element:trigger,y:y})}),window.addEventListener("scroll",()=>{updateTGvisibility(),parallaxTriggers.forEach(trigger=>{if(window.scrollY>=trigger.y&&window.scrollY{var topGap=trigger.y-window.scrollY,newOpacity=1-Math.abs(topGap)/(window.innerHeight-5),blurAmount=Math.min(4.5,Math.abs(topGap)/(window.innerHeight/4.5)),parallaxOffset=-.55*topGap,topGap=-285{var lang;for(lang of document.querySelectorAll("h5 a"))lang.href=lang.href.replace(/(https?:\/\/[^/]+\/)([^.]+)\.md/,"$1#/$2")})),onLoadObserver.disconnect()}});function isMobileDevice(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)}function validateIntArg(arg,name,defaultVal){if(void 0===arg)return defaultVal;if(Number.isInteger(arg)||/^\d+$/.test(arg))return parseInt(arg,10);throw new Error(name+" must be an integer.")}function smoothScroll(target,speed,smooth){target===document&&(target=document.scrollingElement||document.documentElement||document.body.parentNode||document.body);let moving=!1,pos=target.scrollTop,frame=target===document.body&&document.documentElement?document.documentElement:target;function scrolled(e){e.preventDefault();e=(e=>e.detail?e.wheelDelta?e.wheelDelta/e.detail/40*(0{delayBetweenWords&&visibilityMap["cover-main"]&&(scrambleText.timeoutID=setTimeout(()=>{scrambleText(text,destination,delayBetweenWords,(textIdx+1)%text.length)},delayBetweenWords))})}function randomizeCase(targetNode,iniDelay,finalDelay,incrementA,incrementB,inflectionPt){if(!targetNode?.nodeName)throw new Error("Target node (1st arg) must be a DOM element");iniDelay=validateIntArg(iniDelay,"Initial delay",5),finalDelay=validateIntArg(finalDelay,"Final delay",1e3),incrementA=validateIntArg(incrementA,"Increment A",10),incrementB=validateIntArg(incrementB,"Increment B",111),inflectionPt=validateIntArg(inflectionPt,"Inflection point",265),targetNode.textContent=targetNode.textContent.split("").map(letter=>Math.random()<.5?letter.toUpperCase():letter.toLowerCase()).join(""),randomizeCase.iniDelay=randomizeCase.iniDelay||iniDelay,randomizeCase.iniDelay+=randomizeCase.iniDelay{randomizeCase(targetNode,iniDelay,finalDelay,incrementA,incrementB,inflectionPt)},randomizeCase.iniDelay)}function typeText(txtToType,destination,typeDelay,iniTxtToType,iniTxtPos,linesToScrollAt){if("string"==typeof txtToType&&(txtToType=[txtToType]),!destination?.nodeName)throw new Error("Destination must be a DOM element");typeDelay=validateIntArg(typeDelay,"Typing delay",30),iniTxtToType=validateIntArg(iniTxtToType,"Initial text array index",0),iniTxtPos=validateIntArg(iniTxtPos,"Initial text string position",3),linesToScrollAt=validateIntArg(linesToScrollAt,"Lines to scroll at",5);let typeContent=" ",iniRow=Math.max(0,iniTxtToType-linesToScrollAt);for(;iniRow
";destination.innerHTML=typeContent+txtToType[iniTxtToType].substring(0,iniTxtPos)+"_",iniTxtPos++==txtToType[iniTxtToType].length?(iniTxtPos=0,++iniTxtToType!=txtToType.length&&(typeText.timeoutID=setTimeout(()=>{typeText(txtToType,destination,typeDelay,iniTxtToType,iniTxtPos)},88))):typeText.timeoutID=setTimeout(()=>{typeText(txtToType,destination,typeDelay,iniTxtToType,iniTxtPos)},typeDelay+220*Math.random()-110)}class Scramble{constructor(el){this.el=el,this.chars="!<>-_\\/[]{}—=+*^?#________",this.update=this.update.bind(this)}setText(newText){var oldText=this.el.innerText,length=Math.max(oldText.length,newText.length),promise=new Promise(resolve=>this.resolve=resolve);this.queue=[];for(let i=0;i=end?(complete++,output+=to):this.frame>=start?((!char||Math.random()<.28)&&(char=this.randomChar(),this.queue[i].char=char),output+=`${char}`):output+=from}this.el.innerHTML=output,complete===this.queue.length?this.resolve():(this.frameRequest=requestAnimationFrame(this.update),this.frame++)}randomChar(){return this.chars[Math.floor(Math.random()*this.chars.length)]}}let langMenu=document.getElementById("language-menu"),langSelector=document.getElementById("language-selector"),hideTimeout,fromUnhashedURL=(langSelector.onmouseover=langSelector.onmouseout=langMenu.onmouseover=langMenu.onmouseout=event=>{clearTimeout(hideTimeout),"mouseover"==event.type?langMenu.style.display="block":"mouseout"==event.type&&(hideTimeout=setTimeout(()=>langMenu.style.display="none",55))},document.querySelectorAll("#language-selector a").forEach(link=>{link.addEventListener("mouseenter",()=>{link.removeAttribute("title")})}),document.querySelectorAll(".dropdown-link").forEach(link=>{link.addEventListener("click",()=>langMenu.style.display="none")}),onLoadObserver.observe(document.body,{childList:!0,subtree:!0}),window.location.href.includes("#"));window.addEventListener("hashchange",()=>{fromUnhashedURL?(fromUnhashedURL,onLoadObserver.observe(document.body,{childList:!0,subtree:!0})):fromUnhashedURL=!0}); \ No newline at end of file diff --git a/docs/assets/js/src/onload-hacks.js b/docs/assets/js/src/onload-hacks.js index 94317ae4e..5aa26e53d 100644 --- a/docs/assets/js/src/onload-hacks.js +++ b/docs/assets/js/src/onload-hacks.js @@ -161,6 +161,16 @@ const onLoadObserver = new MutationObserver(() => { parent.replaceChild(document.createRange().createContextualFragment(content), blockquote); }); + // Convert weserv.nl img srcs in contributor avatars into renderable ones + document.querySelectorAll('img[src], source[srcset]').forEach(elem => { + const srcAttrType = elem.hasAttribute('src') ? 'src' : 'srcset', + srcAttrVal = elem[srcAttrType] + if (srcAttrVal.includes('weserv.nl')) { + elem[srcAttrType] = /[^=]+\?url=([^&?]+)[&?][^&?]+/.exec(srcAttrVal)?.[1] || srcAttrVal + //elem.parentNode.style.borderRadius = '50%' + } + }) + // Add FADE classes to elements const fadeUpElements = [], fadeRightElements = [], fadeLeftElements = []; fadeUpElements.push(...document.querySelectorAll( diff --git a/docs/assets/styles/css/style.min.css b/docs/assets/styles/css/style.min.css index ddce118e7..5415931b0 100644 --- a/docs/assets/styles/css/style.min.css +++ b/docs/assets/styles/css/style.min.css @@ -1 +1 @@ -@font-face{font-family:"Eurostile Extended Black";src:local("Eurostile Extended Black"),local("EurostileExtendedBlack"),url("../../fonts/eurostile-extended-black/EurostileExtendedBlack.otf") format("opentype"),url("../../fonts/eurostile-extended-black/EurostileExtendedBlack.ttf") format("truetype"),url("../../fonts/eurostile-extended-black/EurostileExtendedBlack.woff") format("woff"),url("../../fonts/eurostile-extended-black/EurostileExtendedBlack.woff2") format("woff2")}@font-face{font-family:"Major Mono Display";src:local("Major Mono Display"),local("MajorMonoDisplay-Regular"),url("../../fonts/major-mono-display/MajorMonoDisplay-Regular.otf") format("opentype"),url("../../fonts/major-mono-display/MajorMonoDisplay-Regular.ttf") format("truetype"),url("../../fonts/major-mono-display/MajorMonoDisplay-Regular.woff") format("woff"),url("../../fonts/major-mono-display/MajorMonoDisplay-Regular.woff2") format("woff2")}@font-face{font-family:"PolySans Neutral";src:local("PolySans Neutral"),local("PolySansNeutral-Regular"),url("../../fonts/polysans-neutral/PolySansNeutral.eot?#iefix") format("embedded-opentype"),url("../../fonts/polysans-neutral/PolySansNeutral.woff") format("woff"),url("../../fonts/polysans-neutral/PolySansNeutral.woff2") format("woff2"),url("../../fonts/polysans-neutral/PolySansNeutral.ttf") format("truetype");font-weight:normal;font-style:normal;font-display:swap}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Thin"),local("IBMPlexMono-Thin"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-Thin.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-Thin.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-Thin.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-Thin.woff2") format("woff2");font-weight:100;font-style:normal}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Thin Italic"),local("IBMPlexMono-ThinItalic"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-ThinItalic.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-ThinItalic.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-ThinItalic.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-ThinItalic.woff2") format("woff2");font-weight:100;font-style:italic}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Extra Light"),local("IBMPlexMono-ExtraLight"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-ExtraLight.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-ExtraLight.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-ExtraLight.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-ExtraLight.woff2") format("woff2");font-weight:200;font-style:normal}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Extra Light Italic"),local("IBMPlexMono-ExtraLightItalic"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-ExtraLightItalic.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-ExtraLightItalic.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-ExtraLightItalic.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-ExtraLightItalic.woff2") format("woff2");font-weight:200;font-style:italic}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Light"),local("IBMPlexMono-Light"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-Light.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-Light.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-Light.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-Light.woff2") format("woff2");font-weight:300;font-style:normal}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Light Italic"),local("IBMPlexMono-LightItalic"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-LightItalic.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-LightItalic.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-LightItalic.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-LightItalic.woff2") format("woff2");font-weight:300;font-style:italic}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono"),local("IBMPlexMono-Regular"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-Regular.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-Regular.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-Regular.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-Regular.woff2") format("woff2");font-weight:400;font-style:normal}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Regular Italic"),local("IBMPlexMono-RegularItalic"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-RegularItalic.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-RegularItalic.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-RegularItalic.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-RegularItalic.woff2") format("woff2");font-weight:400;font-style:italic}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Medium"),local("IBMPlexMono-Medium"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-Medium.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-Medium.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-Medium.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-Medium.woff2") format("woff2");font-weight:500;font-style:normal}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Medium Italic"),local("IBMPlexMono-MediumItalic"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-MediumItalic.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-MediumItalic.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-MediumItalic.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-MediumItalic.woff2") format("woff2");font-weight:500;font-style:italic}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Semi Bold"),local("IBMPlexMono-SemiBold"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-SemiBold.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-SemiBold.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-SemiBold.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-SemiBold.woff2") format("woff2");font-weight:600;font-style:normal}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Semi Bold Italic"),local("IBMPlexMono-SemiBoldItalic"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-SemiBoldItalic.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-SemiBoldItalic.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-SemiBoldItalic.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-SemiBoldItalic.woff2") format("woff2");font-weight:600;font-style:italic}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Bold"),local("IBMPlexMono-Bold"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-Bold.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-Bold.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-Bold.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-Bold.woff2") format("woff2");font-weight:700;font-style:normal}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Bold Italic"),local("IBMPlexMono-BoldItalic"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-BoldItalic.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-BoldItalic.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-BoldItalic.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-BoldItalic.woff2") format("woff2");font-weight:700;font-style:italic}.app-nav a.active{border-bottom:2px solid lime}a{word-break:break-word}.top-gradient{position:fixed;top:0;left:0;width:100%;height:20vh;background-image:linear-gradient(to top, transparent, #000);pointer-events:none;z-index:1}*{scrollbar-color:#d2d2d2 #1a1a1a;scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#fff;border-radius:4px;border:1px #000 solid}::-webkit-scrollbar-thumb:hover{background:#d2d2d2}::-webkit-scrollbar-track{background:#1a1a1a}.menu-fadeup{opacity:0;transform:translateY(5px)}.menu-fadeup.visible{opacity:1;transform:translateY(0);transition:opacity .2s cubic-bezier(0.165, 0.84, 0.44, 1),transform .5s cubic-bezier(0.165, 0.84, 0.44, 1)}.content-fadeup{opacity:0;transform:translateY(20px)}.content-fadeup.visible{opacity:1;transform:translateY(0);transition:opacity .2s cubic-bezier(0.165, 0.84, 0.44, 1) .15s,transform .5s cubic-bezier(0.165, 0.84, 0.44, 1) .15s}.content-faderight{opacity:0;transform:translateX(-20px)}.content-fadeleft{opacity:0;transform:translateX(20px)}.content-faderight.visible,.content-fadeleft.visible{opacity:1;transform:translateX(0);transition:opacity .2s cubic-bezier(0.165, 0.84, 0.44, 1) .15s,transform .5s cubic-bezier(0.165, 0.84, 0.44, 1) .15s}#kudoai{position:fixed;top:15px;left:35px;font-family:"Major Mono Display";font-size:2.25vw;z-index:500;-webkit-user-select:none !important;-khtml-user-select:none !important;-moz-user-select:none !important;-ms-user-select:none !important;user-select:none !important}#kudoai a{color:#fff;text-decoration:none}.kudo{font-size:135%;text-shadow:.225vw .225vw #fff;padding-right:4px}#kudoai a:hover .kudo,.kudo.hover{position:relative;animation:circular-slide 1.8s linear infinite}@keyframes circular-slide{0%,100%{top:0;left:0;text-shadow:.225vw .225vw}25%{top:0;left:.225vw;text-shadow:-0.225vw .225vw}50%{top:.225vw;left:.225vw;text-shadow:-0.225vw -0.225vw}75%{top:.225vw;left:0;text-shadow:.225vw -0.225vw}}.github-corner{z-index:5}.github-corner svg{fill:#fff;color:#000;height:115px;width:115px}canvas{position:fixed;width:100%;height:100%;pointer-events:none}.cover-main>img{margin-bottom:16px;width:98%}.cover-main{color:#fff}section.cover p{font-family:"Major Mono Display","IBM Plex Mono","Roboto Mono",Monaco,courier,monospace !important;font-size:1.75rem !important;font-weight:bold;margin-bottom:48px;line-height:2.3rem !important}.cover-main>p:last-child a{font-family:"IBM Plex Mono","Roboto Mono",Monaco,courier,monospace !important;text-transform:uppercase;font-size:1.35rem !important;color:#fff !important;border-width:3px !important;border-radius:0 !important;border-color:#fff !important;padding:16px 68px !important;transition:.04s !important;-webkit-user-select:none !important;-khtml-user-select:none !important;-moz-user-select:none !important;-ms-user-select:none !important;user-select:none !important;-webkit-touch-callout:none !important;-webkit-tap-highlight-color:transparent}.cover-main>p:last-child a:hover{background-color:blue;color:#fff !important;opacity:1 !important}.cover-main>p:last-child a:last-child{padding:16px 60px !important;border-color:#fff !important;font-weight:bold;background-color:#fff !important;color:#000 !important}.cover-main>p:last-child a:last-child:hover{background-color:blue !important;border-color:blue !important;color:#fff !important}.app-nav{right:35px;top:15px}.app-nav a{color:#fff !important;font-size:1.5rem}#language-selector{position:relative;top:-25px;right:32px}#language-selector svg{position:relative;top:9px;right:9px;cursor:pointer}#language-selector a{font-size:30px}#language-selector li{width:88%;margin-right:unset}#language-menu{display:none;position:absolute;top:127%;right:-49px;width:256px;height:87vh;overflow:scroll;font-size:28px !important;text-align:left;background:rgba(0,0,0,.75);border:3px solid #ccc;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.2);padding:5px 0;z-index:1}.dropdown--hoverable:hover #language-menu{display:block}.dropdown-link{display:block;padding:5px 15px;color:#333;text-decoration:none;transition:none !important}#language-selector li:hover{background-color:lime}.dropdown-link:hover{color:#000 !important}#dropdown-button{position:relative;padding-right:20px}#dropdown-button:after{content:"▼";position:absolute;right:-18px;top:.159rem;transform:scale(0.7)}.sidebar-toggle{bottom:36px;left:29px;background-color:rgba(0,0,0,0);-webkit-touch-callout:none !important;-webkit-tap-highlight-color:transparent}.sidebar-toggle:hover .sidebar-toggle-button{opacity:1}.sidebar-toggle span{background-color:#fff;width:20px;height:3px;margin-bottom:5px}.sidebar{background-color:rgba(0,0,0,0);padding-right:5px !important}.app-name{display:none}.sidebar-nav{padding-top:20px}.sidebar-nav>ul:first-of-type{margin-top:5vh}.sidebar a{font-size:2.1rem !important;line-height:3.8rem;color:#fff !important}.sidebar li.active>a{border-right:0 !important}.sidebar li.nav-active{border-right:4px solid lime;padding-right:15px}.sidebar ul>ul{margin:0 0 12px 26px}.sidebar ul>li:first-child{margin-top:8px}.sidebar ul>ul a{font-size:2rem !important;line-height:3.1rem}.sidebar li img{display:none}.search{background-color:#fff;font-size:1.3rem}.matching-post{transform:scale(0.7);margin:-31px}.app-name-link img{padding:0 2px}.sidebar-nav>ul>li:first-of-type,.sidebar-nav>ul>ul>ul:nth-of-type(2),.sidebar-nav>ul>ul:first-of-type+li{display:none}body{background:#000;color:#fff;cursor:url("../../cursors/futuristic/pointer.cur"),auto;font-family:"PolySans Neutral","Source Sans Pro","Helvetica Neue",Arial,sans-serif}strong,.anchor span{color:#fff !important}main a{color:#64ffff !important}#repo-cover{display:none}main h2{text-align:center;margin:8.4rem 0 5rem !important;font-size:6rem !important;font-family:"Eurostile Extended Black",Georgia,Cambria,Times New Roman,Times,serif;text-transform:uppercase}main h2 span{word-break:break-word}main h2 a{pointer-events:none}.anchor:hover{text-decoration:none}main h3{font-size:3.6rem !important;margin:4.75rem 0 2rem !important}main p{font-size:1.78rem !important;line-height:2.65rem !important}main blockquote{border-left:4px solid lime !important}main blockquote strong{color:#ff0 !important}main blockquote em{color:#87a99d !important}main blockquote p{border-left:none;width:38vw;font-size:1.5rem !important;line-height:2.1rem !important;text-align:left;float:right;position:relative;left:29px}main blockquote:first-of-type p{margin-top:55px !important}main blockquote:nth-of-type(2) p{margin-top:25px !important}img[src*=separator]{display:none}main h2+p{font-size:2.75rem !important;text-align:center;margin-top:-85px !important}main li::marker{font-size:1.4rem}main pre{width:100%;margin:65px 0 !important}main code{line-height:2.1rem !important}main pre,main code,.punctuation{font-family:"Roboto Mono",Monaco,courier,monospace !important;position:relative;font-size:1.35rem !important;color:#fff !important;background:rgba(0,0,0,.35) !important;margin-bottom:1px}.punctuation{background-color:rgba(0,0,0,0) !important}main pre code::before{content:"";display:block;position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom, rgba(0, 128, 128, 0) 50%, rgba(0, 255, 255, 0.2) 50%);background-size:100% 5px}main pre code{border:#64ffff 2px solid;border-radius:12px !important;padding:26px !important}main p code{font-size:1.3rem !important;position:relative;bottom:2px;padding:2px 12px 5px !important;margin:0 5px !important;word-break:break-word;border:#fff 1px solid;border-radius:8px !important}main pre:after{display:none}.docsify-copy-code-button{font-size:1.1rem !important;background-color:rgba(0,0,0,0) !important;color:#fff !important;padding:13px 18px 13px 15px !important;right:30px !important;top:2px !important}.success,.error{font-size:1.1rem !important}main li pre{margin:65px 0 !important}.token.string{color:lime}.token.comment{color:#b6e3d4}.token.function,.token.keyword,.token.boolean,.token.number{color:#ffcb00}#shields{margin:125px 0 305px}#shields img{height:48px;margin:4px -2px}#intro+p{margin-top:-488px !important;font-size:3.3rem !important;color:#bbb;line-height:4.3rem !important;text-align:right;width:59%}#intro~ul:first-of-type{display:none}#intro h2 span{display:none !important}#feature-list{font-family:"IBM Plex Mono","Roboto Mono",Monaco,courier,monospace !important;font-size:1.4rem;color:lime;position:relative;float:right;height:100px;top:-311px;right:-90px;width:41%;margin-bottom:365px}h2{padding-top:211px}#-greasemonkey,#-chrome{text-align:center;margin-bottom:55px !important}main blockquote+p{font-size:1.85rem !important;width:50%;text-align:right}main pre+p,main pre+p+p{text-align:center;padding:0 10vw}main ol{margin-top:95px;padding:0 9vw 0 12vw !important}#usage~pre+p{text-align:left !important;margin:65px 0 0 !important}#usage~pre+p+p{text-align:right !important;float:right !important;margin-bottom:152px}#showcase~h3:nth-of-type(even):not(#contributors~*),#showcase~h3+p:nth-of-type(even):not(#contributors~*){text-align:right}#showcase~h3+p+p:not(#contributors~*),#showcase~h3+p+p~p:not(#contributors~*){text-align:center !important}#showcase-cta{font-size:2.5rem !important;line-height:3.5rem !important;padding:0 10vw;margin-top:-29px}main h3 img{height:39px !important;width:auto !important;margin:0 19px -2px 0}main h3 a{text-decoration:none;color:#fff !important}main h3 a:hover{text-decoration:underline #42b983}img[src*=promo-tile]{width:74vw;border:1px solid #fff;margin:32px 0}a[href*="mailto:showcase"]{word-break:keep-all}#contributors,#contributors~p{text-align:center !important}#contributors~p{padding:0 15vw}#contributors+p{font-family:"IBM Plex Mono","Roboto Mono",Monaco,courier,monospace !important;font-size:1.7rem !important;padding:0 12vw}#contributors~* img:not(#partners~* *){width:5.5vw}a[href="https://chat.openai.com"] img{border:2px solid #aeecff;border-radius:50%}#contributors~br{display:none}#partners+p{font-size:2rem !important;padding:0}#partners-collage img{margin-top:17px;width:100%;opacity:.6}#star-history{display:none}#footer{text-align:center;margin:-96px 0 -105px}#mc_embed_signup h2{margin:3rem 0 3.5rem !important;font-size:2.68rem !important;color:#fff;-webkit-text-stroke:1px #000}.mc-field-group{margin:-4px 0 95px}.mc-field-group input{height:55px}input#mce-EMAIL{border-radius:0;width:32%;min-width:250px;margin-bottom:18px;border:1px solid #ccc;outline:none}input#mce-EMAIL,input#mce-EMAIL::placeholder{font-size:1.55rem;text-indent:15px}#mc-embedded-subscribe{font-size:1.45rem;color:#fff;background:#000;cursor:pointer;width:200px;margin-left:-6px;border-radius:0;border:1px;border:#fff solid;position:relative;bottom:1px}#copyright-footer{font-family:"IBM Plex Mono","Roboto Mono",Monaco,courier,monospace !important;text-align:center;margin:69px 0 25px;font-size:1.15rem;line-height:29px}#copyright-footer span{position:relative;bottom:2px}#copyright-footer a{color:#fff !important;font-weight:400;text-decoration-line:underline}.back-to-top{margin:0;padding:0;border:none;cursor:pointer;outline:none;width:fit-content;height:fit-content;background:none;position:fixed;bottom:5%;right:3%;display:none;opacity:0;-webkit-touch-callout:none !important;-webkit-tap-highlight-color:transparent}.back-to-top svg>path{fill:#fff}@media screen and (min-width: 768px)and (max-width: 1279px){#intro~p:first-of-type{line-height:3.6rem !important}main h2{font-size:5rem !important}main h3{font-size:3.55rem !important}main p,main blockquote+p,main blockquote+p+p{font-size:1.85rem !important;line-height:2.7rem !important}main p code{font-size:1.5rem !important;padding:2px 9px !important;border-radius:8px !important}}@media screen and (max-width: 767px)and (orientation: portrait){article{padding:0}.markdown-section{max-width:96%}.github-corner svg{height:88px;width:88px}#kudoai{transform:scale(1.7);margin-top:5.2px}#language-selector{transform:scale(0.7);right:0 !important}#language-selector a{font-size:26px}#language-selector svg{width:28px;height:28px}.cover-main{padding-top:21px}section.cover,.cover-main{margin:0 !important}.cover-main>img{width:100%;margin-bottom:0}section.cover p{font-size:6.3vw !important;line-height:4.3vh !important}.cover-main>p:last-child a,.cover-main>p:last-child a:last-child{padding:12px 43px !important}blockquote{margin:0 !important}.sidebar-toggle{bottom:33px;left:5px;background:rgba(0,0,0,0) !important}.back-to-top{bottom:39px;right:10px}#shields{display:none}#intro~p:first-of-type{font-size:2.8rem !important;line-height:3.1rem !important;margin:-236px 0 490px !important}#feature-list{font-size:1.7rem !important;margin-bottom:-136px !important;position:relative;width:inherit;left:16px;top:-244px;float:none}main li::marker{font-size:1.84rem !important}main h2{font-size:3rem !important;padding:0 12px 0 16px !important}main h3{font-size:2.5rem !important}main h3 img{height:32px !important}main p{font-size:1.85rem !important;width:inherit !important;text-align:center !important;line-height:2.5rem !important;word-wrap:break-word}main blockquote{margin:0 18px !important}main blockquote p{float:none;left:0}main blockquote+p,main pre+p{font-size:1.65rem !important;margin:0 17px !important}main pre+p,main pre+p+p{padding:0 !important}main ol{width:inherit;margin:0 32px;padding:0 0 0 15px !important}main ol p{text-align:left !important;word-break:break-word}main code,.token{font-size:1.2rem !important}main pre{padding:0 .11rem !important}main li pre{padding:0 !important}main p code{font-size:1.45rem !important;padding:2px 8px !important}.docsify-copy-code-button{display:none}#usage~pre+p,#usage~pre+p+p{font-size:1.85rem !important;text-align:center !important;margin:63px 0 !important;float:none !important}#showcase~h3,#showcase~p{text-align:center !important}img[src*=promo-tile]{width:100% !important}#contributors+p{font-size:1.5rem !important;padding:0 5px !important}#contributors~p{padding:0 !important}#contributors~* img{width:69px !important}#mc_embed_signup h2{font-size:2.55rem !important;left:-21px !important}input#mce-EMAIL,input#mce-EMAIL::placeholder{text-indent:0 !important;text-align:center}} \ No newline at end of file +@font-face{font-family:"Eurostile Extended Black";src:local("Eurostile Extended Black"),local("EurostileExtendedBlack"),url("../../fonts/eurostile-extended-black/EurostileExtendedBlack.otf") format("opentype"),url("../../fonts/eurostile-extended-black/EurostileExtendedBlack.ttf") format("truetype"),url("../../fonts/eurostile-extended-black/EurostileExtendedBlack.woff") format("woff"),url("../../fonts/eurostile-extended-black/EurostileExtendedBlack.woff2") format("woff2")}@font-face{font-family:"Major Mono Display";src:local("Major Mono Display"),local("MajorMonoDisplay-Regular"),url("../../fonts/major-mono-display/MajorMonoDisplay-Regular.otf") format("opentype"),url("../../fonts/major-mono-display/MajorMonoDisplay-Regular.ttf") format("truetype"),url("../../fonts/major-mono-display/MajorMonoDisplay-Regular.woff") format("woff"),url("../../fonts/major-mono-display/MajorMonoDisplay-Regular.woff2") format("woff2")}@font-face{font-family:"PolySans Neutral";src:local("PolySans Neutral"),local("PolySansNeutral-Regular"),url("../../fonts/polysans-neutral/PolySansNeutral.eot?#iefix") format("embedded-opentype"),url("../../fonts/polysans-neutral/PolySansNeutral.woff") format("woff"),url("../../fonts/polysans-neutral/PolySansNeutral.woff2") format("woff2"),url("../../fonts/polysans-neutral/PolySansNeutral.ttf") format("truetype");font-weight:normal;font-style:normal;font-display:swap}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Thin"),local("IBMPlexMono-Thin"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-Thin.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-Thin.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-Thin.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-Thin.woff2") format("woff2");font-weight:100;font-style:normal}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Thin Italic"),local("IBMPlexMono-ThinItalic"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-ThinItalic.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-ThinItalic.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-ThinItalic.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-ThinItalic.woff2") format("woff2");font-weight:100;font-style:italic}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Extra Light"),local("IBMPlexMono-ExtraLight"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-ExtraLight.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-ExtraLight.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-ExtraLight.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-ExtraLight.woff2") format("woff2");font-weight:200;font-style:normal}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Extra Light Italic"),local("IBMPlexMono-ExtraLightItalic"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-ExtraLightItalic.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-ExtraLightItalic.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-ExtraLightItalic.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-ExtraLightItalic.woff2") format("woff2");font-weight:200;font-style:italic}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Light"),local("IBMPlexMono-Light"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-Light.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-Light.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-Light.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-Light.woff2") format("woff2");font-weight:300;font-style:normal}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Light Italic"),local("IBMPlexMono-LightItalic"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-LightItalic.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-LightItalic.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-LightItalic.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-LightItalic.woff2") format("woff2");font-weight:300;font-style:italic}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono"),local("IBMPlexMono-Regular"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-Regular.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-Regular.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-Regular.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-Regular.woff2") format("woff2");font-weight:400;font-style:normal}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Regular Italic"),local("IBMPlexMono-RegularItalic"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-RegularItalic.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-RegularItalic.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-RegularItalic.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-RegularItalic.woff2") format("woff2");font-weight:400;font-style:italic}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Medium"),local("IBMPlexMono-Medium"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-Medium.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-Medium.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-Medium.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-Medium.woff2") format("woff2");font-weight:500;font-style:normal}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Medium Italic"),local("IBMPlexMono-MediumItalic"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-MediumItalic.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-MediumItalic.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-MediumItalic.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-MediumItalic.woff2") format("woff2");font-weight:500;font-style:italic}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Semi Bold"),local("IBMPlexMono-SemiBold"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-SemiBold.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-SemiBold.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-SemiBold.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-SemiBold.woff2") format("woff2");font-weight:600;font-style:normal}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Semi Bold Italic"),local("IBMPlexMono-SemiBoldItalic"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-SemiBoldItalic.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-SemiBoldItalic.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-SemiBoldItalic.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-SemiBoldItalic.woff2") format("woff2");font-weight:600;font-style:italic}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Bold"),local("IBMPlexMono-Bold"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-Bold.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-Bold.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-Bold.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-Bold.woff2") format("woff2");font-weight:700;font-style:normal}@font-face{font-family:"IBM Plex Mono";src:local("IBM Plex Mono Bold Italic"),local("IBMPlexMono-BoldItalic"),url("../../fonts/ibm-plex-mono/otf/IBMPlexMono-BoldItalic.otf") format("opentype"),url("../../fonts/ibm-plex-mono/ttf/IBMPlexMono-BoldItalic.ttf") format("truetype"),url("../../fonts/ibm-plex-mono/woff/IBMPlexMono-BoldItalic.woff") format("woff"),url("../../fonts/ibm-plex-mono/woff2/IBMPlexMono-BoldItalic.woff2") format("woff2");font-weight:700;font-style:italic}.app-nav a.active{border-bottom:2px solid lime}a{word-break:break-word}.top-gradient{position:fixed;top:0;left:0;width:100%;height:20vh;background-image:linear-gradient(to top, transparent, #000);pointer-events:none;z-index:1}*{scrollbar-color:#d2d2d2 #1a1a1a;scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#fff;border-radius:4px;border:1px #000 solid}::-webkit-scrollbar-thumb:hover{background:#d2d2d2}::-webkit-scrollbar-track{background:#1a1a1a}.menu-fadeup{opacity:0;transform:translateY(5px)}.menu-fadeup.visible{opacity:1;transform:translateY(0);transition:opacity .2s cubic-bezier(0.165, 0.84, 0.44, 1),transform .5s cubic-bezier(0.165, 0.84, 0.44, 1)}.content-fadeup{opacity:0;transform:translateY(20px)}.content-fadeup.visible{opacity:1;transform:translateY(0);transition:opacity .2s cubic-bezier(0.165, 0.84, 0.44, 1) .15s,transform .5s cubic-bezier(0.165, 0.84, 0.44, 1) .15s}.content-faderight{opacity:0;transform:translateX(-20px)}.content-fadeleft{opacity:0;transform:translateX(20px)}.content-faderight.visible,.content-fadeleft.visible{opacity:1;transform:translateX(0);transition:opacity .2s cubic-bezier(0.165, 0.84, 0.44, 1) .15s,transform .5s cubic-bezier(0.165, 0.84, 0.44, 1) .15s}#kudoai{position:fixed;top:15px;left:35px;font-family:"Major Mono Display";font-size:2.25vw;z-index:500;-webkit-user-select:none !important;-khtml-user-select:none !important;-moz-user-select:none !important;-ms-user-select:none !important;user-select:none !important}#kudoai a{color:#fff;text-decoration:none}.kudo{font-size:135%;text-shadow:.225vw .225vw #fff;padding-right:4px}#kudoai a:hover .kudo,.kudo.hover{position:relative;animation:circular-slide 1.8s linear infinite}@keyframes circular-slide{0%,100%{top:0;left:0;text-shadow:.225vw .225vw}25%{top:0;left:.225vw;text-shadow:-0.225vw .225vw}50%{top:.225vw;left:.225vw;text-shadow:-0.225vw -0.225vw}75%{top:.225vw;left:0;text-shadow:.225vw -0.225vw}}.github-corner{z-index:5}.github-corner svg{fill:#fff;color:#000;height:115px;width:115px}canvas{position:fixed;width:100%;height:100%;pointer-events:none}.cover-main>img{margin-bottom:16px;width:98%}.cover-main{color:#fff}section.cover p{font-family:"Major Mono Display","IBM Plex Mono","Roboto Mono",Monaco,courier,monospace !important;font-size:1.75rem !important;font-weight:bold;margin-bottom:48px;line-height:2.3rem !important}.cover-main>p:last-child a{font-family:"IBM Plex Mono","Roboto Mono",Monaco,courier,monospace !important;text-transform:uppercase;font-size:1.35rem !important;color:#fff !important;border-width:3px !important;border-radius:0 !important;border-color:#fff !important;padding:16px 68px !important;transition:.04s !important;-webkit-user-select:none !important;-khtml-user-select:none !important;-moz-user-select:none !important;-ms-user-select:none !important;user-select:none !important;-webkit-touch-callout:none !important;-webkit-tap-highlight-color:transparent}.cover-main>p:last-child a:hover{background-color:blue;color:#fff !important;opacity:1 !important}.cover-main>p:last-child a:last-child{padding:16px 60px !important;border-color:#fff !important;font-weight:bold;background-color:#fff !important;color:#000 !important}.cover-main>p:last-child a:last-child:hover{background-color:blue !important;border-color:blue !important;color:#fff !important}.app-nav{right:35px;top:15px}.app-nav a{color:#fff !important;font-size:1.5rem}#language-selector{position:relative;top:-25px;right:32px}#language-selector svg{position:relative;top:9px;right:9px;cursor:pointer}#language-selector a{font-size:30px}#language-selector li{width:88%;margin-right:unset}#language-menu{display:none;position:absolute;top:127%;right:-49px;width:256px;height:87vh;overflow:scroll;font-size:28px !important;text-align:left;background:rgba(0,0,0,.75);border:3px solid #ccc;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.2);padding:5px 0;z-index:1}.dropdown--hoverable:hover #language-menu{display:block}.dropdown-link{display:block;padding:5px 15px;color:#333;text-decoration:none;transition:none !important}#language-selector li:hover{background-color:lime}.dropdown-link:hover{color:#000 !important}#dropdown-button{position:relative;padding-right:20px}#dropdown-button:after{content:"▼";position:absolute;right:-18px;top:.159rem;transform:scale(0.7)}.sidebar-toggle{bottom:36px;left:29px;background-color:rgba(0,0,0,0);-webkit-touch-callout:none !important;-webkit-tap-highlight-color:transparent}.sidebar-toggle:hover .sidebar-toggle-button{opacity:1}.sidebar-toggle span{background-color:#fff;width:20px;height:3px;margin-bottom:5px}.sidebar{background-color:rgba(0,0,0,0);padding-right:5px !important}.app-name{display:none}.sidebar-nav{padding-top:20px}.sidebar-nav>ul:first-of-type{margin-top:5vh}.sidebar a{font-size:2.1rem !important;line-height:3.8rem;color:#fff !important}.sidebar li.active>a{border-right:0 !important}.sidebar li.nav-active{border-right:4px solid lime;padding-right:15px}.sidebar ul>ul{margin:0 0 12px 26px}.sidebar ul>li:first-child{margin-top:8px}.sidebar ul>ul a{font-size:2rem !important;line-height:3.1rem}.sidebar li img{display:none}.search{background-color:#fff;font-size:1.3rem}.matching-post{transform:scale(0.7);margin:-31px}.app-name-link img{padding:0 2px}.sidebar-nav>ul>li:first-of-type,.sidebar-nav>ul>ul>ul:nth-of-type(2),.sidebar-nav>ul>ul:first-of-type+li{display:none}body{background:#000;color:#fff;cursor:url("../../cursors/futuristic/pointer.cur"),auto;font-family:"PolySans Neutral","Source Sans Pro","Helvetica Neue",Arial,sans-serif}strong,.anchor span{color:#fff !important}main a{color:#64ffff !important}#repo-cover{display:none}main h2{text-align:center;margin:8.4rem 0 5rem !important;font-size:6rem !important;font-family:"Eurostile Extended Black",Georgia,Cambria,Times New Roman,Times,serif;text-transform:uppercase}main h2 span{word-break:break-word}main h2 a{pointer-events:none}.anchor:hover{text-decoration:none}main h3{font-size:3.6rem !important;margin:4.75rem 0 2rem !important}main p{font-size:1.78rem !important;line-height:2.65rem !important}main blockquote{border-left:4px solid lime !important}main blockquote strong{color:#ff0 !important}main blockquote em{color:#87a99d !important}main blockquote p{border-left:none;width:38vw;font-size:1.5rem !important;line-height:2.1rem !important;text-align:left;float:right;position:relative;left:29px}main blockquote:first-of-type p{margin-top:55px !important}main blockquote:nth-of-type(2) p{margin-top:25px !important}img[src*=separator]{display:none}main h2+p{font-size:2.75rem !important;text-align:center;margin-top:-85px !important}main li::marker{font-size:1.4rem}main pre{width:100%;margin:65px 0 !important}main code{line-height:2.1rem !important}main pre,main code,.punctuation{font-family:"Roboto Mono",Monaco,courier,monospace !important;position:relative;font-size:1.35rem !important;color:#fff !important;background:rgba(0,0,0,.35) !important;margin-bottom:1px}.punctuation{background-color:rgba(0,0,0,0) !important}main pre code::before{content:"";display:block;position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom, rgba(0, 128, 128, 0) 50%, rgba(0, 255, 255, 0.2) 50%);background-size:100% 5px}main pre code{border:#64ffff 2px solid;border-radius:12px !important;padding:26px !important}main p code{font-size:1.3rem !important;position:relative;bottom:2px;padding:2px 12px 5px !important;margin:0 5px !important;word-break:break-word;border:#fff 1px solid;border-radius:8px !important}main pre:after{display:none}.docsify-copy-code-button{font-size:1.1rem !important;background-color:rgba(0,0,0,0) !important;color:#fff !important;padding:13px 18px 13px 15px !important;right:30px !important;top:2px !important}.success,.error{font-size:1.1rem !important}main li pre{margin:65px 0 !important}.token.string{color:lime}.token.comment{color:#b6e3d4}.token.function,.token.keyword,.token.boolean,.token.number{color:#ffcb00}#shields{margin:125px 0 305px}#shields img{height:48px;margin:4px -2px}#intro+p{margin-top:-488px !important;font-size:3.3rem !important;color:#bbb;line-height:4.3rem !important;text-align:right;width:59%}#intro~ul:first-of-type{display:none}#intro h2 span{display:none !important}#feature-list{font-family:"IBM Plex Mono","Roboto Mono",Monaco,courier,monospace !important;font-size:1.4rem;color:lime;position:relative;float:right;height:100px;top:-311px;right:-90px;width:41%;margin-bottom:365px}h2{padding-top:211px}#-greasemonkey,#-chrome{text-align:center;margin-bottom:55px !important}main blockquote+p{font-size:1.85rem !important;width:50%;text-align:right}main pre+p,main pre+p+p{text-align:center;padding:0 10vw}main ol{margin-top:95px;padding:0 9vw 0 12vw !important}#usage~pre+p{text-align:left !important;margin:65px 0 0 !important}#usage~pre+p+p{text-align:right !important;float:right !important;margin-bottom:152px}#showcase~h3:nth-of-type(even):not(#contributors~*),#showcase~h3+p:nth-of-type(even):not(#contributors~*){text-align:right}#showcase~h3+p+p:not(#contributors~*),#showcase~h3+p+p~p:not(#contributors~*){text-align:center !important}#showcase-cta{font-size:2.5rem !important;line-height:3.5rem !important;padding:0 10vw;margin-top:-29px}main h3 img{height:39px !important;width:auto !important;margin:0 19px -2px 0}main h3 a{text-decoration:none;color:#fff !important}main h3 a:hover{text-decoration:underline #42b983}img[src*=promo-tile]{width:74vw;border:1px solid #fff;margin:32px 0}a[href*="mailto:showcase"]{word-break:keep-all}#contributors,#contributors~p{text-align:center !important}#contributors~p{padding:0 15vw}#contributors+p{font-family:"IBM Plex Mono","Roboto Mono",Monaco,courier,monospace !important;font-size:1.7rem !important;padding:0 12vw}#contributors~* img:not(#partners~* *){border-radius:50%;width:4.5vw}a[href="https://chat.openai.com"] img{border:2px solid #aeecff;border-radius:50%}#contributors~br{display:none}#partners+p{font-size:2rem !important;padding:0}#partners-collage img{margin-top:17px;width:100%;opacity:.6}#star-history{display:none}#footer{text-align:center;margin:-96px 0 -105px}#mc_embed_signup h2{margin:3rem 0 3.5rem !important;font-size:2.68rem !important;color:#fff;-webkit-text-stroke:1px #000}.mc-field-group{margin:-4px 0 95px}.mc-field-group input{height:55px}input#mce-EMAIL{border-radius:0;width:32%;min-width:250px;margin-bottom:18px;border:1px solid #ccc;outline:none}input#mce-EMAIL,input#mce-EMAIL::placeholder{font-size:1.55rem;text-indent:15px}#mc-embedded-subscribe{font-size:1.45rem;color:#fff;background:#000;cursor:pointer;width:200px;margin-left:-6px;border-radius:0;border:1px;border:#fff solid;position:relative;bottom:1px}#copyright-footer{font-family:"IBM Plex Mono","Roboto Mono",Monaco,courier,monospace !important;text-align:center;margin:69px 0 25px;font-size:1.15rem;line-height:29px}#copyright-footer span{position:relative;bottom:2px}#copyright-footer a{color:#fff !important;font-weight:400;text-decoration-line:underline}.back-to-top{margin:0;padding:0;border:none;cursor:pointer;outline:none;width:fit-content;height:fit-content;background:none;position:fixed;bottom:5%;right:3%;display:none;opacity:0;-webkit-touch-callout:none !important;-webkit-tap-highlight-color:transparent}.back-to-top svg>path{fill:#fff}@media screen and (min-width: 768px)and (max-width: 1279px){#intro~p:first-of-type{line-height:3.6rem !important}main h2{font-size:5rem !important}main h3{font-size:3.55rem !important}main p,main blockquote+p,main blockquote+p+p{font-size:1.85rem !important;line-height:2.7rem !important}main p code{font-size:1.5rem !important;padding:2px 9px !important;border-radius:8px !important}}@media screen and (max-width: 767px)and (orientation: portrait){article{padding:0}.markdown-section{max-width:96%}.github-corner svg{height:88px;width:88px}#kudoai{transform:scale(1.7);margin-top:5.2px}#language-selector{transform:scale(0.7);right:0 !important}#language-selector a{font-size:26px}#language-selector svg{width:28px;height:28px}.cover-main{padding-top:21px}section.cover,.cover-main{margin:0 !important}.cover-main>img{width:100%;margin-bottom:0}section.cover p{font-size:6.3vw !important;line-height:4.3vh !important}.cover-main>p:last-child a,.cover-main>p:last-child a:last-child{padding:12px 43px !important}blockquote{margin:0 !important}.sidebar-toggle{bottom:33px;left:5px;background:rgba(0,0,0,0) !important}.back-to-top{bottom:39px;right:10px}#shields{display:none}#intro~p:first-of-type{font-size:2.8rem !important;line-height:3.1rem !important;margin:-236px 0 490px !important}#feature-list{font-size:1.7rem !important;margin-bottom:-136px !important;position:relative;width:inherit;left:16px;top:-244px;float:none}main li::marker{font-size:1.84rem !important}main h2{font-size:3rem !important;padding:0 12px 0 16px !important}main h3{font-size:2.5rem !important}main h3 img{height:32px !important}main p{font-size:1.85rem !important;width:inherit !important;text-align:center !important;line-height:2.5rem !important;word-wrap:break-word}main blockquote{margin:0 18px !important}main blockquote p{float:none;left:0}main blockquote+p,main pre+p{font-size:1.65rem !important;margin:0 17px !important}main pre+p,main pre+p+p{padding:0 !important}main ol{width:inherit;margin:0 32px;padding:0 0 0 15px !important}main ol p{text-align:left !important;word-break:break-word}main code,.token{font-size:1.2rem !important}main pre{padding:0 .11rem !important}main li pre{padding:0 !important}main p code{font-size:1.45rem !important;padding:2px 8px !important}.docsify-copy-code-button{display:none}#usage~pre+p,#usage~pre+p+p{font-size:1.85rem !important;text-align:center !important;margin:63px 0 !important;float:none !important}#showcase~h3,#showcase~p{text-align:center !important}img[src*=promo-tile]{width:100% !important}#contributors+p{font-size:1.5rem !important;padding:0 5px !important}#contributors~p{padding:0 !important}#contributors~* img{width:69px !important}#mc_embed_signup h2{font-size:2.55rem !important;left:-21px !important}input#mce-EMAIL,input#mce-EMAIL::placeholder{text-indent:0 !important;text-align:center}} \ No newline at end of file diff --git a/docs/assets/styles/scss/style.scss b/docs/assets/styles/scss/style.scss index dba718b12..1d00779da 100644 --- a/docs/assets/styles/scss/style.scss +++ b/docs/assets/styles/scss/style.scss @@ -363,7 +363,9 @@ a[href*='mailto:showcase'] { word-break: keep-all } #contributors + p { /* contributors description */ font-family: 'IBM Plex Mono', 'Roboto Mono', Monaco, courier, monospace !important ; font-size: 1.7rem !important ; padding: 0 12vw } -#contributors ~ * img:not(#partners ~ * *) { width: 5.5vw } /* resize contributor avatars */ +#contributors ~ * img:not(#partners ~ * *) { /* avatars */ + border-radius: 50% ; /* add circular mask */ + width: 4.5vw } /* resize */ a[href='https://chat.openai.com'] img { /* outline ChatGPT's avatar */ border: 2px solid #aeecff ; border-radius: 50% } #contributors ~ br { display: none } /* hide trailing line break */