[
  {
    "path": ".babelrc",
    "content": "{\n  \"presets\": [\"es2015\"],\n  \"plugins\": [\"transform-es2015-destructuring\", \"transform-object-rest-spread\"]\n}\n"
  },
  {
    "path": ".gitattributes",
    "content": "content/src/scripts/libs/gitlab-dark.css binary\ncontent/src/scripts/libs/file-icons.css binary"
  },
  {
    "path": ".github/FUNDING.yml",
    "content": "# These are supported funding model platforms\n\ngithub: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]\npatreon: # Replace with a single Patreon username\nopen_collective: # Replace with a single Open Collective username\nko_fi: # Replace with a single Ko-fi username\ntidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel\ncommunity_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry\nliberapay: # Replace with a single Liberapay username\nissuehunt: # Replace with a single IssueHunt username\notechie: # Replace with a single Otechie username\ncustom: [\"https://www.buymeacoffee.com/tavyandy97\"]# Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']\n"
  },
  {
    "path": ".gitignore",
    "content": "node_modules\nbuild\n.idea\n*.DS_Store*"
  },
  {
    "path": "README.md",
    "content": "# 🌳 SpanTree\n\n[![](https://img.shields.io/github/stars/tavyandy97/span-tree?color=red&style=for-the-badge)](https://github.com/tavyandy97/span-tree)&nbsp;\n[![](https://img.shields.io/chrome-web-store/users/gcjikeldobhnaglcoaejmdlmbienoocg?style=for-the-badge)](https://chrome.google.com/webstore/detail/spantree-gitlab-tree/gcjikeldobhnaglcoaejmdlmbienoocg)&nbsp;\n[![](https://img.shields.io/chrome-web-store/v/gcjikeldobhnaglcoaejmdlmbienoocg?style=for-the-badge)](https://chrome.google.com/webstore/detail/spantree-gitlab-tree/gcjikeldobhnaglcoaejmdlmbienoocg)&nbsp;\n[![](https://img.shields.io/amo/v/spantree-gitlab-tree?style=for-the-badge)](https://addons.mozilla.org/en-GB/firefox/addon/spantree-gitlab-tree/)&nbsp;\n[![](https://img.shields.io/badge/Made%20With-React-%2340D8FC?color=dodgerblue&logo=react&style=for-the-badge)](https://reactjs.org/)\n\n![](docs//banner.png)\n\n## 📖 About\n\nBrowser extension that makes navigating a GitLab repository feel like a breeze by providing a familiar tree structure.<br>\n\n- [Chrome Extension](https://chrome.google.com/webstore/detail/spantree-gitlab-tree/gcjikeldobhnaglcoaejmdlmbienoocg)<br>\n- [Firefox Add-on](https://addons.mozilla.org/en-GB/firefox/addon/spantree-gitlab-tree)<br>\n\n![](docs/demo.gif)\n\n## ✨ Stargazers\n\n[![Stargazers repo roster for @tavyandy97/span-tree](https://reporoster.com/stars/tavyandy97/span-tree)](https://github.com/tavyandy97/span-tree/stargazers)\n\n## 💻 Development Setup\n\nPre-Requisites:\n\n1. Install Node.js (v16.16.0)\n\n2. Install gulp-cli\n\n   ```\n   $ npm install -g gulp-cli\n   ```\n\nSteps:\n\n1. Clone the repository to your local system\n\n2. Install all the dependencies\n\n   ```bash\n   $ npm install\n   ```\n\n3. Now to start the server which shall compile the extension in real time\n\n   ```\n   $ npm start\n   ```\n\n   (You'll observe a build folder being formed inside the project folder)\n\n4. Load the chrome extension from the build folder. ( first enable developer mode inside Chrome)\n\n   (For reference follow: https://thoughtbot.com/blog/how-to-make-a-chrome-extension)\n\n## 💳 Credits\n\nSpanTree uses the following open-source packages:\n\n- [react](https://github.com/facebook/react)\n- [redux](https://github.com/reduxjs/redux)\n- [webext-redux](https://github.com/tshaddix/webext-redux) (Now using [a fork](https://github.com/eduardoacskimlinks/webext-redux) - [ref](https://github.com/tshaddix/webext-redux/issues/244))\n- [file-icons](https://github.com/file-icons/atom)\n- [dark-gitlab](https://gitlab.com/vednoc/dark-gitlab)\n- [axios](https://github.com/axios/axios)\n- [immer](https://github.com/immerjs/immer)\n- [fzy.js](https://github.com/jhawthorn/fzy.js)\n"
  },
  {
    "path": "content/src/scripts/components/Backdrop/Backdrop.jsx",
    "content": "import React from \"react\";\n\nimport \"./styles.css\";\n\nfunction Backdrop({ showSearchbar, setShowSearchbar }) {\n  return showSearchbar ? (\n    <div\n      className=\"spantree-backdrop\"\n      onClick={() => setShowSearchbar(false)}\n    ></div>\n  ) : null;\n}\n\nexport default Backdrop;\n"
  },
  {
    "path": "content/src/scripts/components/Backdrop/index.js",
    "content": "export { default } from \"./Backdrop\";\n"
  },
  {
    "path": "content/src/scripts/components/Backdrop/styles.css",
    "content": ".spantree-backdrop {\n  width: 100%;\n  height: 100%;\n  position: fixed;\n  z-index: 5000;\n  left: 0;\n  top: 0;\n  background-color: rgba(0, 0, 0, 0.3);\n}\n"
  },
  {
    "path": "content/src/scripts/components/Loader/Loader.jsx",
    "content": "import React from \"react\";\n\nimport \"./styles.css\";\n\nfunction Loader({ size }) {\n  const dimInPixel = Number(size.replace(/[^0-9\\.]+/g, \"\"));\n\n  return (\n    <div\n      style={{\n        borderWidth: `${(16 * dimInPixel) / 120}px`,\n        width: size,\n        height: size,\n      }}\n      className=\"spantree-loader\"\n    ></div>\n  );\n}\n\nexport default Loader;\n"
  },
  {
    "path": "content/src/scripts/components/Loader/index.js",
    "content": "export { default } from \"./Loader\";\n"
  },
  {
    "path": "content/src/scripts/components/Loader/styles.css",
    "content": ".spantree-loader {\n  border-color: #f3f3f3;\n  border-radius: 50%;\n  border-style: solid;\n  border-top-color: rgb(237, 153, 44);\n  -webkit-animation: spantree-loader-spin 2s linear infinite; /* Safari */\n  animation: spantree-loader-spin 2s linear infinite;\n}\n\n/* Safari */\n@-webkit-keyframes spantree-loader-spin {\n  0% {\n    -webkit-transform: rotate(0deg);\n  }\n  100% {\n    -webkit-transform: rotate(360deg);\n  }\n}\n\n@keyframes spantree-loader-spin {\n  0% {\n    transform: rotate(0deg);\n  }\n  100% {\n    transform: rotate(360deg);\n  }\n}\n"
  },
  {
    "path": "content/src/scripts/components/Pane/Pane.jsx",
    "content": "import React, { useState, useEffect, useContext } from \"react\";\nimport { TabIdentifierClient } from \"chrome-tab-identifier\";\n\nimport SVG from \"../SVG\";\nimport TreeList from \"../../containers/TreeList/TreeList\";\nimport Resizer from \"../../containers/Resizer\";\nimport { OptionsContext } from \"../../contexts/OptionsContext\";\nimport { fetchURLDetails } from \"../../utils/url\";\nimport { switchTheme } from \"../../utils/themeList\";\nimport getHeaderBackgroundColor from \"../../utils/backgroundColor\";\nimport useEventListener from \"../../utils/useEventListener\";\n\nimport \"./styles.css\";\n\nconst tabIdClient = new TabIdentifierClient();\n\nfunction Pane({\n  toggleOpened,\n  width,\n  firstPageLoad,\n  setFirstPageLoad,\n  setShowSearchbarTrue,\n  reloading,\n  setReloading,\n}) {\n  const { options } = useContext(OptionsContext);\n  const [tabId, setTabId] = useState();\n  const [headerStyle, setHeaderStyle] = useState(\n    getHeaderBackgroundColor(options),\n  );\n\n  useEffect(() => {\n    tabIdClient.getTabId().then((tab) => {\n      setTabId(tab);\n    });\n  }, []);\n\n  useEffect(() => {\n    if (reloading) {\n      setReloading(false);\n    }\n  }, [reloading]);\n\n  useEventListener(\"popstate\", () => {\n    setReloading(true);\n  });\n\n  useEffect(() => {\n    setHeaderStyle(getHeaderBackgroundColor(options));\n  }, [options]);\n\n  const URLDetails = fetchURLDetails();\n\n  return (\n    <div className=\"spantree-tree-pane\" style={{ width: width + \"px\" }}>\n      <div className=\"spantree-pane-main\">\n        <div className=\"spantree-pane-header\" style={headerStyle}>\n          <div className=\"spantree-spread\">\n            <div className=\"spantree-pane-details\">\n              <SVG\n                icon=\"repo\"\n                height=\"12\"\n                style={{ verticalAlign: \"middle\" }}\n              />{\" \"}\n              {URLDetails.dirFormatted}\n            </div>\n            <div className=\"spantree-pane-icons\">\n              <span\n                onClick={() => {\n                  switchTheme();\n                  setTimeout(() => {\n                    setHeaderStyle(getHeaderBackgroundColor(options));\n                  }, 100);\n                }}\n                className=\"spantree-close-button\"\n              >\n                <SVG icon=\"half\" height=\"9\" />\n              </span>\n              <span onClick={toggleOpened} className=\"spantree-close-button\">\n                <SVG icon=\"close\" height=\"12\" />\n              </span>\n            </div>\n          </div>\n          <div className=\"spantree-spread\">\n            <div\n              className=\"spantree-pane-details\"\n              style={{ width: width - 12 + \"px\" }}\n            >\n              <SVG\n                icon=\"branch\"\n                height=\"12\"\n                style={{ verticalAlign: \"middle\" }}\n              />{\" \"}\n              {URLDetails.branchName}\n            </div>\n            <span\n              onClick={setShowSearchbarTrue}\n              className=\"spantree-close-button\"\n            >\n              <SVG icon=\"search\" height=\"9\" />\n            </span>\n          </div>\n        </div>\n        <div className=\"spantree-tree-body\">\n          {tabId ? (\n            <TreeList\n              firstPageLoad={firstPageLoad}\n              setFirstPageLoad={setFirstPageLoad}\n              tabId={tabId}\n            />\n          ) : null}\n        </div>\n      </div>\n      <Resizer />\n    </div>\n  );\n}\n\nexport default Pane;\n"
  },
  {
    "path": "content/src/scripts/components/Pane/index.js",
    "content": "export { default } from \"./Pane\";\n"
  },
  {
    "path": "content/src/scripts/components/Pane/styles.css",
    "content": ".spantree-tree-pane {\n  position: fixed;\n  display: flex;\n  box-sizing: border-box;\n  height: 100%;\n  right: 0px !important;\n  top: calc(0px + var(--header-height, 0px)) !important;\n  bottom: 0px !important;\n  left: 0px !important;\n  font-size: 0.8em;\n  z-index: 1000;\n  transform: translate3d(0px, 0px, 0px);\n  transition: transform 0.2s ease 0s;\n  box-shadow: 2px 0px 8px #00000070;\n}\n\n.spantree-pane-main {\n  height: 100%;\n  width: 100%;\n  position: absolute;\n}\n\n.spantree-pane-header {\n  height: var(--top-bar-height, 40px);\n  background-color: rgb(77, 61, 146);\n  border-bottom: 1px #404040 solid;\n  color: white;\n  padding: 5px;\n  display: flex;\n  flex-direction: column;\n  justify-content: space-around;\n}\n\n.spantree-close-button {\n  cursor: pointer;\n  margin: 0 4px;\n}\n\n.spantree-spread {\n  display: flex;\n  justify-content: space-between;\n}\n\n.spantree-tree-body {\n  height: 100%;\n  width: 100%;\n}\n\n.spantree-pane-details {\n  display: inline-block;\n  overflow: hidden;\n  white-space: nowrap;\n  text-overflow: ellipsis;\n  font-weight: bold;\n}\n\n.spantree-pane-icons {\n  min-width: 35px;\n}\n"
  },
  {
    "path": "content/src/scripts/components/SVG/SVG.jsx",
    "content": "import React from \"react\";\n\nimport Branch from \"./assets/Branch\";\nimport Repo from \"./assets/Repo\";\nimport Close from \"./assets/Close\";\nimport Half from \"./assets/Half\";\nimport Search from \"./assets/Search\";\n\nfunction SVG({ icon, height, style }) {\n  switch (icon) {\n    case \"branch\":\n      return <Branch height={height} style={style} />;\n    case \"repo\":\n      return <Repo height={height} style={style} />;\n    case \"close\":\n      return <Close height={height} style={style} />;\n    case \"half\":\n      return <Half height={height} style={style} />;\n    case \"search\":\n      return <Search height={height} style={style} />;\n    default:\n      return \"faulty svg\";\n  }\n}\n\nexport default SVG;\n"
  },
  {
    "path": "content/src/scripts/components/SVG/assets/Branch.jsx",
    "content": "import React from \"react\";\n\nfunction Branch({ height, style }) {\n  let heightSVG = height ? height : \"16\";\n  let widthSVG = height ? `${(10 * height) / 16}` : \"10\";\n  return (\n    <svg height={heightSVG} width={widthSVG} viewBox=\"0 0 10 16\" style={style}>\n      <path d=\"M10 5c0-1.11-.89-2-2-2a1.993 1.993 0 00-1 3.72v.3c-.02.52-.23.98-.63 1.38-.4.4-.86.61-1.38.63-.83.02-1.48.16-2 .45V4.72a1.993 1.993 0 00-1-3.72C.88 1 0 1.89 0 3a2 2 0 001 1.72v6.56c-.59.35-1 .99-1 1.72 0 1.11.89 2 2 2 1.11 0 2-.89 2-2 0-.53-.2-1-.53-1.36.09-.06.48-.41.59-.47.25-.11.56-.17.94-.17 1.05-.05 1.95-.45 2.75-1.25S8.95 7.77 9 6.73h-.02C9.59 6.37 10 5.73 10 5zM2 1.8c.66 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2C1.35 4.2.8 3.65.8 3c0-.65.55-1.2 1.2-1.2zm0 12.41c-.66 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2zm6-8c-.66 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2z\" />\n    </svg>\n  );\n}\n\nexport default Branch;\n"
  },
  {
    "path": "content/src/scripts/components/SVG/assets/Close.jsx",
    "content": "import React from \"react\";\n\nfunction Close({ height, style }) {\n  let heightSVG = height ? height : \"16\";\n  let widthSVG = height ? `${(3 * height) / 4}` : \"12\";\n  return (\n    <svg width={widthSVG} height={heightSVG} viewBox=\"0 0 12 12\" style={style}>\n      <path d=\"M7.48 8l3.75 3.75-1.48 1.48L6 9.48l-3.75 3.75-1.48-1.48L4.52 8 .77 4.25l1.48-1.48L6 6.52l3.75-3.75 1.48 1.48L7.48 8z\" />\n    </svg>\n  );\n}\n\nexport default Close;\n"
  },
  {
    "path": "content/src/scripts/components/SVG/assets/Half.jsx",
    "content": "import React from \"react\";\n\nfunction Half({ height, style }) {\n  let heightSVG = height ? height : \"9\";\n  let widthSVG = height ? height : \"9\";\n  return (\n    <svg height={heightSVG} width={widthSVG} viewBox=\"0 0 20 20\" style={style}>\n      <g\n        id=\"Page-1\"\n        stroke=\"none\"\n        strokeWidth=\"1\"\n        fill=\"none\"\n        fillRule=\"evenodd\"\n      >\n        <g\n          id=\"Dribbble-Light-Preview\"\n          transform=\"translate(-180.000000, -4199.000000)\"\n          fill=\"#ffffff\"\n        >\n          <g id=\"icons\" transform=\"translate(56.000000, 160.000000)\">\n            <path\n              d=\"M126,4049 C126,4044.589 129.589,4041 134,4041 L134,4057 C129.589,4057 126,4053.411 126,4049 M134,4039 C128.477,4039 124,4043.477 124,4049 C124,4054.523 128.477,4059 134,4059 C139.523,4059 144,4054.523 144,4049 C144,4043.477 139.523,4039 134,4039\"\n              id=\"contrast-[#907]\"\n            ></path>\n          </g>\n        </g>\n      </g>\n    </svg>\n  );\n}\n\nexport default Half;\n"
  },
  {
    "path": "content/src/scripts/components/SVG/assets/Repo.jsx",
    "content": "import React from \"react\";\n\nfunction Repo({ height, style }) {\n  let heightSVG = height ? height : \"16\";\n  let widthSVG = height ? `${(3 * height) / 4}` : \"12\";\n  return (\n    <svg width={widthSVG} height={heightSVG} viewBox=\"0 0 12 16\" style={style}>\n      <path d=\"M4 9H3V8h1v1zm0-3H3v1h1V6zm0-2H3v1h1V4zm0-2H3v1h1V2zm8-1v12c0 .55-.45 1-1 1H6v2l-1.5-1.5L3 16v-2H1c-.55 0-1-.45-1-1V1c0-.55.45-1 1-1h10c.55 0 1 .45 1 1zm-1 10H1v2h2v-1h3v1h5v-2zm0-10H2v9h9V1z\" />\n    </svg>\n  );\n}\n\nexport default Repo;\n"
  },
  {
    "path": "content/src/scripts/components/SVG/assets/Search.jsx",
    "content": "import React from \"react\";\n\nfunction Search({ height, style }) {\n  let heightSVG = height ? height : \"9\";\n  let widthSVG = height ? height : \"9\";\n  return (\n    <svg\n      height={heightSVG}\n      width={widthSVG}\n      style={style}\n      viewBox=\"0 0 515.558 515.558\"\n      xmlns=\"http://www.w3.org/2000/svg\"\n    >\n      <path d=\"m378.344 332.78c25.37-34.645 40.545-77.2 40.545-123.333 0-115.484-93.961-209.445-209.445-209.445s-209.444 93.961-209.444 209.445 93.961 209.445 209.445 209.445c46.133 0 88.692-15.177 123.337-40.547l137.212 137.212 45.564-45.564c0-.001-137.214-137.213-137.214-137.213zm-168.899 21.667c-79.958 0-145-65.042-145-145s65.042-145 145-145 145 65.042 145 145-65.043 145-145 145z\" />\n    </svg>\n  );\n}\n\nexport default Search;\n"
  },
  {
    "path": "content/src/scripts/components/SVG/index.js",
    "content": "export { default } from \"./SVG\";\n"
  },
  {
    "path": "content/src/scripts/components/Toggler/Toggler.jsx",
    "content": "import React from \"react\";\n\nimport \"./styles.css\";\n\nfunction Toggle({ pinned, handleClick }) {\n  return (\n    <div className=\"spantree-toggler\" onClick={handleClick}>\n      SpanTree ▼\n    </div>\n  );\n}\n\nexport default Toggle;\n"
  },
  {
    "path": "content/src/scripts/components/Toggler/index.js",
    "content": "export { default } from \"./Toggler\";\n"
  },
  {
    "path": "content/src/scripts/components/Toggler/styles.css",
    "content": ".spantree-toggler {\n  position: fixed;\n  padding: 4px 8px;\n  top: calc(\n    40% + var(--header-height, 0px) + var(--top-bar-height, 0px) +\n      var(--system-header-height, 0px) + var(--performance-bar-height, 0px)\n  );\n  transform: rotate(-90deg);\n  transform-origin: top left;\n  border-radius: 0px 0px 4px 4px;\n  cursor: pointer;\n  z-index: 10;\n  box-shadow: 0px 0px 5px #000000d9;\n  color: white;\n  background: rgb(77, 61, 146);\n}\n"
  },
  {
    "path": "content/src/scripts/components/TreeItem/TreeItem.jsx",
    "content": "import React, { useEffect, useState, useContext } from \"react\";\n\nimport { OptionsContext } from \"../../contexts/OptionsContext\";\nimport { fetchURLDetails } from \"../../utils/url\";\nimport fileIcons from \"../../utils/file-icons\";\n\nimport \"./styles.css\";\n\nfunction TreeItem({\n  width,\n  name,\n  isTree,\n  path,\n  close,\n  open,\n  children,\n  remainingURL,\n  rendering,\n  setRendering,\n  setClicked,\n  scrolling,\n  setScrolling,\n}) {\n  const [opening, setOpening] = useState(false);\n  const { options } = useContext(OptionsContext);\n\n  const getItemURL = () => {\n    const URLDetails = fetchURLDetails();\n    return (\"compatibility-mode\" in options && options[\"compatibility-mode\"]) ?\n      `${window.location.origin}/${\n        URLDetails.dirFormatted\n      }/blob/${URLDetails.branchName}/${path.join(\"/\")}`:\n      `${window.location.origin}/${\n        URLDetails.dirFormatted\n      }/-/blob/${URLDetails.branchName}/${path.join(\"/\")}`;\n  }\n\n  const handleClick = (event) => {\n    if (isTree) {\n      event.preventDefault();\n      if (isTree.isOpen) {\n        close(path);\n      } else {\n        open(path);\n      }\n    } else {\n      setClicked(true);\n    }\n  };\n\n  const tryTreeItemActiveBeforeReload = () => {\n    let isItemActive = false;\n    if (remainingURL.length != 0) {\n      let activeIconName = remainingURL.split(\"/\")[0];\n      let urlRemaining = remainingURL.substring(activeIconName.length + 1);\n      if (decodeURIComponent(activeIconName) === name) {\n        if (isTree && !isTree.isOpen) {\n          isTree.isOpen = true;\n          open(path);\n          setOpening(true);\n        }\n        if (urlRemaining.length === 0) {\n          isItemActive = true;\n          setRendering(false);\n          setClicked(false);\n        }\n      } else {\n        urlRemaining = \"\";\n      }\n      return { urlRemaining, isItemActive };\n    } else {\n      return { urlRemaining: \"\", isItemActive };\n    }\n  };\n\n  const tryTreeItemActiveAfterReload = () => {\n    let isItemActive = false;\n    if (remainingURL.length != 0) {\n      let activeIconName = remainingURL.split(\"/\")[0];\n      let urlRemaining = remainingURL.substring(activeIconName.length + 1);\n      if (decodeURIComponent(activeIconName) === name) {\n        if (urlRemaining.length === 0) {\n          isItemActive = true;\n        }\n      } else {\n        urlRemaining = \"\";\n      }\n      return { urlRemaining, isItemActive };\n    } else {\n      return { urlRemaining: \"\", isItemActive };\n    }\n  };\n\n  let treeItemActive = null;\n  if (rendering) {\n    treeItemActive = tryTreeItemActiveBeforeReload();\n  } else {\n    treeItemActive = tryTreeItemActiveAfterReload();\n  }\n\n  useEffect(() => {\n    if (treeItemActive.isItemActive) {\n      setOpening(true);\n    }\n  }, []);\n\n  useEffect(() => {\n    if (opening && scrolling) {\n      const treeList = document.querySelector(\".spantree-tree-list\");\n      const openingItem = document.querySelector(\".opening\");\n      document\n        .querySelector(\".spantree-tree-list\")\n        .scrollTo(\n          openingItem.offsetLeft - 25,\n          openingItem.offsetTop - treeList.clientHeight / 2,\n        );\n      setOpening(false);\n      if (treeItemActive.isItemActive) {\n        setScrolling(false);\n      }\n    }\n  }, [opening]);\n\n  return (\n    <li>\n      <a href={getItemURL()}\n        className={\n          opening ? \"spantree-tree-element opening\" : \"spantree-tree-element\"\n        }\n        onClick={handleClick}\n      >\n        <div\n          className={\n            treeItemActive.isItemActive\n              ? \"spantree-full-width-row spantree-active-row\"\n              : \"spantree-full-width-row\"\n          }\n        ></div>\n        <div className=\"spantree-tree-icon\">\n          {isTree ? (\n            isTree.isOpen ? (\n              <i className=\"tree-arrow-down-icon spantree-arrow\"></i>\n            ) : (\n              <i className=\"tree-arrow-right-icon spantree-arrow\"></i>\n            )\n          ) : (\n            \" \"\n          )}\n        </div>\n        <div className=\"spantree-file-icon\">\n          <i className={fileIcons.getClassWithColor(name, isTree)}></i>\n        </div>\n        <div className=\"spantree-item-name\">{name}</div>\n      </a>\n      {isTree && isTree.isOpen && (\n        <ul className=\"spantree-child-list\">\n          {Object.keys(children).map((key) => (\n            <TreeItem\n              key={key}\n              width={width}\n              name={children[key].name}\n              isTree={children[key].isTree}\n              path={children[key].path}\n              children={children[key].children}\n              open={open}\n              close={close}\n              remainingURL={treeItemActive.urlRemaining}\n              rendering={rendering}\n              setRendering={setRendering}\n              setClicked={setClicked}\n              scrolling={scrolling}\n              setScrolling={setScrolling}\n            />\n          ))}\n        </ul>\n      )}\n    </li>\n  );\n}\n\nexport default TreeItem;\n"
  },
  {
    "path": "content/src/scripts/components/TreeItem/index.js",
    "content": "export { default } from \"./TreeItem\";\n"
  },
  {
    "path": "content/src/scripts/components/TreeItem/styles.css",
    "content": ".spantree-tree-element {\n  padding: 2px 15px 2px 0px;\n  display: flex;\n  height: 24px;\n  align-items: center;\n  width: max-content;\n  text-decoration: none;\n  color: inherit;\n}\n\n.spantree-tree-element:hover {\n  text-decoration: none;\n  color: inherit;\n}\n\n.spantree-child-list {\n  list-style-type: none;\n  padding: 0px 0px 0px 20px;\n}\n\n.spantree-tree-icon {\n  width: 16px;\n  text-align: center;\n  margin-right: 2px;\n  padding-bottom: 2px;\n}\n\n.spantree-file-icon {\n  width: 22px;\n  text-align: left;\n}\n\n.spantree-file-icon i {\n  font-style: normal;\n}\n\n.spantree-item-name {\n  width: max-content;\n}\n\n.spantree-arrow {\n  font-style: normal;\n}\n\n.spantree-full-width-row {\n  position: absolute;\n  height: 24px;\n  width: 100%;\n  left: 0px;\n  z-index: 5;\n  opacity: 25%;\n  background: transparent;\n  transition: 0.2s background;\n  box-sizing: border-box;\n}\n\n.spantree-full-width-row:hover {\n  background: #6464ff;\n  cursor: pointer;\n}\n\n.spantree-full-width-row:active {\n  background: blue;\n}\n\n.spantree-active-row {\n  border: 3px solid black;\n  background: darkslategrey;\n}\n"
  },
  {
    "path": "content/src/scripts/containers/Resizer/Resizer.jsx",
    "content": "import React, { useRef } from \"react\";\nimport { connect } from \"react-redux\";\n\nimport { setWidth } from \"../../../../../event/src/actions/UI\";\nimport { throttle } from \"../../utils/throttle\";\n\nimport \"./styles.css\";\n\nconst Resizer = ({ width, setWidth }) => {\n  const transitionProps = useRef(\"\");\n\n  const mouseDownListener = () => {\n    document.body.style.userSelect = \"none\";\n    const sidebar =\n      document.querySelector(\".nav-sidebar\") ||\n      document.querySelector(\".super-sidebar\");\n    transitionProps.current = sidebar.style.transition;\n    sidebar.style.transition = \"none\";\n    document.addEventListener(\"mousemove\", throttledMouseMoveListener);\n    document.addEventListener(\"mouseup\", mouseUpListener);\n  };\n\n  const mouseUpListener = () => {\n    document.body.style.userSelect = \"auto\";\n    const sidebar =\n      document.querySelector(\".nav-sidebar\") ||\n      document.querySelector(\".super-sidebar\");\n    sidebar.style.transition = transitionProps.current;\n    document.removeEventListener(\"mousemove\", throttledMouseMoveListener);\n    document.removeEventListener(\"mouseup\", mouseUpListener);\n  };\n\n  const mouseMoveListener = (event) => {\n    setWidth(event.clientX);\n  };\n\n  const throttledMouseMoveListener = throttle(mouseMoveListener, 16);\n\n  return (\n    <div\n      className=\"spantree-resizer\"\n      unselectable=\"on\"\n      style={{ left: width + \"px\" }}\n      onMouseDown={mouseDownListener}\n    />\n  );\n};\n\nconst mapStateToProps = (state) => {\n  return {\n    width: state.width,\n  };\n};\n\nconst mapDispatchToProps = { setWidth };\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Resizer);\n"
  },
  {
    "path": "content/src/scripts/containers/Resizer/index.js",
    "content": "export { default } from \"./Resizer\";\n"
  },
  {
    "path": "content/src/scripts/containers/Resizer/styles.css",
    "content": ".spantree-resizer {\n  width: 8px;\n  position: relative;\n  opacity: 100%;\n}\n\n.spantree-resizer:hover {\n  cursor: col-resize;\n}\n"
  },
  {
    "path": "content/src/scripts/containers/SearchBar/SearchBar.jsx",
    "content": "import React, { useState, useEffect, useCallback, Fragment } from \"react\";\nimport { connect } from \"react-redux\";\n\nimport Backdrop from \"../../components/Backdrop\";\nimport SearchBarResult from \"./SearchBarResult\";\nimport { getSearchTerms } from \"../../../../../event/src/actions/API\";\nimport { fetchURLDetails } from \"../../utils/url\";\nimport useEventListener from \"../../utils/useEventListener\";\n\nimport \"./styles.css\";\n\nfunction SearchBar({\n  worker,\n  showSearchbar,\n  setShowSearchbar,\n  searchTerms,\n  getSearchTerms,\n  options,\n}) {\n  const [searchResults, setSearchResults] = useState([]);\n  const [searchFor, setSearchFor] = useState(\"\");\n  const [activeResult, setActiveResult] = useState(0);\n  const [resultsLoading, setResultsLoading] = useState(0);\n  const [debounceTimerId, setDebounceTimerId] = useState(null);\n\n  const defaultOptions = { \"auto-theme\": false, \"compatibility-mode\": true };\n  Object.keys(defaultOptions).forEach((key) => {\n    if (key in options) {\n      defaultOptions[key] = options.data[key];\n    }\n  });\n\n  useEffect(() => {\n    const URLDetails = fetchURLDetails();\n    getSearchTerms({\n      repoName: URLDetails.dirFormatted,\n      branchName: URLDetails.branchName,\n      compatibilityMode:\n        \"compatibility-mode\" in defaultOptions &&\n        defaultOptions[\"compatibility-mode\"],\n    });\n    worker.addEventListener(\"message\", (event) => {\n      const searchResultsFromWorker = event.data;\n      setSearchResults(searchResultsFromWorker);\n      setResultsLoading((resultsLoading) => resultsLoading - 1);\n    });\n  }, []);\n\n  const handleRedirect = (id, inNewTab) => {\n    const URLDetails = fetchURLDetails();\n    let finalURL = null;\n    if (\n      \"compatibility-mode\" in defaultOptions &&\n      defaultOptions[\"compatibility-mode\"]\n    ) {\n      finalURL = `${window.location.origin}/${URLDetails.dirFormatted}/blob/${\n        URLDetails.branchName\n      }/${encodeURI(searchResults[id])}`;\n    } else {\n      finalURL = `${window.location.origin}/${URLDetails.dirFormatted}/-/blob/${\n        URLDetails.branchName\n      }/${encodeURI(searchResults[id])}`;\n    }\n    if (inNewTab) {\n      window.open(finalURL, \"_blank\");\n      // for overwriting default behavior on Firefox\n      window.focus();\n    } else {\n      window.location.href = finalURL;\n    }\n  };\n\n  const handleKeyDown = useCallback(\n    (event) => {\n      const isActionKey = isMac ? event.metaKey : event.ctrlKey;\n      if (isActionKey && (event.key === \"p\" || event.key === \"P\")) {\n        event.preventDefault();\n        event.stopPropagation();\n        setShowSearchbar(true);\n      } else if (isActionKey && event.key === \"Enter\" && showSearchbar) {\n        handleRedirect(activeResult, true);\n      } else if (event.key === \"Enter\" && showSearchbar) {\n        handleRedirect(activeResult, false);\n      } else if (event.key === \"ArrowUp\" && showSearchbar) {\n        event.preventDefault();\n        setActiveResult(\n          (activeResult) =>\n            (searchResults.length + activeResult - 1) % searchResults.length,\n        );\n      } else if (event.key === \"ArrowDown\" && showSearchbar) {\n        event.preventDefault();\n        setActiveResult(\n          (activeResult) => (activeResult + 1) % searchResults.length,\n        );\n      } else if (event.key === \"Escape\" && showSearchbar) {\n        setShowSearchbar(false);\n      }\n    },\n    [showSearchbar, activeResult, searchResults],\n  );\n\n  useEventListener(\"keydown\", handleKeyDown);\n\n  useEffect(() => {\n    setResultsLoading((resultsLoading) => resultsLoading + 1);\n    workerCall();\n  }, [searchTerms]);\n\n  useEffect(() => {\n    setActiveResult(0);\n    debouncedWorkerCall();\n  }, [searchFor.replace(/ /g, \"\")]);\n\n  useEffect(() => {\n    const activeItem = document.querySelector(\".spantree-result-active\");\n    if (activeItem) {\n      activeItem.scrollIntoView({\n        behavior: \"auto\", // Defines the transition animation.\n        block: \"nearest\", // Defines vertical alignment.\n        inline: \"start\", // Defines horizontal alignment.\n      });\n    }\n  }, [activeResult]);\n\n  const isMac = [\"Macintosh\", \"MacIntel\", \"MacPPC\", \"Mac68K\"].reduce(\n    (accumulator, currentValue) => {\n      return (\n        window.navigator.platform.indexOf(currentValue) !== -1 || accumulator\n      );\n    },\n    false,\n  );\n\n  const workerCall = () => {\n    worker.postMessage({\n      searchTerms: searchTerms,\n      URLDetails: fetchURLDetails(),\n      query: searchFor.replace(/ /g, \"\"),\n    });\n  };\n\n  const debouncedWorkerCall = () => {\n    if (debounceTimerId) {\n      clearTimeout(debounceTimerId);\n    } else {\n      setResultsLoading((resultsLoading) => resultsLoading + 1);\n    }\n\n    setDebounceTimerId(\n      setTimeout(() => {\n        workerCall();\n        setDebounceTimerId(null);\n      }, 500),\n    );\n  };\n\n  if (!showSearchbar) return null;\n\n  return (\n    <Fragment>\n      <Backdrop\n        showSearchbar={showSearchbar}\n        setShowSearchbar={setShowSearchbar}\n      />\n      <div className=\"spantree-search\">\n        <div className=\"spantree-searchbar\">\n          <input\n            type=\"text\"\n            value={searchFor}\n            placeholder=\"🔍  Search in Repository Branch\"\n            onChange={(e) => setSearchFor(e.target.value)}\n            autoFocus\n          />\n        </div>\n        <div\n          className={\n            resultsLoading <= 0\n              ? \"spantree-search-results\"\n              : \"spantree-search-results  spantree-results-loading\"\n          }\n        >\n          {searchResults.map((resultTerm, index) => {\n            return (\n              <SearchBarResult\n                key={index}\n                index={index}\n                query={searchFor.replace(/ /g, \"\")}\n                term={resultTerm}\n                activeResult={activeResult}\n                setActiveResult={setActiveResult}\n                resultsLoading={resultsLoading}\n                handleRedirect={handleRedirect}\n              />\n            );\n          })}\n        </div>\n        <div className=\"spantree-search-help\">\n          <span className=\"spantree-search-help-item\">\n            <code>\n              {isMac ? (\n                <span className=\"spantree-search-help-item-icon\">⌘</span>\n              ) : (\n                \"Ctrl\"\n              )}{\" \"}\n              + P\n            </code>{\" \"}\n            to Search\n          </span>\n          <span className=\"spantree-search-help-item\">\n            <code>{isMac ? \"return\" : \"Enter\"}</code> to Open\n          </span>\n          <span className=\"spantree-search-help-item\">\n            <code>\n              {isMac ? (\n                <span className=\"spantree-search-help-item-icon\">⌘</span>\n              ) : (\n                \"Ctrl\"\n              )}{\" \"}\n              + {isMac ? \"return\" : \"Enter\"}\n            </code>{\" \"}\n            to Open in New Tab\n          </span>\n        </div>\n      </div>\n    </Fragment>\n  );\n}\n\nconst mapStateToProps = (state) => {\n  return {\n    searchTerms: state.searchTerms,\n    options: state.options,\n  };\n};\n\nconst mapDispatchToProps = { getSearchTerms };\n\nexport default connect(mapStateToProps, mapDispatchToProps)(SearchBar);\n"
  },
  {
    "path": "content/src/scripts/containers/SearchBar/SearchBarResult.jsx",
    "content": "import React, { Fragment } from \"react\";\nimport * as fzy from \"fzy.js\";\n\nimport fileIcons from \"../../utils/file-icons\";\n\nfunction getAlternatingArray(resultsLoading, query, term) {\n  const arr = fzy.positions(query, term);\n  if (resultsLoading > 0 || query.length === 0) {\n    return [];\n  }\n  let l = 1;\n  const res = [arr[0]];\n  for (let i = 1; i <= arr.length - 1; i++) {\n    let diff = arr[i] - arr[i - 1];\n    if (diff === 1) {\n      l++;\n    } else {\n      res.push(l);\n      res.push(diff - 1);\n      l = 1;\n    }\n  }\n  res.push(l);\n\n  return res;\n}\n\nfunction renderHighlightedFileLocation(resultsLoading, query, term) {\n  const arr = getAlternatingArray(resultsLoading, query, term);\n  let isFzy = false;\n  return (\n    <Fragment>\n      {arr.map((len, i) => {\n        let charClass = \"\";\n        if (isFzy) {\n          charClass = \"spantree-in-fzy\";\n        }\n        isFzy = !isFzy;\n        const currString = term.substr(0, len);\n        term = term.substr(len);\n        return currString.length === 0 ? null : (\n          <span key={i} className={charClass}>\n            {currString}\n          </span>\n        );\n      })}\n      {term.length === 0 ? null : (\n        <span className=\"spantree-search-term\">{term}</span>\n      )}\n    </Fragment>\n  );\n}\n\nfunction SearchBarResult({\n  index,\n  term,\n  query,\n  activeResult,\n  setActiveResult,\n  resultsLoading,\n  handleRedirect,\n}) {\n  const fileLocation = term.split(\"/\");\n  const fileName = fileLocation.splice(-1);\n  const resultClass =\n    index === activeResult\n      ? \"spantree-search-result spantree-result-active\"\n      : \"spantree-search-result\";\n\n  return (\n    <div\n      className={resultClass}\n      onClick={() => {\n        handleRedirect(index);\n      }}\n      onMouseEnter={() => {\n        setActiveResult(index);\n      }}\n    >\n      <div className=\"spantree-search-file\">\n        <div className=\"spantree-file-icon\">\n          <i className={fileIcons.getClassWithColor(fileName, false)}></i>\n        </div>\n        <div className=\"spantree-search-filename\">{fileName}</div>\n      </div>\n      <div className=\"spantree-search-filelocation\">\n        {renderHighlightedFileLocation(resultsLoading, query, term)}\n      </div>\n    </div>\n  );\n}\n\nexport default SearchBarResult;\n"
  },
  {
    "path": "content/src/scripts/containers/SearchBar/index.js",
    "content": "export { default } from \"./SearchBar\";\n"
  },
  {
    "path": "content/src/scripts/containers/SearchBar/styles.css",
    "content": ".spantree-search {\n  position: fixed;\n  z-index: 6000;\n  background-color: white;\n  min-width: 40%;\n  border: 1px solid #ccc;\n  box-shadow: 0px 0px 10px #00000040;\n  left: 30%;\n  top: 12%;\n  box-sizing: border-box;\n  border-radius: 3px;\n  transition: all 0.3s ease-out;\n}\n\n.spantree-searchbar {\n  padding: 10px;\n}\n\n.spantree-searchbar input {\n  width: 100%;\n  padding: 8px;\n  border: 1px solid #bbbbbb;\n  box-sizing: border-box;\n}\n\n.spantree-searchbar input:focus {\n  border: 1px solid rgb(77, 61, 146);\n  outline: none;\n  box-shadow: 0px 0px 10px rgba(77, 61, 146, 0.25);\n}\n\n.spantree-search-results {\n  overflow-y: scroll;\n  overflow-x: hidden;\n  max-height: 35vh;\n}\n\n.spantree-results-loading {\n  color: grey;\n}\n\n.spantree-search-result {\n  overflow-x: auto;\n  padding: 5px 15px;\n}\n\n.spantree-search-result:hover {\n  cursor: pointer;\n}\n\n.spantree-result-active {\n  background: rgba(211, 211, 211, 0.5);\n}\n\n.spantree-search-result::-webkit-scrollbar {\n  height: 0px;\n}\n\n.spantree-search-file {\n  display: flex;\n  font-size: 15px;\n}\n\n.spantree-search-filename {\n  font-weight: 600;\n  padding-left: 2px;\n}\n\n.spantree-search-filelocation {\n  color: #919191;\n  padding-left: 23px;\n}\n\n.spantree-in-fzy {\n  color: rgb(77, 61, 146);\n  font-weight: bold;\n}\n\n.spantree-search-term {\n  margin-right: 10px;\n}\n\n.spantree-search-help {\n  padding: 3px 8px 6px 8px;\n  border-top: 1px solid #dddddd;\n  font-size: 14px;\n}\n\n.spantree-search-help code {\n  padding: 4px 6px;\n}\n\n.spantree-search-help-item {\n  padding-right: 16px;\n}\n\n.spantree-search-help-item-icon {\n  position: relative;\n  font-size: 18px;\n  top: 2px;\n}\n"
  },
  {
    "path": "content/src/scripts/containers/TreeList/TreeList.jsx",
    "content": "import React, { useState, useEffect, useRef, useCallback } from \"react\";\nimport { connect } from \"react-redux\";\n\nimport Loader from \"../../components/Loader\";\nimport TreeItem from \"../../components/TreeItem\";\nimport { fetchURLDetails } from \"../../utils/url\";\nimport {\n  getInitialTree,\n  openDir,\n  closeDir,\n} from \"../../../../../event/src/actions/API\";\nimport { setClicked } from \"../../../../../event/src/actions/UI\";\n\nimport \"./styles.css\";\n\nconst renderTreeItems = (\n  tree,\n  width,\n  setClicked,\n  close,\n  open,\n  rendering,\n  setRendering,\n  scrolling,\n  setScrolling,\n) => {\n  const URLDetails = fetchURLDetails();\n\n  return (\n    <div className=\"spantree-tree-list\">\n      <ul className=\"spantree-parent-list\">\n        {Object.keys(tree).map((key) => (\n          <TreeItem\n            width={width}\n            key={key}\n            name={tree[key].name}\n            isTree={tree[key].isTree}\n            path={tree[key].path}\n            children={tree[key].children}\n            open={open}\n            close={close}\n            remainingURL={URLDetails.baseRemovedURL}\n            rendering={rendering}\n            setRendering={setRendering}\n            setClicked={setClicked}\n            scrolling={scrolling}\n            setScrolling={setScrolling}\n          />\n        ))}\n      </ul>\n    </div>\n  );\n};\n\nfunction TreeList({\n  firstPageLoad,\n  setFirstPageLoad,\n  tabId,\n  tree,\n  width,\n  clicked,\n  setClicked,\n  getInitialTree,\n  closeDir,\n}) {\n  const [loading, setLoading] = useState(true);\n  const [rendering, setRendering] = useState(false);\n  const [scrolling, setScrolling] = useState(false);\n  const initialMount = useRef(true);\n\n  const URLDetails = fetchURLDetails();\n\n  const shouldGetTree = () => {\n    if (!(tree && tree[tabId])) {\n      return true;\n    }\n    if (clicked) {\n      return false;\n    }\n    return firstPageLoad;\n  };\n\n  useEffect(() => {\n    if (URLDetails.baseRemovedURL.length === 0) {\n      setRendering(false);\n      setScrolling(false);\n    } else {\n      setRendering(true);\n      setScrolling(true);\n    }\n    if (shouldGetTree()) {\n      getInitialTree(\n        URLDetails.projectId ? URLDetails.projectId : URLDetails.dirURLParam,\n        {\n          ref: URLDetails.branchNameURL,\n        },\n        {\n          repoName: URLDetails.dirFormatted,\n          branchName: URLDetails.branchName,\n          tabId,\n        },\n      );\n    }\n    setFirstPageLoad(false);\n  }, []);\n\n  useEffect(() => {\n    if (initialMount.current && shouldGetTree()) {\n      initialMount.current = false;\n    } else if (loading && tree && tree[tabId]) {\n      setLoading(false);\n    }\n  }, [tree[tabId]]);\n\n  if (loading)\n    return (\n      <div className=\"spantree-loader-wrapper\">\n        <Loader size=\"64px\" />\n      </div>\n    );\n\n  const closeDirectory = (path) => {\n    closeDir(path, {\n      repoName: URLDetails.dirFormatted,\n      branchName: URLDetails.branchName,\n      tabId,\n    });\n  };\n\n  const openDirectory = (path) => {\n    openDir(\n      URLDetails.projectId ? URLDetails.projectId : URLDetails.dirURLParam,\n      path,\n      {\n        ref: URLDetails.branchNameURL,\n        path: encodeURIComponent(path.join(\"/\")),\n      },\n      {\n        repoName: URLDetails.dirFormatted,\n        branchName: URLDetails.branchName,\n        path: path,\n        tabId,\n      },\n    );\n  };\n\n  return renderTreeItems(\n    tree[tabId],\n    width,\n    setClicked,\n    closeDirectory,\n    openDirectory,\n    rendering,\n    setRendering,\n    scrolling,\n    setScrolling,\n  );\n}\n\nconst mapStateToProps = (state) => {\n  return {\n    tree: state.tree,\n    width: state.width,\n    clicked: state.clicked,\n  };\n};\n\nconst mapDispatchToProps = { getInitialTree, closeDir, setClicked };\n\nexport default connect(mapStateToProps, mapDispatchToProps)(TreeList);\n"
  },
  {
    "path": "content/src/scripts/containers/TreeList/index.js",
    "content": "export { default } from \"./TreeList\";\n"
  },
  {
    "path": "content/src/scripts/containers/TreeList/styles.css",
    "content": ".spantree-loader-wrapper {\n  height: 100%;\n  display: flex;\n  justify-content: center;\n  align-content: center;\n  align-items: center;\n}\n\n.spantree-tree-list {\n  scroll-behavior: smooth;\n  overflow-y: auto;\n  height: calc(100vh - 40px);\n}\n\n.spantree-tree-list::-webkit-scrollbar-track {\n  background-color: #c9c9c9;\n}\n\n.spantree-tree-list::-webkit-scrollbar-corner {\n  background-color: #c9c9c9;\n}\n\n.spantree-tree-list::-webkit-scrollbar {\n  width: 8px;\n  height: 8px;\n}\n\n.spantree-tree-list::-webkit-scrollbar-thumb {\n  border-radius: 10px;\n  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);\n  background-color: rgba(0, 0, 0, 0.5);\n}\n\n.spantree-parent-list {\n  font-size: 0.875rem;\n  padding: 0px 0px 0px 5px;\n  list-style-type: none;\n  width: max-content;\n  min-width: 100%;\n  position: relative;\n}\n"
  },
  {
    "path": "content/src/scripts/containers/app/App.css",
    "content": ""
  },
  {
    "path": "content/src/scripts/containers/app/App.jsx",
    "content": "import React, { Component, Fragment } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { connect } from \"react-redux\";\nimport { TabIdentifierClient } from \"chrome-tab-identifier\";\n\nimport Toggler from \"../../components/Toggler\";\nimport Pane from \"../../components/Pane\";\nimport SearchBar from \"../SearchBar\";\nimport {\n  toggleOpened,\n  optionsChanged,\n} from \"../../../../../event/src/actions/UI\";\nimport {\n  applyClosedPageStyling,\n  applyOpenedPageStyling,\n} from \"../../utils/styling\";\nimport { browserKey } from \"../../utils/browser\";\nimport searchBarWorkerJS from \"../../utils/searchBarWorker\";\nimport WebWorker from \"./WebWorker\";\n\nimport \"./App.css\";\nimport { defaultOptions } from \"../../contexts/OptionsContext\";\n\nconst importFileIconCSS = `${browserKey()}-extension://${chrome.i18n.getMessage(\n  \"@@extension_id\",\n)}/libs/file-icons.css`;\nconst tabIdClient = new TabIdentifierClient();\nconst parentDiv = document.querySelector(\"body\");\n\nclass App extends Component {\n  constructor(props) {\n    super(props);\n    this.state = {\n      firstPageLoad: true,\n      reloading: true,\n      showSearchbar: false,\n      tabId: null,\n    };\n    this.toggleOpenedThisTab = () => {\n      this.props.toggleOpened({\n        tabId: this.state.tabId,\n      });\n    };\n    this.setFirstPageLoad = (firstPageLoad) => {\n      this.setState({ firstPageLoad });\n    };\n    this.setReloading = (reloading) => {\n      this.setState({ reloading });\n    };\n    this.shouldShowSpanTree = () => {\n      return (\n        (document.querySelector(\".qa-branches-select\") !== null ||\n          document.querySelector(\".ref-selector\") !== null ||\n          document.querySelector(\"[data-qa-selector='branches_dropdown']\")\n            .children[0] !== null) &&\n        (document.querySelector(\".nav-sidebar\") !== null ||\n          document.querySelector(\".super-sidebar\") !== null)\n      );\n    };\n    this.setShowSearchbar = (showSearchbar) => {\n      this.setState({ showSearchbar });\n    };\n    this.searchBarWorker = new WebWorker(searchBarWorkerJS);\n  }\n\n  componentDidMount() {\n    tabIdClient.getTabId().then((tab) => {\n      this.setState({\n        tabId: tab,\n      });\n    });\n    if (!this.props.options.version || this.props.options.version === 0) {\n      const initialState =\n        JSON.parse(localStorage.getItem(\"spantree-options\")) || defaultOptions;\n      this.props.optionsChanged(initialState);\n    }\n  }\n\n  componentDidUpdate(prevProps, prevState) {\n    const { tabId } = this.state;\n    if (tabId !== prevState.tabId) {\n      if (this.props.opened[tabId] && this.shouldShowSpanTree()) {\n        applyOpenedPageStyling(this.props.width);\n      } else {\n        applyClosedPageStyling();\n      }\n    }\n\n    if (tabId) {\n      if (this.props.opened[tabId] && this.shouldShowSpanTree()) {\n        applyOpenedPageStyling(this.props.width);\n      } else {\n        applyClosedPageStyling();\n      }\n    }\n\n    if (prevProps.options !== this.props.options) {\n      localStorage.setItem(\n        \"spantree-options\",\n        JSON.stringify(this.props.options.data),\n      );\n    }\n  }\n\n  render() {\n    const { tabId } = this.state;\n    if (!tabId) return null;\n    if (!this.shouldShowSpanTree()) {\n      if (this.props.opened[tabId]) this.toggleOpenedThisTab();\n      applyClosedPageStyling();\n      return null;\n    }\n\n    return (\n      <Fragment>\n        <link rel=\"stylesheet\" type=\"text/css\" href={importFileIconCSS} />\n        {this.props.opened[tabId]\n          ? ReactDOM.createPortal(\n              <Pane\n                toggleOpened={this.toggleOpenedThisTab}\n                width={this.props.width}\n                firstPageLoad={this.state.firstPageLoad}\n                setFirstPageLoad={this.setFirstPageLoad}\n                reloading={this.state.reloading}\n                setReloading={this.setReloading}\n                setShowSearchbarTrue={() => this.setShowSearchbar(true)}\n              />,\n              parentDiv,\n            )\n          : ReactDOM.createPortal(\n              <Toggler\n                handleClick={this.toggleOpenedThisTab}\n                pinned={this.props.pinned}\n              />,\n              document.getElementById(\"rcr-anchor\"),\n            )}\n        <SearchBar\n          worker={this.searchBarWorker}\n          showSearchbar={this.state.showSearchbar}\n          setShowSearchbar={this.setShowSearchbar}\n        />\n      </Fragment>\n    );\n  }\n}\n\nconst mapStateToProps = (state) => {\n  return {\n    opened: state.opened,\n    pinned: state.pinned,\n    width: state.width,\n    options: state.options,\n  };\n};\n\nconst mapDispatchToProps = { toggleOpened, optionsChanged };\n\nexport default connect(mapStateToProps, mapDispatchToProps)(App);\n"
  },
  {
    "path": "content/src/scripts/containers/app/WebWorker.js",
    "content": "export default class WebWorker {\n  constructor(worker) {\n    const code = worker.toString();\n    const blob = new Blob([\"(\" + code + \")()\"]);\n    return new Worker(URL.createObjectURL(blob));\n  }\n}\n"
  },
  {
    "path": "content/src/scripts/contexts/OptionsContext.js",
    "content": "import React, { createContext } from \"react\";\nimport { connect } from \"react-redux\";\n\nconst OptionsContext = createContext({\n  options: {},\n});\n\nexport const defaultOptions = {\n  \"auto-theme\": false,\n  \"compatibility-mode\": true,\n};\n\nfunction OptionsProvider({ children, options }) {\n  Object.keys(defaultOptions).forEach((key) => {\n    if (key in options.data) {\n      defaultOptions[key] = options.data[key];\n    }\n  });\n\n  return (\n    <OptionsContext.Provider\n      value={{\n        options: defaultOptions,\n      }}\n    >\n      {children}\n    </OptionsContext.Provider>\n  );\n}\n\nconst mapStateToProps = (state) => {\n  return {\n    options: state.options,\n  };\n};\n\nconst ConnectedOptionsConext = connect(mapStateToProps)(OptionsProvider);\n\nexport { ConnectedOptionsConext as OptionsProvider, OptionsContext };\n"
  },
  {
    "path": "content/src/scripts/index.js",
    "content": "import React from \"react\";\nimport { render } from \"react-dom\";\nimport { Provider } from \"react-redux\";\nimport { Store } from \"@eduardoac-skimlinks/webext-redux\";\n\nimport App from \"./containers/app/App\";\nimport { OptionsProvider } from \"./contexts/OptionsContext\";\n\nconst proxyStore = new Store();\n\nconst anchor = document.createElement(\"div\");\nanchor.id = \"rcr-anchor\";\n\nif (document.querySelectorAll('[aria-label=\"Loading\"]').length === 0) {\n  mount();\n} else {\n  let intervalId = null;\n  intervalId = setInterval(() => {\n    if (document.querySelectorAll('[aria-label=\"Loading\"]').length === 0) {\n      clearInterval(intervalId);\n      mount();\n    }\n  }, 500);\n}\n\nconst mount = () => {\n  if (document.querySelector(\".layout-page\") !== null) {\n    document\n      .querySelector(\".layout-page\")\n      .insertBefore(\n        anchor,\n        document.querySelector(\".layout-page\").childNodes[0],\n      );\n    proxyStore.ready().then(() => {\n      render(\n        <Provider store={proxyStore}>\n          <OptionsProvider>\n            <App />\n          </OptionsProvider>\n        </Provider>,\n        document.getElementById(\"rcr-anchor\"),\n      );\n    });\n  }\n};\n\nexport default proxyStore;\n"
  },
  {
    "path": "content/src/scripts/libs/contentDark.js",
    "content": "// contentDark.js\n// As the main content.js is loaded on \"document_idle\", the dark theme needs to be loaded at the very beginning of\n// tab load to prevent a common phenomenon found in Chrome themes known as white flash. So this contentDark.js is\n// loaded on \"document_start\" and adds the darkGitlab.css to the <html> before the page starts loading.\n// Note: This file is not processed by webpack but is copied by gulp to the build/libs folder as is.\n\n// themeList.js\nconst isPresentInThemeList = () => {\n  const domain = location.origin;\n  let themeList = JSON.parse(localStorage.getItem(\"spantree-themelist\")) || {};\n\n  return domain in themeList && themeList[domain];\n};\n\n// browser.js\nconst isWindowObject = (value) => {\n  return value != null && typeof value === \"object\" && \"setInterval\" in value;\n};\nconst freeSelf = isWindowObject(typeof self == \"object\" && self) && self;\nconst navigator = freeSelf && freeSelf.navigator;\nconst userAgent = ((navigator && navigator.userAgent) || \"\").toLowerCase();\nconst vendor = ((navigator && navigator.vendor) || \"\").toLowerCase();\nconst browserKey = () => {\n  if (isChrome()) return \"chrome\";\n  if (isFirefox()) return \"moz\";\n  return \"chrome\";\n};\nconst isChrome = () => {\n  const match = /google inc/.test(vendor)\n    ? userAgent.match(/(?:chrome|crios)\\/(\\d+)/)\n    : null;\n  return match !== null && !isOpera();\n};\nconst isFirefox = () => {\n  const match = userAgent.match(/(?:firefox|fxios)\\/(\\d+)/);\n  return match !== null;\n};\nconst isOpera = () => {\n  const match = userAgent.match(/(?:^opera.+?version|opr)\\/(\\d+)/);\n  return match !== null;\n};\n\nfunction fireContentLoadedEvent() {\n  // Remove event listener\n  document.removeEventListener(\"DOMContentLoaded\", fireContentLoadedEvent);\n\n  // Insert CSS into Head\n  const darkGitlab = document.createElement(\"link\");\n  darkGitlab.id = \"spantree-theme\";\n  darkGitlab.disabled = !isPresentInThemeList();\n  darkGitlab.rel = \"stylesheet\";\n  darkGitlab.type = \"text/css\";\n  darkGitlab.href = `${browserKey()}-extension://${chrome.i18n.getMessage(\n    \"@@extension_id\"\n  )}/libs/gitlab-dark.css`;\n  document.querySelector(\"head\").appendChild(darkGitlab);\n\n  // Remove CSS from HTML\n  document.body.onload = () => {\n    document.querySelector(\"#spantree-theme-temp\").remove();\n  };\n}\n\n// Insert CSS into HTML\nif (isPresentInThemeList()) {\n  const darkGitlabTemp = document.createElement(\"link\");\n  darkGitlabTemp.id = \"spantree-theme-temp\";\n  darkGitlabTemp.disabled = !isPresentInThemeList();\n  darkGitlabTemp.rel = \"stylesheet\";\n  darkGitlabTemp.type = \"text/css\";\n  darkGitlabTemp.href = `${browserKey()}-extension://${chrome.i18n.getMessage(\n    \"@@extension_id\"\n  )}/libs/gitlab-dark.css`;\n  document\n    .querySelector(\"html\")\n    .insertBefore(darkGitlabTemp, document.querySelector(\"html\").childNodes[0]);\n  document.addEventListener(\"DOMContentLoaded\", fireContentLoadedEvent, false);\n}\n"
  },
  {
    "path": "content/src/scripts/libs/file-icons.css",
    "content": "/*\n | File Icons\n | @link https://github.com/file-icons\n | @author Daniel Brooker https://github.com/DanBrooker\n */\n\n/* ----------------------------[ Colors ]---------------------------------- */\n\n/*============================================================================*\n\tPALETTE\n\tBase16 colours from https://github.com/chriskempson/base16\n/*============================================================================*/\n.light-red:before {\n  color: #c97071;\n}\n.medium-red:before {\n  color: #ac4142;\n}\n.dark-red:before {\n  color: #742c2d;\n}\n.light-green:before {\n  color: #a6ba7b;\n}\n.medium-green:before {\n  color: #90a959;\n}\n.dark-green:before {\n  color: #66783e;\n}\n.light-yellow:before {\n  color: #fae0bc;\n}\n.medium-yellow:before {\n  color: #ee9e2e;\n}\n.dark-yellow:before {\n  color: #d88511;\n}\n.light-blue:before {\n  color: #6098b0;\n}\n.medium-blue:before {\n  color: #6a9fb5;\n}\n.dark-blue:before {\n  color: #46788d;\n}\n.light-maroon:before {\n  color: #be7953;\n}\n.medium-maroon:before {\n  color: #8f5536;\n}\n.dark-maroon:before {\n  color: #573421;\n}\n.light-purple:before {\n  color: #c7a4c0;\n}\n.medium-purple:before {\n  color: #aa759f;\n}\n.dark-purple:before {\n  color: #825078;\n}\n.light-orange:before {\n  color: #d99762;\n}\n.medium-orange:before {\n  color: #d28445;\n}\n.dark-orange:before {\n  color: #a35f27;\n}\n.light-cyan:before {\n  color: #6bb0a4;\n}\n.medium-cyan:before {\n  color: #75b5aa;\n}\n.dark-cyan:before {\n  color: #4d9085;\n}\n.light-pink:before {\n  color: #ff4ddb;\n}\n.medium-pink:before {\n  color: #ff00cc;\n}\n.dark-pink:before {\n  color: #b3008f;\n}\n.theme-colour-check {\n  background: #ffffff;\n}\n\n/* ----------------------------[ Fonts ]---------------------------------- */\n\n@font-face {\n  font-family: \"FontAwesome\";\n  font-weight: normal;\n  font-style: normal;\n  src: url(\"chrome-extension://__MSG_@@extension_id__/libs/fonts/fontawesome.woff2\")\n      format(\"woff2\"),\n    url(\"moz-extension://__MSG_@@extension_id__/libs/fonts/fontawesome.woff2\")\n      format(\"woff2\");\n}\n\n@font-face {\n  font-family: \"Mfizz\";\n  src: url(\"chrome-extension://__MSG_@@extension_id__/libs/fonts/mfixx.woff2\")\n      format(\"woff2\"),\n    url(\"moz-extension://__MSG_@@extension_id__/libs/fonts/mfixx.woff2\")\n      format(\"woff2\");\n  font-weight: normal;\n  font-style: normal;\n}\n\n@font-face {\n  font-family: \"Devicons\";\n  src: url(\"chrome-extension://__MSG_@@extension_id__/libs/fonts/devopicons.woff2\")\n      format(\"woff2\"),\n    url(\"moz-extension://__MSG_@@extension_id__/libs/fonts/devopicons.woff2\")\n      format(\"woff2\");\n  font-weight: normal;\n  font-style: normal;\n}\n\n@font-face {\n  font-family: \"file-icons\";\n  src: url(\"chrome-extension://__MSG_@@extension_id__/libs/fonts/file-icons.woff2\")\n      format(\"woff2\"),\n    url(\"moz-extension://__MSG_@@extension_id__/libs/fonts/file-icons.woff2\")\n      format(\"woff2\");\n  font-weight: normal;\n  font-style: normal;\n}\n\n@font-face {\n  font-family: \"octicons\";\n  src: url(\"chrome-extension://__MSG_@@extension_id__/libs/fonts/octicons.woff2\")\n      format(\"woff2\"),\n    url(\"moz-extension://__MSG_@@extension_id__/libs/fonts/octicons.woff2\")\n      format(\"woff2\");\n  font-weight: normal;\n  font-style: normal;\n}\n\n/* ----------------------------[ Icons ]---------------------------------- */\n\n.icon:before {\n  font-weight: normal;\n  font-style: normal;\n  text-align: center;\n  width: 16px;\n  line-height: 1;\n  position: relative;\n  display: inline-block;\n  -webkit-font-smoothing: antialiased;\n}\n\n/*============================================================================*\n  Octicons\n  https://github.com/github/octicons\n/*============================================================================*/\n\n.binary-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f094\";\n}\n.book-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f007\";\n}\n.brew-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f069\";\n  font-size: 15px;\n  left: 1px;\n}\n.checklist-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f076\";\n  font-size: 17px;\n  left: 1px;\n}\n.code-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f05f\";\n}\n.database-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f096\";\n}\n.gear-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f02f\";\n}\n.git-commit-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f01f\";\n}\n.git-merge-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f023\";\n}\n.github-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f00a\";\n}\n.graph-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f043\";\n}\n.image-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f012\";\n}\n.key-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f049\";\n}\n.link-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f0b0\";\n}\n.markdown-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f0c9\";\n}\n.package-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f0c4\";\n}\n.ruby-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f047\";\n}\n.secret-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f08c\";\n}\n.squirrel-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f0b2\";\n  font-size: 15px;\n}\n.text-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f011\";\n}\n.zip-icon:before {\n  font-family: octicons;\n  font-size: 16px;\n  top: 1px;\n  content: \"\\f013\";\n}\n\n/*============================================================================*\n  FontAwesome\n  http://fortawesome.github.io/Font-Awesome/cheatsheet\n/*============================================================================*/\n\n.android-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f17b\";\n  font-size: 16px;\n  top: 1px;\n}\n.at-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f1fa\";\n  font-size: 15px;\n  top: 1px;\n}\n.audio-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f028\";\n  font-size: 15px;\n  top: 1px;\n}\n.bullhorn-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f0a1\";\n  font-size: 16px;\n  top: 2px;\n}\n.calc-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f1ec\";\n  font-size: 14px;\n}\n.coffee-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f0f4\";\n  font-size: 14px;\n  top: 1px;\n}\n.css3-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f13c\";\n  top: 0;\n}\n.circle-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f111\";\n  font-size: 16px;\n  top: 1px;\n}\n.earth-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f0ac\";\n  font-size: 15px;\n}\n.folder-open-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f07c\";\n  font-size: 15px;\n}\n.folder-closed-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f07b\";\n  font-size: 15px;\n}\n.gears-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f085\";\n  font-size: 15px;\n}\n.generic-file-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f15b\";\n  font-size: 15px;\n}\n.html5-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f13b\";\n  font-size: 15px;\n  top: 1px;\n}\n.mobile-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f10b\";\n  font-size: 20px;\n  top: 2px;\n}\n.moon-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f186\";\n  font-size: 16px;\n  top: 1px;\n}\n.music-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f001\";\n  font-size: 15px;\n}\n.print-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f02f\";\n  font-size: 15px;\n  top: 2px;\n}\n.recycle-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f1b8\";\n  font-size: 15px;\n  top: 2px;\n}\n.rss-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f143\";\n  font-size: 16px;\n  top: 2px;\n}\n.smarty-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f0eb\";\n  font-size: 15px;\n}\n.sourcemap-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f279\";\n  font-size: 14px;\n}\n.sun-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f185\";\n  font-size: 14px;\n  -webkit-font-smoothing: subpixel-antialiased;\n}\n.toc-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f03a\";\n  font-size: 15px;\n  top: 2px;\n}\n.tree-arrow-right-icon:before {\n  font-family: FontAwesome;\n  font-size: 10px;\n  content: \"\\f054\";\n  font-size: 12px;\n  top: 5px;\n}\n.tree-arrow-down-icon:before {\n  font-family: FontAwesome;\n  font-size: 10px;\n  content: \"\\f078\";\n  font-size: 12px;\n  top: 5px;\n}\n.twig-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f1bb\";\n  font-size: 14px;\n}\n.pdf-icon:before {\n  font-family: FontAwesome;\n  font-size: 13px;\n  content: \"\\f1c1\";\n  font-size: 14px;\n}\n\n/*============================================================================*\n  Mfizz\n  http://mfizz.com/oss/font-mfizz\n/*============================================================================*/\n\n.apache-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f102\";\n  top: 3px;\n  font-size: 15px;\n}\n.archlinux-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"A\";\n  top: 1px;\n  font-size: 15px;\n}\n.c-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f106\";\n  top: 1px;\n  font-size: 13px;\n}\n.cpp-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f10b\";\n  top: 1px;\n}\n.csharp-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f10c\";\n  top: 1px;\n}\n.debian-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f111\";\n  top: 1px;\n}\n.elixir-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f113\";\n  top: 1px;\n}\n.gnome-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f119\";\n  top: 1px;\n}\n.haskell-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f121\";\n  top: 2px;\n  font-size: 16px;\n}\n.java-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f126\";\n  top: 2px;\n  font-size: 16px;\n}\n.js-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f129\";\n  top: 1px;\n  font-size: 14px;\n}\n.msql-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f136\";\n  top: 2px;\n  font-size: 15px;\n  text-shadow: 0 0 0;\n}\n.objc-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f13e\";\n  top: 2px;\n  font-size: 16px;\n}\n.osx-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f141\";\n  top: 1px;\n}\n.perl-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f142\";\n  top: 1px;\n}\n.python-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f14c\";\n  top: 1px;\n}\n.red-hat-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f14e\";\n  top: 2px;\n}\n.scala-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f154\";\n  top: 1px;\n}\n.sql-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f10e\";\n  top: 1px;\n}\n.svg-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f15c\";\n  top: 1px;\n}\n.tt-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"TT\";\n}\n.x11-icon:before {\n  font-family: Mfizz;\n  font-size: 14px;\n  content: \"\\f16e\";\n  top: 1px;\n  font-size: 13px;\n}\n\n/*============================================================================*\n  Devicons\n  http://vorillaz.github.io/devicons\n/*============================================================================*/\n\n.angular-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e653\";\n}\n.appcelerator-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e6ab\";\n}\n.appstore-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e613\";\n}\n.asp-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e67f\";\n}\n.atom-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e664\";\n  -webkit-font-smoothing: subpixel-antialiased;\n}\n.backbone-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e652\";\n}\n.bootstrap-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e647\";\n  font-size: 15px;\n  top: 2px;\n}\n.bower-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e64d\";\n  text-shadow: 0 0 0;\n}\n.chrome-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e643\";\n}\n.clojure-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e668\";\n  -webkit-font-smoothing: subpixel-antialiased;\n}\n.compass-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e661\";\n  font-size: 14px;\n  top: 2px;\n}\n.dart-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e698\";\n  font-size: 15px;\n  top: 2px;\n}\n.dlang-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e6af\";\n}\n.dojo-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e61c\";\n  font-size: 16px;\n  top: 4px;\n  transform: scale(1.2);\n  -webkit-font-smoothing: subpixel-antialiased;\n}\n.dropbox-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e607\";\n}\n.eclipse-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e69e\";\n}\n.erlang-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e6b1\";\n}\n.extjs-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e68e\";\n}\n.fsharp-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e6a7\";\n  left: 1px;\n  top: 2px;\n}\n.git-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e602\";\n  font-size: 15px;\n  top: 2px;\n}\n.heroku-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e67b\";\n}\n.jquery-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e650\";\n  font-size: 15px;\n  top: 2px;\n}\n.jqueryui-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e654\";\n  font-size: 15px;\n  top: 2px;\n}\n.laravel-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e63f\";\n  -webkit-font-smoothing: subpixel-antialiased;\n}\n.materialize-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e6b6\";\n  transform: scale(1.2);\n  -webkit-font-smoothing: subpixel-antialiased;\n}\n.modernizr-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e620\";\n}\n.mootools-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e68f\";\n  text-shadow: 0 0 0;\n}\n.node-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e618\";\n}\n.pod-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e669\";\n  font-size: 15px;\n  top: 2px;\n}\n.prolog-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e6a1\";\n}\n.rails-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e63b\";\n}\n.raphael-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e65f\";\n  font-size: 15px;\n}\n.requirejs-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e670\";\n}\n.rust-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e6a8\";\n}\n.sass-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e64b\";\n}\n.sencha-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e68c\";\n}\n.snapsvg-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e65e\";\n}\n.swift-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e655\";\n  left: -1px;\n}\n.travis-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e67e\";\n  font-size: 15px;\n  top: 2px;\n}\n.uikit-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e673\";\n  font-size: 15px;\n  top: 2px;\n}\n.unity3d-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e621\";\n}\n.vim-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e6c5\";\n}\n.vs-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e60c\";\n  font-size: 14px;\n  top: 2px;\n}\n.windows-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e60f\";\n  font-size: 14px;\n  top: 2px;\n}\n.yeoman-icon:before {\n  font-family: Devicons;\n  font-size: 16px;\n  top: 3px;\n  content: \"\\e67a\";\n}\n\n/*============================================================================*\n  Custom file icons\n  See https://github.com/file-icons/source/#adding-new-icons\n/*============================================================================*/\n\n._1c-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\a5ea\";\n  top: 3px;\n  font-size: 16px;\n}\n._1c-alt-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea28\";\n  top: 3px;\n  font-size: 16px;\n}\n.abap-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e92b\";\n  top: 2px;\n}\n.access-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9ea\";\n  top: 2px;\n}\n.ada-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e90b\";\n  top: 3px;\n  font-size: 17px;\n}\n.ae-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9f3\";\n  top: 2px;\n}\n.ahk-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e932\";\n  top: 2px;\n}\n.ai-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e6b4\";\n  top: 2px;\n}\n.alloy-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e935\";\n  top: 2px;\n}\n.alpine-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9ff\";\n  top: 2px;\n  font-size: 16px;\n}\n.ampl-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e94e\";\n  top: 3px;\n  font-size: 16px;\n  left: 1px;\n}\n.amx-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e99b\";\n  top: 3px;\n  font-size: 16px;\n}\n.ant-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e93e\";\n  top: 4px;\n  font-size: 18px;\n  transform: scale(1.1);\n}\n.antlr-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e92c\";\n  top: 3px;\n}\n.api-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e92d\";\n  top: 2px;\n}\n.apl-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\234b\";\n  top: 2px;\n}\n.apple-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e925\";\n  top: 1px;\n}\n.appveyor-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e923\";\n  top: 2px;\n}\n.arc-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e92f\";\n  top: 2px;\n}\n.arduino-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e930\";\n  top: 3px;\n  font-size: 16px;\n}\n.arttext-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\24d0\";\n  top: 2px;\n}\n.as-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e92e\";\n  top: 1px;\n  font-size: 14px;\n}\n.asciidoc-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e918\";\n  top: 1px;\n  font-size: 14px;\n}\n.ats-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e934\";\n  top: 2px;\n}\n.audacity-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9f9\";\n  top: 2px;\n}\n.augeas-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e931\";\n  top: 2px;\n}\n.autoit-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e933\";\n  top: 2px;\n  font-size: 16px;\n}\n.babel-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e91f\";\n  top: 2px;\n  left: 1px;\n}\n.bibtex-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e601\";\n  top: 2px;\n  font-size: 16px;\n  -webkit-font-smoothing: subpixel-antialiased;\n}\n.blender-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9fa\";\n  top: 2px;\n}\n.bluespec-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e93c\";\n  top: 1px;\n  font-size: 13px;\n  left: 1px;\n}\n.boo-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e939\";\n  top: 2px;\n}\n.boot-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f103\";\n  top: 2px;\n  font-size: 16px;\n}\n.brain-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e93a\";\n  top: 2px;\n}\n.brakeman-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9d6\";\n  top: 2px;\n}\n.bro-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e93b\";\n  top: 3px;\n  font-size: 16px;\n}\n.broccoli-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e922\";\n  top: 1px;\n  font-size: 14px;\n}\n.byond-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e962\";\n  top: 2px;\n}\n.cabal-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9c2\";\n  top: 2px;\n}\n.cake-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9e3\";\n  top: 2px;\n}\n.cakefile-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e924\";\n  top: 2px;\n}\n.cakephp-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9d3\";\n  top: 1px;\n  font-size: 14px;\n}\n.cc-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9d5\";\n  top: 2px;\n  font-size: 16px;\n}\n.ceylon-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e94f\";\n  top: 2px;\n}\n.cf-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e929\";\n  top: 2px;\n}\n.chai-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"c\";\n  top: 3px;\n  font-size: 16px;\n}\n.chapel-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e950\";\n  top: 2px;\n}\n.chartjs-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea0b\";\n  top: 2px;\n}\n.chuck-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e943\";\n  top: 2px;\n}\n.circleci-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea12\";\n  top: 2px;\n  font-size: 14px;\n}\n.cirru-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e951\";\n  top: 2px;\n  text-shadow: 0 0 0;\n}\n.cl-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e972\";\n  top: 2px;\n  text-shadow: 0 0 0;\n}\n.clarion-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e952\";\n  top: 1px;\n  font-size: 14px;\n  left: 1px;\n}\n.clean-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e95b\";\n  top: 2px;\n  font-size: 16px;\n}\n.click-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e95c\";\n  top: 2px;\n}\n.clips-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e940\";\n  top: 3px;\n  font-size: 18px;\n}\n.cljs-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f104\";\n  top: 2px;\n}\n.cmake-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e93f\";\n  top: 1px;\n  font-size: 14px;\n}\n.codecov-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\2602\";\n  top: 2px;\n}\n.composer-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e683\";\n  top: 3px;\n  font-size: 17px;\n}\n.config-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f07c\";\n  top: 2px;\n  font-size: 14px;\n}\n.cordova-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea11\";\n  top: 2px;\n}\n.coq-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e95f\";\n  top: 2px;\n  font-size: 16px;\n  left: 1px;\n}\n.cp-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e942\";\n  top: 3px;\n  font-size: 17px;\n}\n.creole-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e95e\";\n  top: 2px;\n}\n.crystal-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e902\";\n  top: 2px;\n  left: 1px;\n}\n.csound-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9f0\";\n  top: 2px;\n}\n.csscript-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9e2\";\n  top: 2px;\n}\n.cucumber-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f02b\";\n  top: 3px;\n}\n.cython-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e963\";\n  top: 2px;\n}\n.d3-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea10\";\n  top: 2px;\n}\n.darcs-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e964\";\n  top: 2px;\n}\n.dashboard-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f07d\";\n  top: 2px;\n  font-size: 13px;\n}\n.dbase-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9f1\";\n  top: 2px;\n}\n.default-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\1f5cc\";\n  top: 2px;\n  font-size: 14px;\n}\n.diff-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e960\";\n  top: 2px;\n}\n.docker-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f106\";\n  top: 3px;\n  font-size: 18px;\n}\n.doxygen-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e928\";\n  top: 1px;\n  font-size: 13px;\n}\n.doge-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e946\";\n  top: 2px;\n}\n.dyalog-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e90c\";\n  top: 1px;\n  font-size: 14px;\n  left: 1px;\n}\n.dylib-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea15\";\n  top: 2px;\n}\n.e-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"E\";\n  top: 1px;\n  font-size: 14px;\n}\n.eagle-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e965\";\n  top: 2px;\n}\n.ec-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9c9\";\n  top: 2px;\n}\n.ecere-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e966\";\n  top: 3px;\n  font-size: 16px;\n}\n.editorconfig-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea1b\";\n  top: 3px;\n}\n.eiffel-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e967\";\n  top: 2px;\n  font-size: 16px;\n}\n.electron-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea27\";\n  top: 3px;\n  font-size: 16px;\n  text-shadow: 0 0 0;\n}\n.elm-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f102\";\n  top: 2px;\n}\n.em-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e968\";\n  top: 3px;\n  font-size: 16px;\n}\n.ember-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e61b\";\n  top: 2px;\n  font-size: 14px;\n}\n.emacs-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e926\";\n  top: 2px;\n}\n.eq-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea0a\";\n  top: 5px;\n}\n.eslint-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea0f\";\n  top: 3px;\n  font-size: 16px;\n}\n.excel-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9ee\";\n  top: 2px;\n}\n.fabfile-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e94b\";\n  top: 2px;\n  font-size: 16px;\n}\n.factor-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e96a\";\n  top: 3px;\n  font-size: 18px;\n  left: -2px;\n  transform: scale(1.2);\n}\n.fancy-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e96b\";\n  top: 2px;\n  font-size: 16px;\n}\n.fantom-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e96f\";\n  top: 2px;\n  left: 1px;\n}\n.fbx-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9fc\";\n  top: 2px;\n}\n.ff-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\fb00\";\n  top: 3px;\n}\n.finder-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9e9\";\n  top: 3px;\n  font-size: 16px;\n}\n.flow-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e921\";\n  top: 1px;\n}\n.flux-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e969\";\n  top: 2px;\n}\n.font-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e90f\";\n  top: 1px;\n  font-size: 14px;\n  left: 1px;\n}\n.fortran-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e90a\";\n  top: 1px;\n  font-size: 14px;\n  left: 1px;\n}\n.freemarker-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e970\";\n  top: 2px;\n  font-size: 16px;\n  left: 1px;\n}\n.frege-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e96e\";\n  top: 2px;\n  font-size: 16px;\n  left: 1px;\n}\n.fuelux-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea09\";\n  top: 3px;\n  font-size: 16px;\n  left: 2px;\n  transform: scale(1.15);\n  text-shadow: 0 0 0;\n}\n.gams-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e973\";\n  top: 2px;\n  left: 1px;\n}\n.gap-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e971\";\n  top: 3px;\n  font-size: 16px;\n  left: 1px;\n}\n.gdb-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea08\";\n  top: 3px;\n  font-size: 16px;\n  transform: scale(1.15);\n  text-shadow: 0 0 0;\n}\n.genshi-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e976\";\n  top: 3px;\n}\n.gentoo-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e96d\";\n  top: 1px;\n  font-size: 14px;\n  left: 1px;\n}\n.gf-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e978\";\n  top: 2px;\n}\n.glade-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e938\";\n  top: 2px;\n}\n.glyphs-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"G\";\n  top: 3px;\n}\n.gml-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e975\";\n  top: 3px;\n  font-size: 16px;\n}\n.gn-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea25\";\n  top: 2px;\n}\n.gnu-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e679\";\n  top: 2px;\n  font-size: 16px;\n  text-shadow: 0 0 0;\n}\n.go-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e624\";\n  top: 3px;\n}\n.godot-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e974\";\n  top: 2px;\n}\n.golo-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e979\";\n  top: 2px;\n}\n.gosu-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e97a\";\n  top: 2px;\n}\n.gradle-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e903\";\n  top: 3px;\n  font-size: 16px;\n  left: 1px;\n}\n.graphql-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e97c\";\n  top: 2px;\n}\n.graphviz-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e97d\";\n  top: 4px;\n  font-size: 17px;\n  left: 1px;\n}\n.groovy-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e904\";\n  top: 4px;\n  font-size: 17px;\n  left: -1px;\n}\n.grunt-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e611\";\n  top: 1px;\n  font-size: 14px;\n}\n.gulp-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e610\";\n  top: 2px;\n  font-size: 16px;\n}\n.hack-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9ce\";\n  top: 2px;\n}\n.haml-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f15b\";\n  top: 2px;\n}\n.harbour-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e97b\";\n  top: 2px;\n  font-size: 16px;\n  text-shadow: 0 0 0;\n}\n.hashicorp-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e97e\";\n  top: 2px;\n}\n.haxe-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e907\";\n  top: 2px;\n}\n.hy-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e97f\";\n  top: 2px;\n}\n.idl-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e947\";\n  top: 3px;\n  font-size: 18px;\n}\n.idris-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e983\";\n  top: 2px;\n  font-size: 16px;\n  -webkit-font-smoothing: subpixel-antialiased;\n}\n.igorpro-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e980\";\n  top: 2px;\n  font-size: 16px;\n  -webkit-font-smoothing: subpixel-antialiased;\n}\n.indesign-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9f4\";\n  top: 2px;\n}\n.inform7-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e984\";\n  top: 2px;\n  font-size: 16px;\n  text-shadow: 0 0 0;\n}\n.inno-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e985\";\n  top: 2px;\n}\n.io-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e981\";\n  top: 1px;\n  font-size: 13px;\n  -webkit-font-smoothing: subpixel-antialiased;\n}\n.ioke-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e982\";\n  top: 2px;\n}\n.ionic-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f14b\";\n  top: 2px;\n}\n.isabelle-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e945\";\n  top: 2px;\n  font-size: 16px;\n}\n.j-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e937\";\n  top: 1px;\n  font-size: 13px;\n}\n.jade-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e90d\";\n  top: 1px;\n  font-size: 14px;\n}\n.jake-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e948\";\n  top: 3px;\n  font-size: 16px;\n}\n.jenkins-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e667\";\n  top: 3px;\n  font-size: 18px;\n  text-shadow: 0 0 0;\n}\n.jinja-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e944\";\n  top: 2px;\n}\n.jsonld-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e958\";\n  top: 3px;\n  font-size: 17px;\n}\n.jsx-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9e6\";\n  top: 1px;\n  font-size: 14px;\n}\n.julia-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\26ec\";\n  top: 1px;\n  font-size: 14px;\n}\n.jupyter-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e987\";\n  top: 3px;\n  font-size: 16px;\n}\n.karma-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9cd\";\n  top: 2px;\n}\n.keynote-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9e5\";\n  top: 2px;\n}\n.khronos-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9f8\";\n  top: 2px;\n}\n.kivy-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e901\";\n  top: 2px;\n}\n.knockout-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\4B\";\n  top: 2px;\n}\n.kotlin-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e989\";\n  top: 1px;\n  font-size: 14px;\n}\n.krl-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e988\";\n  top: 1px;\n  font-size: 14px;\n}\n.labview-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e98a\";\n  top: 2px;\n  font-size: 16px;\n}\n.lasso-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e98c\";\n  top: 2px;\n  left: 1px;\n}\n.leaflet-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea07\";\n  top: 2px;\n}\n.lean-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"L\";\n  top: 1px;\n  font-size: 13px;\n}\n.lein-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f105\";\n  top: 3px;\n  font-size: 16px;\n  text-shadow: 0 0 0;\n  transform: scale(1.15);\n}\n.lfe-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e94c\";\n  top: 2px;\n  font-size: 16px;\n}\n.lightwave-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9fb\";\n  top: 2px;\n}\n.lisp-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e908\";\n  top: 3px;\n  font-size: 17px;\n}\n.llvm-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e91d\";\n  top: 3px;\n  font-size: 17px;\n}\n.logtalk-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e98d\";\n  top: 2px;\n  text-shadow: 0 0 0;\n}\n.lookml-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e98e\";\n  top: 2px;\n  font-size: 16px;\n  text-shadow: 0 0 0;\n}\n.ls-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e914\";\n  top: 2px;\n  font-size: 14px;\n}\n.lsl-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e98b\";\n  top: 1px;\n}\n.lua-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e91b\";\n  top: 2px;\n  font-size: 14px;\n}\n.mako-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e98f\";\n  top: 4px;\n  font-size: 16px;\n}\n.mapbox-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e941\";\n  top: 1px;\n  font-size: 13px;\n}\n.marko-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e920\";\n  top: 4px;\n  font-size: 18px;\n  left: -1px;\n  transform: scale(1.05);\n}\n.mathematica-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e990\";\n  top: 2px;\n  font-size: 16px;\n}\n.mathjax-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea06\";\n  top: 2px;\n}\n.matlab-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e991\";\n  top: 2px;\n}\n.max-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e993\";\n  top: 2px;\n}\n.maxscript-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e900\";\n  top: 2px;\n}\n.maya-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9f6\";\n  top: 2px;\n  font-size: 16px;\n}\n.manpage-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e936\";\n  top: 3px;\n}\n.mediawiki-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e954\";\n  top: 2px;\n  font-size: 16px;\n}\n.mercury-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e994\";\n  top: 3px;\n  font-size: 16px;\n  transform: scale(1.2);\n}\n.metal-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"M\";\n  top: 1px;\n  left: 1px;\n}\n.meteor-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e6a5\";\n  top: 1px;\n}\n.minecraft-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9dc\";\n  top: 2px;\n}\n.mirah-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e995\";\n  top: 2px;\n}\n.mocha-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\26fe\";\n  top: 2px;\n  font-size: 17px;\n}\n.model-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9e8\";\n  top: 2px;\n  font-size: 16px;\n}\n.modula2-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e996\";\n  top: 2px;\n}\n.monkey-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e997\";\n  top: 3px;\n  font-size: 18px;\n  left: -1px;\n}\n.mruby-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea18\";\n  top: 2px;\n}\n.mupad-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9ca\";\n  top: 3px;\n  font-size: 16px;\n}\n.mustache-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e60f\";\n  top: 2px;\n  font-size: 16px;\n}\n.nant-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9e1\";\n  top: 3px;\n  transform: scale(1.2);\n}\n.neko-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea05\";\n  top: 2px;\n}\n.netlogo-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e99c\";\n  top: 2px;\n  left: 1px;\n}\n.newrelic-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9d7\";\n  top: 2px;\n}\n.nginx-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f146b\";\n  top: 2px;\n}\n.nib-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\2712\";\n  top: 2px;\n}\n.nimrod-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e998\";\n  top: 2px;\n}\n.nit-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e999\";\n  top: 2px;\n}\n.nix-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e99a\";\n  top: 3px;\n  font-size: 16px;\n}\n.nmap-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e94d\";\n  top: 3px;\n  font-size: 16px;\n  transform: scale(1.1);\n}\n.nodemon-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea26\";\n  top: 2px;\n}\n.normalize-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea04\";\n  top: 3px;\n  font-size: 16px;\n}\n.npm-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e91c\";\n  top: 3px;\n  font-size: 17px;\n}\n.nsis-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea1e\";\n  top: 3px;\n  font-size: 16px;\n}\n.numpy-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e99d\";\n  top: 2px;\n  font-size: 14px;\n}\n.nuget-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9d9\";\n  top: 2px;\n}\n.nunjucks-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e953\";\n  top: 2px;\n  font-size: 16px;\n}\n.nvidia-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e95d\";\n  top: 2px;\n}\n.objj-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e99e\";\n  top: 2px;\n}\n.ocaml-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e91a\";\n  top: 1px;\n  font-size: 14px;\n}\n.onenote-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9eb\";\n  top: 2px;\n}\n.ooc-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9cb\";\n  top: 2px;\n}\n.opa-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\2601\";\n  top: 2px;\n}\n.opencl-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e99f\";\n  top: 2px;\n  font-size: 16px;\n}\n.openoffice-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9e4\";\n  top: 2px;\n}\n.org-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e917\";\n  top: 1px;\n  font-size: 14px;\n  left: 1px;\n}\n.owl-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e957\";\n  top: 2px;\n}\n.ox-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9a1\";\n  top: 3px;\n  font-size: 16px;\n  text-shadow: 0 0 0;\n}\n.oxygene-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9bf\";\n  top: 2px;\n}\n.oz-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9be\";\n  top: 2px;\n}\n.pan-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9bd\";\n  top: 2px;\n}\n.papyrus-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9bc\";\n  top: 2px;\n}\n.parrot-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9bb\";\n  top: 3px;\n  font-size: 16px;\n}\n.pascal-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e92a\";\n  top: 2px;\n}\n.patch-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e961\";\n  top: 2px;\n}\n.pawn-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\265f\";\n  top: 1px;\n  font-size: 14px;\n}\n.perl6-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e96c\";\n  top: 2px;\n}\n.phalcon-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e94a\";\n  top: 2px;\n}\n.php-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f147\";\n  top: 1px;\n  font-size: 14px;\n  left: 1px;\n}\n.pickle-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9c4\";\n  top: 2px;\n}\n.pike-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9b9\";\n  top: 4px;\n  font-size: 16px;\n  -webkit-font-smoothing: subpixel-antialiased;\n  transform: scale(1.15);\n}\n.pogo-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9b8\";\n  top: 3px;\n  font-size: 14px;\n  -webkit-font-smoothing: subpixel-antialiased;\n}\n.pony-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9b7\";\n  top: 3px;\n  font-size: 16px;\n}\n.pointwise-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e977\";\n  top: 2px;\n}\n.postcss-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e910\";\n  top: 2px;\n  font-size: 14px;\n}\n.postscript-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e955\";\n  top: 2px;\n  left: 1px;\n}\n.povray-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"P\";\n  top: 2px;\n  left: 1px;\n}\n.powerbuilder-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea14\";\n}\n.powerpoint-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9ec\";\n  top: 2px;\n}\n.powershell-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9da\";\n  top: 2px;\n  font-size: 16px;\n}\n.premiere-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9f5\";\n  top: 2px;\n}\n.processing-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9a0\";\n  top: 2px;\n}\n.progress-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9c0\";\n  top: 2px;\n  font-size: 16px;\n  transform: scale(1.2);\n}\n.propeller-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9b5\";\n  top: 3px;\n  font-size: 16px;\n}\n.protractor-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9de\";\n  top: 3px;\n}\n.psd-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e6b8\";\n  top: 2px;\n}\n.pug-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea13\";\n  top: 3px;\n  font-size: 16px;\n}\n.pug-alt-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9d0\";\n  top: 3px;\n  font-size: 16px;\n}\n.puppet-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f0c3\";\n  top: 2px;\n  left: 1px;\n}\n.purebasic-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\01b5\";\n  top: 2px;\n}\n.purescript-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9b2\";\n  top: 3px;\n}\n.r-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e905\";\n  top: 3px;\n  font-size: 17px;\n}\n.racket-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9b1\";\n  top: 2px;\n  left: 1px;\n}\n.raml-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e913\";\n  top: 1px;\n  font-size: 14px;\n}\n.rascal-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea24\";\n  top: 2px;\n}\n.rdoc-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9b0\";\n  top: 2px;\n  left: 1px;\n}\n.react-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f100\";\n  top: 2px;\n}\n.rebol-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9ae\";\n  top: 1px;\n  font-size: 13px;\n}\n.reason-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea1d\";\n  top: 3px;\n}\n.red-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9ad\";\n  top: 3px;\n  font-size: 16px;\n}\n.regex-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"*\";\n  top: 1px;\n  font-size: 12px;\n  left: 1px;\n}\n.rexx-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea16\";\n  top: 2px;\n  font-size: 14px;\n  left: 1px;\n}\n.riot-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e919\";\n  top: 4px;\n  font-size: 18px;\n}\n.robot-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9ac\";\n  top: 2px;\n  font-size: 14px;\n}\n.rollup-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea20\";\n  top: 2px;\n}\n.rst-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9cc\";\n  top: 3px;\n  font-size: 16px;\n}\n.sage-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9ab\";\n  top: 3px;\n  font-size: 16px;\n  -webkit-font-smoothing: subpixel-antialiased;\n}\n.saltstack-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e915\";\n  top: 2px;\n  font-size: 14px;\n}\n.sas-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e95a\";\n  top: 2px;\n}\n.sbt-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9d2\";\n  top: 2px;\n  font-size: 14px;\n}\n.scd-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9a2\";\n  top: 2px;\n}\n.scad-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e911\";\n  top: 2px;\n  font-size: 14px;\n}\n.scheme-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\03bb\";\n  top: 2px;\n}\n.scilab-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9a9\";\n  top: 3px;\n  font-size: 18px;\n  left: -1px;\n  -webkit-font-smoothing: subpixel-antialiased;\n}\n.scrutinizer-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9d4\";\n  top: 2px;\n  font-size: 14px;\n}\n.self-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9a8\";\n  top: 3px;\n  font-size: 16px;\n  text-shadow: 0 0 0;\n  transform: scale(1.2);\n}\n.sf-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9db\";\n  top: 2px;\n}\n.shen-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9a7\";\n  top: 2px;\n  font-size: 16px;\n}\n.shopify-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9cf\";\n  top: 2px;\n}\n.shuriken-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\272b\";\n  top: 2px;\n  font-size: 14px;\n}\n.sigils-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\1f764\";\n  top: 3px;\n  font-size: 16px;\n  text-shadow: 0 0 0;\n}\n.silverstripe-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e800\";\n  top: 2px;\n}\n.sketch-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e927\";\n  top: 2px;\n}\n.slash-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9a6\";\n  top: 2px;\n}\n.snyk-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea1c\";\n  top: 2px;\n  font-size: 16px;\n}\n.sparql-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e959\";\n  top: 2px;\n}\n.sqf-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9a5\";\n  top: 1px;\n  text-shadow: 0 0 0;\n}\n.sqlite-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9dd\";\n  top: 3px;\n}\n.stan-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9a4\";\n  top: 2px;\n}\n.stata-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9a3\";\n  top: 2px;\n}\n.storyist-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9ef\";\n  top: 2px;\n  font-size: 16px;\n}\n.strings-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9e0\";\n  top: 2px;\n}\n.stylelint-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e93d\";\n  top: 2px;\n}\n.stylus-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"s\";\n  top: 2px;\n  left: 1px;\n}\n.sublime-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e986\";\n  top: 2px;\n}\n.svn-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea17\";\n  top: 2px;\n}\n.sysverilog-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9c3\";\n  top: 2px;\n}\n.tag-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f015\";\n  top: 2px;\n  font-size: 14px;\n}\n.tcl-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e956\";\n  top: 2px;\n  font-size: 16px;\n}\n.terminal-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f0c8\";\n  top: 2px;\n  font-size: 14px;\n}\n.tern-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\1f54a\";\n  top: 4px;\n  font-size: 16px;\n}\n.terraform-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e916\";\n  top: 1px;\n  font-size: 14px;\n}\n.tex-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e600\";\n  top: 4px;\n  font-size: 16px;\n  -webkit-font-smoothing: subpixel-antialiased;\n}\n.textile-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"t\";\n  top: 2px;\n}\n.textmate-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\2122\";\n  top: 2px;\n  font-size: 16px;\n}\n.thor-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9d8\";\n  top: 2px;\n}\n.ts-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\2a6\";\n  top: 1px;\n  font-size: 14px;\n}\n.tsx-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9e7\";\n  top: 1px;\n  font-size: 14px;\n}\n.turing-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9b6\";\n  top: 2px;\n}\n.txl-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9c1\";\n  top: 2px;\n}\n.typedoc-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9fe\";\n  top: 2px;\n}\n.typings-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9df\";\n  top: 2px;\n}\n.uno-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9b3\";\n  top: 2px;\n}\n.unreal-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"u\";\n  top: 2px;\n}\n.urweb-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9ba\";\n  top: 4px;\n  font-size: 18px;\n  left: -1px;\n  text-shadow: 0 0 0;\n}\n.webpack-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e91e\";\n  top: 3px;\n}\n.wercker-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea19\";\n  top: 2px;\n}\n.word-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9ed\";\n  top: 2px;\n}\n.v8-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea1f\";\n  top: 3px;\n  font-size: 16px;\n}\n.vagrant-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"V\";\n  top: 2px;\n  font-size: 14px;\n}\n.varnish-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9b4\";\n  top: 1px;\n  font-size: 14px;\n}\n.verilog-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e949\";\n  top: 2px;\n}\n.vhdl-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9aa\";\n  top: 2px;\n}\n.video-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\f057\";\n  top: 1px;\n  font-size: 14px;\n}\n.vue-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e906\";\n  top: 3px;\n}\n.x10-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\2169\";\n  top: 2px;\n}\n.xmos-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"X\";\n  top: 1px;\n  font-size: 14px;\n}\n.xojo-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9af\";\n  top: 2px;\n}\n.xpages-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9c5\";\n  top: 2px;\n}\n.xtend-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9c6\";\n  top: 2px;\n}\n.yang-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\262f\";\n  top: 2px;\n}\n.yarn-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea1a\";\n  top: 2px;\n  font-size: 16px;\n}\n.yui-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\ea00\";\n  top: 2px;\n}\n.zbrush-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9f2\";\n  top: 2px;\n  font-size: 16px;\n}\n.zephir-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9c7\";\n  top: 2px;\n  -webkit-font-smoothing: subpixel-antialiased;\n}\n.zimpl-icon:before {\n  font-family: file-icons;\n  font-size: 15px;\n  content: \"\\e9c8\";\n  top: 2px;\n  font-size: 16px;\n  left: 1px;\n}\n"
  },
  {
    "path": "content/src/scripts/libs/gitlab-dark.css",
    "content": "/* ==UserStyle==\n@name         Dark-GitLab Lite\n@namespace    gitlab.com/vednoc/dark-gitlab\n@description  Dark and light theme for GitLab and self-hosted GitLab instances.\n@author       vednoc <vednoc@pm.me> (https://gitlab.com/vednoc)\n@homepageURL  https://gitlab.com/vednoc/dark-gitlab\n@supportURL   https://gitlab.com/vednoc/dark-gitlab/issues\n@updateURL    https://gitlab.com/vednoc/dark-gitlab/raw/master/gitlab.user.css\n==/UserStyle== */\n\n/****************************** GITLAB-DARK-START ******************************/\n\n:root {\n  --note: \"Dark-GitLab v1.6.3\";\n  --bshadow: 0 2px 4px var(--shadow);\n  --t: transparent !important;\n  --avatar: 25%;\n  --ui-font: \"font_name\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto,\n    \"Noto Sans\", Ubuntu, Cantarell, \"Helvetica Neue\", var(--emoji-font),\n    sans-serif;\n  --mono-font: \"font_name\", \"Menlo\", \"DejaVu Sans Mono\", \"Liberation Mono\",\n    \"Consolas\", \"Ubuntu Mono\", \"Courier New\", \"andale mono\", \"lucida console\",\n    monospace;\n  --emoji-font: \"font_name\", \"Apple Color Emoji\", \"Segoe UI Emoji\",\n    \"Segoe UI Symbol\", \"Noto Color Emoji\";\n  --white: #fff;\n  --bb: #202020;\n  --dark: #181818;\n  --darken: #262626;\n  --darker: #404040;\n  --light: #e6e6e6;\n  --lighter: #9b9b9b;\n  --accent: #4f8cc9;\n  --shadow: rgba(0, 0, 0, 0.314);\n  --yellow: #fc3;\n  --orange: #fe9600;\n  --red: #f44;\n  --magenta: #8368aa;\n  --violet: #6e5494;\n  --blue: #4f8cc9;\n  --cyan: #4d5eff;\n  --green: #083;\n  --red-darken: #4e3030;\n  --red-darker: #3b2c2c;\n  overflow-x: hidden;\n}\n@supports (-moz-user-select: none) {\n  :root {\n    --svg-status-bg: var(--dark) !important;\n  }\n}\nbody {\n  font-family: var(--ui-font) !important;\n}\nbody,\nbody.navless {\n  color: var(--light) !important;\n  background-color: var(--dark) !important;\n}\nbody::before {\n  content: \"\";\n  z-index: -1;\n  position: fixed;\n  top: 0;\n  left: 0;\n  bottom: 0;\n  right: 0;\n  background-color: var(--bb) !important;\n}\nbody a,\nbody a:hover {\n  color: var(--accent);\n}\nbody hr {\n  border-color: var(--darker);\n}\nbody h1,\nbody .h1,\nbody h2,\nbody .h2,\nbody h3,\nbody .h3,\nbody h4,\nbody .h4,\nbody h5,\nbody .h5,\nbody h6,\nbody .h6 {\n  color: var(--light);\n}\nbody time {\n  color: var(--lighter);\n}\nbody :not(pre) > code {\n  color: var(--light);\n  background-color: var(--darken);\n  box-shadow: inset 0 0 0 1px var(--darker);\n}\nbody pre {\n  color: var(--light);\n  border-color: var(--darker);\n  background-color: var(--darken);\n}\nbody pre[class*=\"description\"] {\n  border-left-width: 4px;\n  font-size: 0.875rem;\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n}\nbody > pre:not([class]) {\n  background-color: var(--t) !important;\n}\nbody kbd {\n  border-radius: 4px;\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n  box-shadow: inset 0 0 0 1px var(--darker);\n}\nbody .gl-link,\nbody .gl-link:hover {\n  color: var(--accent);\n}\nbody .author-link,\n.branch-commit .commit-sha {\n  color: var(--accent);\n}\nbody pre,\nbody code,\nbody kbd,\nbody samp,\nbody .monospace,\nbody .ref-name,\nbody .commit-sha,\nbody .pipeline-number,\nbody .label-branch,\nbody table.code,\nbody [class*=\"git-commit\"] {\n  font-family: var(--mono-font) !important;\n}\nbody .container {\n  border-color: var(--darker) !important;\n}\nbody .danger-title,\nbody .gl-field-error,\nbody .invalid-feedback {\n  color: var(--red) !important;\n}\nbody [class*=\"price-per-\"] {\n  color: var(--blue) !important;\n}\nbody .warning-title {\n  color: var(--orange) !important;\n}\nbody .valid-feedback {\n  color: var(--green) !important;\n}\nbody .account-well {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\nbody [class*=\"two-factor-auth\"] svg {\n  background-color: var(--white) !important;\n  box-shadow: 0 0 0 4px var(--white);\n}\nbody .progress {\n  background-color: var(--darker) !important;\n}\nbody .progress-bar {\n  color: var(--light) !important;\n  border-radius: 4px;\n}\nbody .progress-bar.bg-primary {\n  background-color: var(--accent) !important;\n}\nbody .progress.repository-languages-bar {\n  background-color: var(--t) !important;\n}\nbody .progress.repository-languages-bar [style*=\"#375eab\"] {\n  background-color: #00add8 !important;\n}\nbody .progress.repository-languages-bar [style*=\"#776791\"] {\n  background-color: #000100 !important;\n}\nbody .text-info:not(#z) {\n  color: var(--blue) !important;\n}\nbody .text-info:not(#z) > svg {\n  fill: var(--blue) !important;\n}\nbody .text-danger:not(#z) {\n  color: var(--red) !important;\n}\nbody .text-danger:not(#z) > svg {\n  fill: var(--red) !important;\n}\nbody .text-success:not(#z) {\n  color: var(--green) !important;\n}\nbody .text-success:not(#z) > svg {\n  fill: var(--green) !important;\n}\nbody .text-warning:not(#z) {\n  color: var(--orange) !important;\n}\nbody .text-warning:not(#z) > svg {\n  fill: var(--orange) !important;\n}\nbody .text-plain,\n.light {\n  color: var(--light) !important;\n}\nbody .text-secondary,\nbody .text-muted,\nbody .text-gl-muted,\nbody .text-tertiary {\n  color: var(--lighter) !important;\n}\n.cgray,\n.description-block,\n.help-block {\n  color: var(--lighter) !important;\n}\n[class*=\"gl-text-gray-\"] {\n  color: var(--lighter) !important;\n}\nbody .bg-light {\n  background-color: var(--darker) !important;\n}\nbody .bg-danger {\n  background-color: var(--red) !important;\n}\nbody .bg-secondary {\n  background-color: var(--darken) !important;\n}\nbody .bg-success {\n  background-color: var(--green) !important;\n}\nbody .bg-white,\nbody .bg-gray-light {\n  background-color: var(--dark) !important;\n}\nbody .border-bottom,\nbody .bordered-box {\n  border-color: var(--darker) !important;\n}\nbody .bordered-list > li,\nbody .unstyled-list > li {\n  border-color: var(--darker) !important;\n}\nhtml {\n  scrollbar-color: rgba(136, 136, 136, 0.188) rgba(136, 136, 136, 0.082);\n}\n::-webkit-scrollbar {\n  width: 12px;\n}\n::-webkit-scrollbar-track {\n  background: rgba(136, 136, 136, 0.082);\n}\n::-webkit-scrollbar-thumb {\n  background: rgba(136, 136, 136, 0.188);\n}\nbody ::placeholder {\n  color: var(--lighter) !important;\n}\nbody ::-webkit-input-placeholder {\n  color: var(--lighter) !important;\n}\nbody .page-wrap {\n  background-color: var(--t) !important;\n}\nbody .page-wrap .brand-holder p {\n  color: var(--lighter) !important;\n}\nbody .page-wrap hr.footer-fixed {\n  padding-top: 24px;\n  margin-bottom: 0;\n  background-color: var(--darken) !important;\n}\nbody .page-wrap hr.footer-fixed + .footer-container {\n  background-color: var(--t) !important;\n}\nbody .page-wrap .login-box,\nbody .page-wrap .signup-box,\nbody .page-wrap .omniauth-container {\n  border-radius: 4px;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  box-shadow: inset 0 0 0 1px var(--darker) !important;\n}\nbody .page-wrap .login-box .omniauth-btn,\nbody .page-wrap .signup-box .omniauth-btn,\nbody .page-wrap .omniauth-container .omniauth-btn {\n  background-color: var(--dark) !important;\n}\nbody .page-wrap .login-box .omniauth-divider::before,\nbody .page-wrap .signup-box .omniauth-divider::before,\nbody .page-wrap .omniauth-container .omniauth-divider::before,\nbody .page-wrap .login-box .omniauth-divider::after,\nbody .page-wrap .signup-box .omniauth-divider::after,\nbody .page-wrap .omniauth-container .omniauth-divider::after {\n  border-color: var(--darker) !important;\n}\nbody .page-wrap .login-box input.form-control,\nbody .page-wrap .signup-box input.form-control,\nbody .page-wrap .omniauth-container input.form-control {\n  background-color: var(--dark) !important;\n}\nbody .page-wrap .login-box .btn-success,\nbody .page-wrap .signup-box .btn-success,\nbody .page-wrap .omniauth-container .btn-success,\nbody .page-wrap .login-box .btn-register,\nbody .page-wrap .signup-box .btn-register,\nbody .page-wrap .omniauth-container .btn-register {\n  color: var(--white) !important;\n  border-color: var(--green) !important;\n  background-color: var(--green) !important;\n}\nbody .page-wrap .new-session-tabs {\n  border: 1px solid var(--darker) !important;\n  border-bottom: none !important;\n  box-shadow: none !important;\n  background-color: var(--dark) !important;\n}\nbody .page-wrap .new-session-tabs li:not(.active),\nbody .page-wrap .new-session-tabs li:not(.active):hover a:not(.active) {\n  border-color: var(--darker) !important;\n  background-color: var(--t) !important;\n}\nbody .page-wrap .new-session-tabs li a.active {\n  border-radius: 0;\n  border-color: var(--t) !important;\n  background-color: var(--darken) !important;\n  box-shadow: 0 1px var(--darken);\n}\nbody .page-wrap .new-session-tabs + .tab-content > div {\n  border-radius: 0 0 4px 4px !important;\n}\n.fa {\n  color: var(--lighter) !important;\n}\n.fa.fa-triangle,\n.fa.merge-icon {\n  color: var(--orange) !important;\n}\n.fa.fa-bars:not(#z) {\n  color: var(--light) !important;\n}\n.fa.checkmark {\n  color: var(--green) !important;\n}\n.fa.fa-certificate {\n  color: var(--accent) !important;\n}\n.fa[class*=\"paused\"] {\n  color: var(--red) !important;\n}\n.fa[class*=\"online\"] {\n  color: var(--green) !important;\n}\nsvg.s16,\nsvg.s24,\nsvg.icon {\n  fill: var(--lighter) !important;\n}\nsvg[class][data-testid*=\"status_\"] {\n  fill: currentColor !important;\n}\n.deleted-icon > svg {\n  fill: var(--orange) !important;\n}\n.closed-icon svg {\n  fill: var(--red) !important;\n}\n.created-icon svg {\n  fill: var(--cyan) !important;\n}\n.opened-icon svg {\n  fill: var(--green) !important;\n}\n.accepted-icon svg {\n  fill: var(--cyan) !important;\n}\n.deleted-icon svg {\n  fill: var(--yellow) !important;\n}\n.imported-icon svg {\n  fill: var(--violet) !important;\n}\n.commented-on-icon svg {\n  fill: var(--blue) !important;\n}\nsvg[id*=\"addition-solid\"] {\n  fill: var(--green) !important;\n}\n.commit-icon svg {\n  fill: var(--lighter) !important;\n}\nsvg.ic-eye-slash {\n  fill: var(--orange) !important;\n}\nsvg.text-success {\n  fill: var(--green) !important;\n}\nsvg.text-danger {\n  fill: var(--red) !important;\n}\nsvg.ic-file-addition,\nsvg.ic-file-addition-solid {\n  fill: var(--green) !important;\n}\nsvg.ic-file-modified,\nsvg.ic-file-modified-solid {\n  fill: var(--blue) !important;\n}\nsvg.ic-file-deletion,\nsvg.ic-file-deletion-solid {\n  fill: var(--red) !important;\n}\n[id*=\"status_\"] [fill=\"#FFF\"] {\n  fill: var(--darken) !important;\n}\nsvg.issue-token-state-icon-open {\n  fill: var(--green) !important;\n}\nsvg.issue-token-state-icon-closed {\n  fill: var(--blue) !important;\n}\nsvg.merge-request-status.open {\n  color: var(--green) !important;\n  fill: var(--green) !important;\n}\nsvg.merge-request-status.closed {\n  color: var(--red) !important;\n  fill: var(--red) !important;\n}\n.ci-status {\n  color: var(--light) !important;\n  border-color: var(--darker);\n  background-color: var(--dark) !important;\n}\n.ci-status.ci-success {\n  color: var(--green) !important;\n  border-color: var(--green) !important;\n}\n.ci-status.ci-info,\n.ci-status.ci-running {\n  color: var(--blue) !important;\n  border-color: var(--blue) !important;\n}\n.ci-status.ci-failed {\n  color: var(--red) !important;\n  border-color: var(--red) !important;\n}\n.ci-status.ci-pending,\n.ci-status.ci-waiting-for-resource,\n.ci-status.ci-failed-with-warnings,\n.ci-status.ci-success-with-warnings {\n  color: var(--orange) !important;\n  border-color: var(--orange) !important;\n}\n.ci-status.ci-created,\n.ci-status.ci-skipped {\n  color: var(--light) !important;\n  border-color: var(--lighter) !important;\n}\n.ci-status.ci-canceled,\n.ci-status.ci-disabled,\n.ci-status.ci-scheduled,\n.ci-status.ci-manual {\n  color: var(--lighter) !important;\n  border-color: var(--lighter) !important;\n}\n.ci-status-icon-success[class*=\"dropdown\"] {\n  border-color: var(--green) !important;\n  background-color: var(--darken) !important;\n}\n.ci-status-icon-success:not(#z) svg,\n.ci-status-icon-success[data-toggle] svg {\n  fill: var(--green) !important;\n}\n.ci-status-icon-success svg {\n  border-color: var(--green) !important;\n}\n.ci-status-icon-running[class*=\"dropdown\"],\n.ci-status-icon-preparing[class*=\"dropdown\"] {\n  border-color: var(--blue) !important;\n  background-color: var(--darken) !important;\n}\n.ci-status-icon-running:not(#z) svg,\n.ci-status-icon-preparing:not(#z) svg,\n.ci-status-icon-running[data-toggle] svg,\n.ci-status-icon-preparing[data-toggle] svg {\n  fill: var(--blue) !important;\n}\n.ci-status-icon-running svg,\n.ci-status-icon-preparing svg {\n  border-color: var(--blue) !important;\n}\n.ci-status-icon-failed[class*=\"dropdown\"] {\n  border-color: var(--red) !important;\n  background-color: var(--darken) !important;\n}\n.ci-status-icon-failed:not(#z) svg,\n.ci-status-icon-failed[data-toggle] svg {\n  fill: var(--red) !important;\n}\n.ci-status-icon-failed svg {\n  border-color: var(--red) !important;\n}\n.ci-status-icon-pending[class*=\"dropdown\"],\n.ci-status-icon-waiting-for-resource[class*=\"dropdown\"],\n.ci-status-icon-failed-with-warnings[class*=\"dropdown\"],\n.ci-status-icon-success-with-warnings[class*=\"dropdown\"] {\n  border-color: var(--orange) !important;\n  background-color: var(--darken) !important;\n}\n.ci-status-icon-pending:not(#z) svg,\n.ci-status-icon-waiting-for-resource:not(#z) svg,\n.ci-status-icon-failed-with-warnings:not(#z) svg,\n.ci-status-icon-success-with-warnings:not(#z) svg,\n.ci-status-icon-pending[data-toggle] svg,\n.ci-status-icon-waiting-for-resource[data-toggle] svg,\n.ci-status-icon-failed-with-warnings[data-toggle] svg,\n.ci-status-icon-success-with-warnings[data-toggle] svg {\n  fill: var(--orange) !important;\n}\n.ci-status-icon-pending svg,\n.ci-status-icon-waiting-for-resource svg,\n.ci-status-icon-failed-with-warnings svg,\n.ci-status-icon-success-with-warnings svg {\n  border-color: var(--orange) !important;\n}\n.ci-status-icon-created[class*=\"dropdown\"],\n.ci-status-icon-skipped[class*=\"dropdown\"] {\n  border-color: var(--lighter) !important;\n  background-color: var(--darken) !important;\n}\n.ci-status-icon-created:not(#z) svg,\n.ci-status-icon-skipped:not(#z) svg,\n.ci-status-icon-created[data-toggle] svg,\n.ci-status-icon-skipped[data-toggle] svg {\n  fill: var(--light) !important;\n}\n.ci-status-icon-created svg,\n.ci-status-icon-skipped svg {\n  border-color: var(--light) !important;\n}\n.ci-status-icon-manual[class*=\"dropdown\"],\n.ci-status-icon-canceled[class*=\"dropdown\"],\n.ci-status-icon-disabled[class*=\"dropdown\"],\n.ci-status-icon-scheduled[class*=\"dropdown\"],\n.ci-status-icon-not-found[class*=\"dropdown\"] {\n  border-color: var(--lighter) !important;\n  background-color: var(--darken) !important;\n}\n.ci-status-icon-manual:not(#z) svg,\n.ci-status-icon-canceled:not(#z) svg,\n.ci-status-icon-disabled:not(#z) svg,\n.ci-status-icon-scheduled:not(#z) svg,\n.ci-status-icon-not-found:not(#z) svg,\n.ci-status-icon-manual[data-toggle] svg,\n.ci-status-icon-canceled[data-toggle] svg,\n.ci-status-icon-disabled[data-toggle] svg,\n.ci-status-icon-scheduled[data-toggle] svg,\n.ci-status-icon-not-found[data-toggle] svg {\n  fill: var(--lighter) !important;\n}\n.ci-status-icon-manual svg,\n.ci-status-icon-canceled svg,\n.ci-status-icon-disabled svg,\n.ci-status-icon-scheduled svg,\n.ci-status-icon-not-found svg {\n  border-color: var(--lighter) !important;\n}\n@supports not (-moz-user-select: none) {\n  body .created-icon,\n  body .opened-icon,\n  body .ic-upload,\n  body .gl-icon[data-testid*=\"status_\"],\n  body [class*=\"ci-status\"] svg {\n    filter: invert(0.85) hue-rotate(180deg) saturate(100%);\n  }\n  body :not(#z) .ci-status-icon-created svg,\n  body :not(#z) .ci-status-icon-skipped svg {\n    fill: #333 !important;\n  }\n}\nbody .bs-callout {\n  border-radius: 3px;\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\nbody .bs-callout a {\n  color: var(--accent) !important;\n}\nbody .bs-callout strong {\n  color: inherit !important;\n}\nbody .bs-callout-warning {\n  border-color: var(--orange) !important;\n  background-color: var(--darken) !important;\n}\nbody .bs-callout-success {\n  border-color: var(--green) !important;\n  background-color: var(--darken) !important;\n}\nbody .bs-callout-danger {\n  border-color: var(--red) !important;\n  background-color: var(--darken) !important;\n}\nbody .bs-callout-info {\n  border-color: var(--blue) !important;\n  background-color: var(--darken) !important;\n}\nbody .bs-callout .btn-default,\nbody .bs-callout code:not([class]) {\n  background-color: var(--dark) !important;\n}\nbody .bs-callout.help-callout,\nbody .bs-callout.shared-runners-description {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\nbody .bs-callout.help-callout code,\nbody .bs-callout.shared-runners-description code,\nbody .bs-callout.help-callout .btn-default,\nbody .bs-callout.shared-runners-description .btn-default {\n  background-color: var(--dark) !important;\n}\n.user-callout.promotion-callout {\n  background-color: var(--darken) !important;\n}\n.user-callout.promotion-callout .bordered-box {\n  background-color: var(--darken) !important;\n}\n.user-callout.promotion-callout.center {\n  padding-bottom: 10px;\n  border: 1px solid var(--darker);\n  border-radius: 4px;\n}\n.user-callout.promotion-callout.js-gold-trial-callout > div {\n  margin: 0 -16px;\n}\nbody .bs-callout.gcp-signup-offer {\n  color: var(--light) !important;\n  border-color: var(--blue) !important;\n}\nbody .border-section {\n  border-color: var(--darker) !important;\n}\nbody .scrolling-tabs-container .fade-right {\n  background: linear-gradient(to left, var(--darken) 45%, var(--t));\n}\nbody .scrolling-tabs-container .fade-left {\n  background: linear-gradient(to right, var(--darken) 45%, var(--t));\n}\nbody .toggle-mobile-nav + .breadcrumbs-links {\n  border-color: var(--darker) !important;\n}\n.fork-thumbnail {\n  background-color: var(--dark) !important;\n}\n.fork-thumbnail:hover:not(.disabled),\n.fork-thumbnail.forked {\n  background-color: var(--darken) !important;\n}\nbody .issue-sticky-header {\n  top: 50px !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\nbody .preview.ui-dark,\nbody .preview.gl-dark {\n  border-color: var(--darker) !important;\n}\ninput:hover {\n  box-shadow: none !important;\n}\ninput[type=\"radio\"],\ninput[type=\"checkbox\"],\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus,\ninput[type=\"radio\"]:hover:active,\ninput[type=\"checkbox\"]:hover:active,\ninput[type=\"radio\"]:disabled,\ninput[type=\"checkbox\"]:disabled,\ninput[type=\"radio\"]:hover:active:disabled,\ninput[type=\"checkbox\"]:hover:active:disabled {\n  -webkit-appearance: none !important;\n  -moz-appearance: none !important;\n  appearance: none !important;\n  cursor: pointer !important;\n  height: 1rem !important;\n  width: 1rem !important;\n  border: 1px solid var(--darker) !important;\n  background-size: cover !important;\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n}\ninput[type=\"radio\"]:checked {\n  background-image: url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><circle cx=\"256\" cy=\"256\" r=\"128\" fill=\"white\"/></svg>') !important;\n  border-radius: 100% !important;\n}\ninput[type=\"radio\"]:checked:checked {\n  border-color: var(--accent) !important;\n  background-color: var(--accent) !important;\n}\ninput[type=\"checkbox\"]:checked {\n  background-image: url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"white\" d=\"M99 213l-1 89 104 102 205-201v-91L203 315 99 213z\"/></svg>') !important;\n  border-color: var(--accent) !important;\n  background-color: var(--accent) !important;\n}\ninput[type=\"checkbox\"]:indeterminate {\n  background-image: url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><rect x=\"128\" y=\"192\" width=\"256\" height=\"96\" fill=\"white\"/></svg>') !important;\n  border-color: var(--red) !important;\n  background-color: var(--red) !important;\n}\n[aria-sort=\"ascending\"] {\n  background-image: url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"101\" height=\"101\" view-box=\"0 0 101 101\" preserveAspectRatio=\"none\"><path fill=\"\\%23bf692b\" d=\"M51 1l25 23 24 22H1l25-22z\"/><path fill=\"gray\" opacity=\".6\" d=\"M51 101l25-23 24-22H1l25 22z\"/></svg>') !important;\n}\n[aria-sort=\"descending\"] {\n  background-image: url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"101\" height=\"101\" view-box=\"0 0 101 101\" preserveAspectRatio=\"none\"><path fill=\"gray\" opacity=\".6\" d=\"M51 1l25 23 24 22H1l25-22z\"/><path fill=\"\\%23bf692b\" d=\"M51 101l25-23 24-22H1l25 22z\"/></svg>') !important;\n}\n.with-performance-bar .production {\n  background-color: var(--dark) !important;\n  box-shadow: inset 0 -1px var(--darker) !important;\n}\n.with-performance-bar .backtrace-row {\n  border-radius: 4px;\n}\n.with-performance-bar select {\n  border: 1px solid var(--darker) !important;\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n}\n.with-performance-bar .layout-page,\n.with-performance-bar .content-wrapper {\n  margin-top: 85px !important;\n}\n.navbar {\n  min-height: 50px;\n}\n.navbar-gitlab,\n.navbar.navbar-empty {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.navbar .title > a {\n  margin: 4px 2px 4px -8px !important;\n}\n.navbar .title > a[href=\"/\"]:hover,\n.navbar .title > a[href=\"/\"]:focus {\n  background-color: var(--darker) !important;\n}\n.navbar .title .logo-text svg {\n  fill: var(--light) !important;\n}\n.navbar .canary-badge > .badge {\n  color: var(--white) !important;\n  border-color: var(--green) !important;\n  background-color: var(--green) !important;\n}\n.navbar-sub-nav,\n.navbar-nav {\n  color: var(--lighter) !important;\n}\n.navbar-sub-nav > li > button,\n.navbar-nav > li > button,\n.navbar-sub-nav > li > a,\n.navbar-nav > li > a {\n  transition: 0.2s ease;\n}\n.navbar-sub-nav > li > button[data-toggle],\n.navbar-nav > li > button[data-toggle],\n.navbar-sub-nav > li > a[data-toggle],\n.navbar-nav > li > a[data-toggle] {\n  color: var(--lighter) !important;\n}\n.navbar-sub-nav > li > button:hover:not([aria-expanded=\"true\"]),\n.navbar-nav > li > button:hover:not([aria-expanded=\"true\"]),\n.navbar-sub-nav > li > a:hover:not([aria-expanded=\"true\"]),\n.navbar-nav > li > a:hover:not([aria-expanded=\"true\"]) {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.navbar-sub-nav > li.active > button,\n.navbar-nav > li.active > button,\n.navbar-sub-nav > li.active:hover > button,\n.navbar-nav > li.active:hover > button,\n.navbar-sub-nav > li.show > button,\n.navbar-nav > li.show > button,\n.navbar-sub-nav > li.active > a,\n.navbar-nav > li.active > a,\n.navbar-sub-nav > li.active:hover > a,\n.navbar-nav > li.active:hover > a,\n.navbar-sub-nav > li.show > a,\n.navbar-nav > li.show > a {\n  color: var(--light) !important;\n  background-color: var(--dark) !important;\n}\n.navbar-sub-nav > li .caret-down,\n.navbar-nav > li .caret-down {\n  fill: var(--lighter) !important;\n}\n.navbar-sub-nav [data-toggle=\"dropdown\"]::before,\n.navbar-nav [data-toggle=\"dropdown\"]::before,\n.navbar-sub-nav button.menu-item::before,\n.navbar-nav button.menu-item::before {\n  content: unset !important;\n}\n.navbar .header-help li:first-child > a {\n  margin-top: 0.25rem;\n}\n.navbar .header-help li:first-child::before {\n  content: \"🌚 \" var(--note);\n  display: block;\n  padding: 4px 12px 6px;\n  border-bottom: 1px solid var(--darker);\n  color: var(--light);\n}\n.navbar .header-user-avatar {\n  border: none !important;\n  color: var(--lighter) !important;\n  background-color: var(--t) !important;\n  border-radius: var(--avatar);\n}\n.navbar .btn-sign-in,\n.navbar .btn-sign-in:hover {\n  color: var(--lighter) !important;\n  background-color: var(--dark) !important;\n}\n.nav-sidebar {\n  top: 50px;\n}\n.layout-page,\n.content-wrapper {\n  margin-top: 50px;\n}\n.navbar .show > .dropdown-menu {\n  margin-top: 8px !important;\n}\n.navbar .search-input-container .dropdown-menu {\n  margin-top: 14px !important;\n}\n.gl-accessibility:focus {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.navbar-toggler {\n  border-left-color: var(--darker) !important;\n}\n.navbar-toggler svg {\n  fill: var(--lighter) !important;\n}\n.navbar .search-form > form {\n  box-shadow: none !important;\n}\n.navbar .search-form:hover > form,\n.navbar .search-form.search-active > form {\n  border-color: var(--blue) !important;\n}\n.navbar-gitlab {\n  box-shadow: none !important;\n}\n.navbar svg.s16[data-testid=\"angle-down-icon\"] {\n  width: 11px;\n}\ntable:not(.code):not(#z) {\n  border-spacing: 0;\n  border-collapse: unset;\n  border-radius: 4px;\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\ntable:not(.code):not(#z):not(.b-table-stacked) {\n  display: table;\n}\n@media (max-width: 0) {\n  table:not(.code):not(#z).b-table-stacked-xs {\n    display: block;\n  }\n}\n@media (max-width: 576px) {\n  table:not(.code):not(#z).b-table-stacked-sm {\n    display: block;\n  }\n}\n@media (max-width: 768px) {\n  table:not(.code):not(#z).b-table-stacked-md {\n    display: block;\n  }\n}\n@media (max-width: 992px) {\n  table:not(.code):not(#z).b-table-stacked-lg {\n    display: block;\n  }\n}\n@media (max-width: 1200px) {\n  table:not(.code):not(#z).b-table-stacked-xl {\n    display: block;\n  }\n}\n@media (max-width: 991.98px) {\n  table:not(.code):not(#z)[class*=\"table-stacked\"] {\n    border-color: var(--t) !important;\n    background-color: var(--t) !important;\n  }\n  table:not(.code):not(#z)[class*=\"table-stacked\"] tr > td {\n    border-top: none !important;\n    border-bottom: 1px solid var(--darker) !important;\n  }\n  table:not(.code):not(#z)[class*=\"table-stacked\"] td {\n    background-color: var(--dark) !important;\n    border-left: 1px solid var(--darker) !important;\n  }\n  table:not(.code):not(#z)[class*=\"table-stacked\"] td:first-child {\n    border-radius: 4px 4px 0 0 !important;\n    border-top: 1px solid var(--darker) !important;\n  }\n  table:not(.code):not(#z)[class*=\"table-stacked\"] td:last-child {\n    border-radius: 0 0 4px 4px !important;\n  }\n  table:not(.code):not(#z)[class*=\"table-stacked\"] td:hover {\n    background-color: var(--bb) !important;\n  }\n}\ntable:not(.code):not(#z) thead tr:first-child th:first-child {\n  border-top-left-radius: 4px;\n}\ntable:not(.code):not(#z) thead tr:first-child th:last-child {\n  border-top-right-radius: 4px;\n}\ntable:not(.code):not(#z) thead tr th {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  border-bottom-width: 0px;\n}\ntable:not(.code):not(#z) thead tr th:not(:first-child):not(last-child) {\n  border-left: none;\n}\ntable:not(.code):not(#z) tbody {\n  background-color: var(--t) !important;\n}\ntable:not(.code):not(#z) tbody tr:not(:first-child):not(last-child) td {\n  border-top: none;\n}\ntable:not(.code):not(#z) tbody tr td {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--t) !important;\n}\ntable:not(.code):not(#z) tbody tr td:not(:first-child):not(last-child) {\n  border-left: none;\n}\ntable:not(.code):not(#z) tbody tr td a {\n  color: var(--accent);\n}\ntable:not(.code):not(#z) tbody tr:last-child td:last-child {\n  border-radius: 0 0 4px 0;\n}\ntable:not(.code):not(#z) tbody tr:last-child td:first-child {\n  border-radius: 0 0 0 4px;\n}\ntable:not(.code):not(#z) tbody tr:last-child td:first-child:last-child {\n  border-radius: 0 0 4px 4px;\n}\ntable:not(.code):not(#z):not(.shortcut-mappings) tbody > tr > th {\n  border-bottom-width: 1px !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\ntable:not(.code):not(#z):not(.shortcut-mappings)\n  tbody\n  > tr:not(:first-child)\n  > th {\n  border-top-width: 0px !important;\n}\ntable:not(.code):not(#z):not(.shortcut-mappings)\n  tbody\n  > tr:first-child\n  > th:not(:first-child):not(last-child) {\n  border-left: none;\n}\ntable:not(.code):not(#z):not(.shortcut-mappings)\n  tbody\n  > tr:first-child\n  > th:first-child {\n  border-radius: 4px 0 0 0;\n}\ntable:not(.code):not(#z):not(.shortcut-mappings)\n  tbody\n  > tr:first-child\n  > th:last-child {\n  border-radius: 0 4px 0 0;\n}\ntable:not(.code):not(#z):not(.shortcut-mappings)\n  tbody\n  > tr:first-child\n  > th:first-child:last-child {\n  border-radius: 4px 4px 0 0;\n}\ntable:not(.code):not(#z):not(.shortcut-mappings)\n  tbody\n  > tr:last-child\n  > th:first-child {\n  border-radius: 0 0 0 4px;\n}\ntable:not(.code):not(#z):not(.shortcut-mappings)\n  tbody\n  > tr:first-child:last-child\n  > th:first-child {\n  border-radius: 4px 0 0 4px;\n}\ntable:not(.code):not(#z) tbody:first-child > tr:first-child > td:first-child {\n  border-radius: 4px 0 0 0;\n}\ntable:not(.code):not(#z) tbody:first-child > tr:first-child > td:last-child {\n  border-radius: 0 4px 0 0;\n}\ntable:not(.code):not(#z)\n  tbody:first-child\n  > tr:first-child:last-child\n  > td:first-child {\n  border-radius: 4px 0 0 4px;\n}\ntable:not(.code):not(#z)\n  tbody:first-child\n  > tr:first-child:last-child\n  > td:last-child {\n  border-radius: 0 4px 4px 0;\n}\ntable:not(.code):not(#z) > tr td {\n  border-color: var(--darker) !important;\n}\ntable:not(.code):not(#z) > tr:first-child > td {\n  border-top: none;\n}\ntable:not(.code):not(#z).grid-all > caption {\n  color: var(--lighter) !important;\n}\ntable:not(.code):not(#z).grid-all > thead > tr > th:first-child {\n  border-left: 1px solid var(--darker) !important;\n}\ntable:not(.code):not(#z).grid-all > thead > tr > th:last-child {\n  border-right: 1px solid var(--darker) !important;\n}\ntable:not(.code):not(#z).grid-all > tbody > tr > th:first-child {\n  border-top: none !important;\n  border-bottom: 1px solid var(--darker) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\ntable:not(.code):not(#z).grid-all > tbody > tr > td:last-child {\n  border-right: 1px solid var(--darker) !important;\n}\ntable:not(.code):not(#z).grid-all > tbody > tr:first-child > th {\n  border-top: 1px solid var(--darker) !important;\n}\ntable:not(.code):not(#z).grid-all > tbody > tr:last-child > th {\n  border-radius: 0 0 0 4px;\n}\ntable:not(.code):not(#z).table-striped,\ntable:not(.code):not(#z).active-tokens,\ntable:not(.code):not(#z).pipeline-project-metrics {\n  border: 1px solid var(--darker);\n}\ntable:not(.code):not(#z).table-striped thead > tr > th,\ntable:not(.code):not(#z).active-tokens thead > tr > th,\ntable:not(.code):not(#z).pipeline-project-metrics thead > tr > th {\n  border-top: none;\n}\ntable:not(.code):not(#z).table-striped tbody tr:nth-of-type(2n + 1),\ntable:not(.code):not(#z).active-tokens tbody tr:nth-of-type(2n + 1),\ntable:not(.code):not(#z).pipeline-project-metrics tbody tr:nth-of-type(2n + 1) {\n  background-color: var(--bb) !important;\n}\ntable:not(.code):not(#z).table-striped tbody tr > td,\ntable:not(.code):not(#z).active-tokens tbody tr > td,\ntable:not(.code):not(#z).pipeline-project-metrics tbody tr > td {\n  border-top: 1px solid var(--darker) !important;\n}\ntable:not(.code):not(#z).table-striped\n  tbody\n  tr:not(:first-child)\n  > td.issues-analytics-td,\ntable:not(.code):not(#z).active-tokens\n  tbody\n  tr:not(:first-child)\n  > td.issues-analytics-td,\ntable:not(.code):not(#z).pipeline-project-metrics\n  tbody\n  tr:not(:first-child)\n  > td.issues-analytics-td,\ntable:not(.code):not(#z).table-striped\n  tbody\n  tr:not(:first-child)\n  > td.issues-analytics-td\n  ~ td,\ntable:not(.code):not(#z).active-tokens\n  tbody\n  tr:not(:first-child)\n  > td.issues-analytics-td\n  ~ td,\ntable:not(.code):not(#z).pipeline-project-metrics\n  tbody\n  tr:not(:first-child)\n  > td.issues-analytics-td\n  ~ td {\n  border-top: none !important;\n}\ntable:not(.code):not(#z).gl-table {\n  border: 1px solid var(--darker);\n}\ntable:not(.code):not(#z).gl-table tbody > tr:first-child > td {\n  border-top: 1px solid var(--darker);\n}\ntable:not(.code):not(#z).gl-table tbody > tr:last-child > td {\n  border-bottom: none;\n}\n@media (min-width: 991.98px) {\n  table:not(.code):not(#z).gl-table tbody > tr:hover > td {\n    background-color: var(--bb) !important;\n  }\n}\ntable:not(.code):not(#z).tree-table {\n  border: 1px solid var(--darker);\n}\ntable:not(.code):not(#z).tree-table thead tr,\ntable:not(.code):not(#z).tree-table thead tr th {\n  border-top: none !important;\n}\ntable:not(.code):not(#z).tree-table thead tr > th:first-child {\n  border-top-left-radius: 3px !important;\n}\ntable:not(.code):not(#z).tree-table thead tr > th:last-child {\n  border-top-right-radius: 3px !important;\n}\ntable:not(.code):not(#z).tree-table tbody td {\n  border-color: var(--darker) !important;\n}\ntable:not(.code):not(#z).tree-table tbody tr > td {\n  border-top: 1px solid var(--darker) !important;\n  border-bottom: none !important;\n}\ntable:not(.code):not(#z).tree-table tbody tr.selected td {\n  background-color: var(--darken) !important;\n}\ntable:not(.code):not(#z).tree-table tbody tr:hover:not(.selected) td {\n  background-color: var(--bb) !important;\n}\ntable:not(.code):not(#z).tree-table tbody tr:last-child td:not(#z),\ntable:not(.code):not(#z).tree-table tbody tr:last-child:first-child td:not(#z) {\n  border-bottom: none !important;\n}\ntable:not(.code):not(#z).tree-table tbody:first-child > tr:first-child td {\n  border-top: none !important;\n}\n.tree-item-file-name,\n.tree-item-file-name a,\n.tree-item-file-name i {\n  color: var(--light) !important;\n}\n.tree-commit,\n.tree-commit-link {\n  color: var(--lighter) !important;\n}\ntable:not(.code):not(#z).table.m-0 {\n  margin-bottom: 8px !important;\n  border: 1px solid var(--darker);\n}\ntable:not(.code):not(#z).table.m-0 tbody > tr:last-child:not(#z) > td {\n  border-bottom: none !important;\n}\ntable:not(.code):not(#z).push-pull-table {\n  border: 1px solid var(--darker);\n}\ntable:not(.code):not(#z).push-pull-table thead tr th {\n  border-top: none !important;\n}\n.vulnerability-list thead th {\n  box-shadow: 0 1px var(--darker) !important;\n}\n.gl-responsive-table-row {\n  color: var(--lighter) !important;\n}\n.gl-responsive-table-row:not(:last-child) {\n  border-color: var(--darker) !important;\n}\n.gl-responsive-table-row-clickable:hover {\n  background-color: var(--darken) !important;\n}\n.gl-responsive-table-row.bg-gray-light {\n  background-color: var(--bb) !important;\n}\n.gl-responsive-table-row.bg-gray-light:last-child {\n  border-bottom: 1px solid var(--darker) !important;\n}\n.ci-table {\n  margin-top: 10px;\n  border: 1px solid var(--darker);\n  color: var(--red) !important;\n  background-color: var(--dark) !important;\n  border-radius: 4px;\n}\n.ci-table [class*=\"header\"] {\n  padding: 12px 16px;\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  border-radius: 3px 3px 0 0;\n}\n.ci-table [class$=\"table-row\"] {\n  padding: 8px 16px;\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.ci-table [class$=\"table-row\"]:nth-last-child(2) {\n  border-bottom: none !important;\n  border-radius: 0 0 3px 3px;\n}\n.ci-table [class$=\"table-row\"]:hover {\n  background-color: var(--bb) !important;\n}\n.ci-table .pipeline-actions {\n  padding-right: 16px;\n}\n.js-run-mr-pipeline {\n  margin-right: 16px;\n}\n.ci-table .sprite {\n  fill: var(--lighter) !important;\n}\n.ci-table > tbody > .build > td {\n  border-top: 1px solid var(--darker) !important;\n}\n.ci-table > tbody > .build:hover {\n  background-color: var(--bb) !important;\n}\n.ci-table .commit-sha,\n.ci-table .gfm-commit {\n  color: var(--accent) !important;\n}\n.ci-table .ref-name,\n.ci-table .pipeline-id,\n.ci-table .table-mobile-header,\n.ci-table .build-link,\n.ci-table .build-name a {\n  color: var(--light) !important;\n}\n.ci-table .duration {\n  color: var(--lighter) !important;\n}\n.ci-table .duration svg path {\n  fill: var(--lighter) !important;\n}\n.ci-table.pipeline tbody > tr > th {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--bb) !important;\n}\n.ci-table.pipeline tbody > tr > td {\n  border-top: 1px solid var(--darker) !important;\n}\n.ci-table path[fill=\"#FFF\"] {\n  fill: var(--darken) !important;\n}\n.ci-table .build.retried {\n  background-color: var(--bb) !important;\n}\n[class*=\"col-\"] > table.table {\n  border: 1px solid var(--darker);\n}\n[class*=\"col-\"] > table.table thead tr th {\n  border-top: none;\n}\n[class*=\"col-\"] > table.table tbody tr td {\n  border-top: 1px solid var(--darker) !important;\n}\n[class*=\"col-\"] > table.table tbody tr:hover {\n  background-color: var(--bb) !important;\n}\n.ci-variable-table table colgroup col:nth-child(7) {\n  width: 50px !important;\n}\n.ci-variable-table table tr th:first-child,\n.ci-variable-table table tr td:first-child {\n  padding-left: 16px;\n}\ntable:not(.code):not(#z).import-table {\n  border: 1px solid var(--darker) !important;\n}\ntable:not(.code):not(#z).import-table thead th {\n  border: none !important;\n  background-color: var(--darken) !important;\n}\ntable:not(.code):not(#z).import-table tbody tr:hover td {\n  background-color: var(--bb) !important;\n}\ntable:not(.code):not(#z).import-table tbody td {\n  border-top: 1px solid var(--darker) !important;\n}\n.import-slash-divider {\n  border-color: var(--darker) !important;\n  background-color: var(--bb) !important;\n}\n.save-project-loader {\n  color: var(--lighter) !important;\n}\ntable:not(.code):not(#z) td.d-sm-block {\n  display: table-cell !important;\n}\n[class*=\"dropdown-menu\"] {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n[class*=\"dropdown-menu\"].show {\n  box-shadow: var(--bshadow);\n}\n[class*=\"dropdown-menu\"] .dropdown-info-note {\n  color: var(--lighter) !important;\n}\n[class*=\"dropdown-menu\"] strong,\n[class*=\"dropdown-menu\"] .bold,\n[class*=\"dropdown-menu\"] .text {\n  color: var(--light) !important;\n}\n[class*=\"dropdown-menu\"] span[class*=\"-text\"] {\n  z-index: 1;\n  color: var(--light) !important;\n}\n[class*=\"dropdown-menu\"] [class*=\"input-field\"] {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n[class*=\"dropdown-menu\"] [class*=\"input-field\"]:focus {\n  border-color: var(--blue) !important;\n}\n[class*=\"dropdown-menu\"] .dropdown-title,\n[class*=\"dropdown-menu\"] [class*=\"-header\"] {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n}\n[class*=\"dropdown-menu\"] [class*=\"divider\"],\n[class*=\"dropdown-menu\"] .separator {\n  border-color: var(--darker) !important;\n  background-color: var(--darker) !important;\n}\n[class*=\"dropdown-menu\"] .border-top {\n  border-color: var(--darker) !important;\n}\n[class*=\"dropdown-menu\"] li a,\n[class*=\"dropdown-menu\"] li button {\n  color: var(--lighter) !important;\n}\n[class*=\"dropdown-menu\"] li a:hover,\n[class*=\"dropdown-menu\"] li button:hover,\n[class*=\"dropdown-menu\"] li a:active,\n[class*=\"dropdown-menu\"] li button:active,\n[class*=\"dropdown-menu\"] li a:focus,\n[class*=\"dropdown-menu\"] li button:focus {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n[class*=\"dropdown-menu\"] li a.is-focused,\n[class*=\"dropdown-menu\"] li button.is-focused {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n[class*=\"dropdown-menu\"] li a.is-active,\n[class*=\"dropdown-menu\"] li button.is-active {\n  color: var(--accent) !important;\n}\n[class*=\"dropdown-menu\"] li .btn-success:hover {\n  color: var(--white) !important;\n  background-color: var(--green) !important;\n}\n[class*=\"dropdown-menu\"] li.current-user {\n  color: var(--lighter) !important;\n}\n[class*=\"dropdown-menu\"] li.current-user .bold,\n[class*=\"dropdown-menu\"] li.current-user .user-status {\n  color: var(--light) !important;\n}\n[class*=\"dropdown-menu\"] button {\n  color: var(--lighter) !important;\n}\n[class*=\"dropdown-menu\"] button[class*=\"-note-\"]:not(#z):hover {\n  background-color: var(--darker) !important;\n}\n[class*=\"dropdown-menu\"] button[class*=\"note-delete\"]::before {\n  content: none;\n}\n[class*=\"dropdown-menu\"] button:not(#z):not([class*=\"disable\"]):hover {\n  color: var(--light);\n  background-color: var(--darker);\n}\n[class*=\"dropdown-menu\"] .dropdown-tabs-list {\n  box-shadow: none !important;\n}\n[class*=\"dropdown-menu\"] .dropdown-tab-item {\n  padding: 0 !important;\n  border-color: var(--darker) !important;\n}\n[class*=\"dropdown-menu\"] .dropdown-tab-item a {\n  border-width: 1px !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n[class*=\"dropdown-menu\"] .dropdown-tab-item a:hover {\n  color: var(--light) !important;\n  background-color: var(--t) !important;\n}\n[class*=\"dropdown-menu\"] .dropdown-tab-item a.active {\n  color: var(--light) !important;\n  border-color: var(--t) !important;\n  background-color: var(--darken) !important;\n}\n[class*=\"dropdown-menu\"] .dropdown-footer {\n  border-color: var(--darker) !important;\n}\n[class*=\"dropdown-menu\"] .dropdown-loading {\n  background-color: var(--darken) !important;\n  opacity: 0.9;\n}\n.frequent-items-dropdown-sidebar {\n  border-color: var(--darker) !important;\n}\n.frequent-items-dropdown-sidebar a {\n  color: var(--light) !important;\n}\n.frequent-items-dropdown-sidebar a:hover {\n  background-color: var(--darker) !important;\n}\n.frequent-items-dropdown-content ul li:hover a {\n  background-color: var(--darker) !important;\n}\n.frequent-items-dropdown-content [class*=\"-item-title\"] {\n  color: var(--light) !important;\n}\n.frequent-items-dropdown-content [class*=\"-namespace\"] {\n  color: var(--lighter) !important;\n}\n.frequent-items-dropdown-container .section-header,\n.frequent-items-dropdown-container .section-empty {\n  color: var(--lighter) !important;\n}\n[class*=\"dropdown-menu\"][class*=\"-tabs\"] p {\n  color: var(--lighter) !important;\n}\n[class*=\"dropdown-menu\"][class*=\"-tabs\"] .btn-link:not(#z) {\n  background-color: var(--t) !important;\n}\n[class*=\"dropdown-menu\"][class*=\"-tabs\"] .btn-link:not(#z):hover {\n  background-color: var(--darker) !important;\n}\n.select2-highlighted .select2-result-label {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.select2-result-label {\n  color: var(--light) !important;\n}\n.select2-choice,\n.select2-choices {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.select2-arrow::after {\n  color: var(--lighter) !important;\n}\n.select2-match {\n  color: var(--accent) !important;\n}\n.select2-drop {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  box-shadow: var(--bshadow);\n}\n.select2-input:not(#z) {\n  font-family: var(--ui-font) !important;\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--t) !important;\n}\n.select2-container-disabled > a {\n  background-color: var(--darker) !important;\n}\n.select2-container-disabled .select2-arrow {\n  background-color: var(--t) !important;\n}\n[class*=\"dropdown-menu\"][class*=\"big-pipe\"]::before,\n[class*=\"dropdown-menu\"][class*=\"big-pipe\"]::after {\n  border-color: var(--t) !important;\n}\n[class*=\"dropdown-menu\"][class*=\"mini-pipe\"]::before,\n[class*=\"dropdown-menu\"][class*=\"mini-pipe\"]::after {\n  border-color: var(--t) !important;\n}\n[class*=\"dropdown-menu\"] [class*=\"counter-badge\"] {\n  font-weight: normal;\n  color: var(--lighter) !important;\n}\n.gl-new-dropdown .btn {\n  box-shadow: none !important;\n}\n.gl-new-dropdown .btn.dropdown-toggle[id*=\"15\"] {\n  padding: 8px 8px 8px 10px !important;\n}\n.gl-new-dropdown .btn + ul [class*=\"text-pri\"] {\n  color: var(--light) !important;\n}\n.gl-new-dropdown .btn + ul [class*=\"text-sec\"] {\n  color: var(--lighter) !important;\n}\n.gl-new-dropdown .btn.dropdown-toggle-split::after {\n  filter: invert(0.7) !important;\n}\n.droplab-dropdown .form-control {\n  background-color: var(--dark) !important;\n}\n.droplab-dropdown .menu-item:not(.disable-hover) {\n  color: var(--lighter) !important;\n}\n.droplab-dropdown .menu-item:not(.disable-hover):hover {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.droplab-dropdown [class*=\"selected\"] .menu-item,\n.droplab-dropdown [class*=\"selected\"] .menu-item .fa {\n  color: var(--light) !important;\n}\n.droplab-item-active:not(#z) button {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.dropdown-menu-inner-title,\n.dropdown-menu-inner-content {\n  background-color: var(--t) !important;\n}\n.dropdown-menu-inner-content {\n  color: var(--lighter) !important;\n}\n.dropdown-menu-user-link:not(:hover) strong,\n.dropdown-menu-user-link:not(:hover) span {\n  color: var(--lighter) !important;\n}\n.dropdown-menu-user-name,\n.dropdown-menu-user-full-name,\n.dropdown-menu-user-username {\n  background-color: var(--t) !important;\n}\n[class*=\"dropdown-menu\"]:not(#z) .dropdown-menu-close,\n[class*=\"dropdown-menu\"]:not(#z) .dropdown-menu-close:hover {\n  background-color: var(--t) !important;\n}\n[class*=\"dropdown-menu\"]:not(#z) .dropdown-menu-close-icon {\n  background-color: var(--t) !important;\n}\n[data-page^=\"search:\"] .dropdown-menu[class*=\"select\"],\n[data-page^=\"projects:\"] .dropdown-menu[class*=\"select\"],\n[data-page^=\"dashboard:\"] .dropdown-menu[class*=\"select\"] {\n  max-height: 420px !important;\n}\n.btn {\n  z-index: 1;\n  position: relative;\n}\n.btn,\n[data-toggle=\"dropdown\"],\n.btn-default {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.btn svg,\n[data-toggle=\"dropdown\"] svg,\n.btn-default svg {\n  fill: var(--lighter) !important;\n}\n.btn.active > .fa {\n  color: var(--light) !important;\n}\n.btn:hover::before,\n[data-toggle=\"dropdown\"]:hover::before,\n.btn-default:hover::before {\n  content: \"\";\n  background-color: rgba(136, 136, 136, 0.188);\n}\n.btn[id*=\"promotion\"],\n[data-toggle=\"dropdown\"][id*=\"promotion\"],\n.btn-default[id*=\"promotion\"] {\n  background-color: var(--t) !important;\n}\n.btn[id*=\"promotion\"]::before,\n[data-toggle=\"dropdown\"][id*=\"promotion\"]::before,\n.btn-default[id*=\"promotion\"]::before {\n  content: unset !important;\n}\n.active > [data-toggle=\"dropdown\"]:not([class*=\"ci-status\"]) svg,\n.show > [data-toggle=\"dropdown\"]:not([class*=\"ci-status\"]) svg {\n  fill: var(--light) !important;\n}\n.btn.btn-xs,\n.btn-xs.stat-text {\n  padding: 8px 10px;\n  background-color: var(--dark) !important;\n}\n.btn.btn-xs:not(#z).btn-primary,\n.btn-xs.stat-text:not(#z).btn-primary {\n  color: var(--white) !important;\n  border-color: var(--accent) !important;\n  background-color: var(--accent) !important;\n}\n.git-clone-holder .form-control {\n  font-family: var(--mono-font) !important;\n  background-color: var(--dark) !important;\n}\n.btn[data-toggle=\"dropdown\"].btn-link {\n  border-color: var(--t) !important;\n  background-color: var(--t) !important;\n}\n.btn::before,\n[data-toggle=\"dropdown\"]::before {\n  z-index: 0;\n  opacity: 0.2;\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  transition: opacity 0.2s ease;\n  border-radius: inherit;\n}\n.btn:hover::before {\n  opacity: 0.35;\n}\n.btn.btn-remove,\n.btn.btn-danger {\n  color: var(--white) !important;\n  border-color: var(--red) !important;\n  background-color: var(--red) !important;\n}\n.btn.btn-remove:not(.btn-inverted),\n.btn.btn-danger:not(.btn-inverted) {\n  transition: opacity 0.2s ease;\n}\n.btn.btn-remove:not(.btn-inverted) .fa,\n.btn.btn-danger:not(.btn-inverted) .fa {\n  color: var(--white) !important;\n}\n.btn.btn-remove:not(.btn-inverted) svg,\n.btn.btn-danger:not(.btn-inverted) svg {\n  fill: var(--white) !important;\n}\n.btn.btn-remove:not(.btn-inverted):hover,\n.btn.btn-danger:not(.btn-inverted):hover {\n  opacity: 0.8;\n}\n.btn.btn-remove.btn-inverted,\n.btn.btn-danger.btn-inverted {\n  color: var(--red) !important;\n  border-color: var(--red) !important;\n  background-color: var(--dark) !important;\n}\n.btn.btn-remove.btn-inverted::before,\n.btn.btn-danger.btn-inverted::before {\n  content: \"\";\n  background-color: var(--red) !important;\n}\n.btn.btn-remove.btn-inverted .fa,\n.btn.btn-danger.btn-inverted .fa {\n  color: var(--red) !important;\n}\n.btn.btn-remove.btn-inverted svg,\n.btn.btn-danger.btn-inverted svg {\n  fill: var(--red) !important;\n}\n.btn.btn-close,\n.btn.btn-close-color,\n.btn.btn-warning {\n  color: var(--orange) !important;\n  border-color: var(--orange) !important;\n  background-color: var(--dark) !important;\n}\n.btn.btn-close::before,\n.btn.btn-close-color::before,\n.btn.btn-warning::before {\n  content: \"\";\n  background-color: var(--orange) !important;\n}\n.btn.btn-close .fa,\n.btn.btn-close-color .fa,\n.btn.btn-warning .fa {\n  color: var(--orange) !important;\n}\n.btn.btn-close svg,\n.btn.btn-close-color svg,\n.btn.btn-warning svg {\n  fill: var(--orange) !important;\n}\n.btn.btn-success {\n  color: var(--white) !important;\n  border-color: var(--green) !important;\n  background-color: var(--green) !important;\n}\n.btn.btn-success:not(.btn-inverted) {\n  transition: opacity 0.2s ease;\n}\n.btn.btn-success:not(.btn-inverted) .fa {\n  color: var(--white) !important;\n}\n.btn.btn-success:not(.btn-inverted) svg {\n  fill: var(--white) !important;\n}\n.btn.btn-success:not(.btn-inverted):hover {\n  opacity: 0.8;\n}\n.btn.btn-success.btn-inverted {\n  color: var(--green) !important;\n  border-color: var(--green) !important;\n  background-color: var(--dark) !important;\n}\n.btn.btn-success.btn-inverted::before {\n  content: \"\";\n  background-color: var(--green) !important;\n}\n.btn.btn-success.btn-inverted .fa {\n  color: var(--green) !important;\n}\n.btn.btn-success.btn-inverted svg {\n  fill: var(--green) !important;\n}\n.btn.btn-success.js-new-release-btn:not(#z) {\n  color: var(--white) !important;\n}\n.btn.btn-primary,\n.btn.btn-info {\n  color: var(--white) !important;\n  border-color: var(--blue) !important;\n  background-color: var(--blue) !important;\n}\n.btn.btn-primary:not(.btn-inverted),\n.btn.btn-info:not(.btn-inverted) {\n  transition: opacity 0.2s ease;\n}\n.btn.btn-primary:not(.btn-inverted) .fa,\n.btn.btn-info:not(.btn-inverted) .fa {\n  color: var(--white) !important;\n}\n.btn.btn-primary:not(.btn-inverted) svg,\n.btn.btn-info:not(.btn-inverted) svg {\n  fill: var(--white) !important;\n}\n.btn.btn-primary:not(.btn-inverted):hover,\n.btn.btn-info:not(.btn-inverted):hover {\n  opacity: 0.8;\n}\n.btn.btn-primary.btn-inverted,\n.btn.btn-info.btn-inverted {\n  color: var(--blue) !important;\n  border-color: var(--blue) !important;\n  background-color: var(--dark) !important;\n}\n.btn.btn-primary.btn-inverted::before,\n.btn.btn-info.btn-inverted::before {\n  content: \"\";\n  background-color: var(--blue) !important;\n}\n.btn.btn-primary.btn-inverted .fa,\n.btn.btn-info.btn-inverted .fa {\n  color: var(--blue) !important;\n}\n.btn.btn-primary.btn-inverted svg,\n.btn.btn-info.btn-inverted svg {\n  fill: var(--blue) !important;\n}\n.btn.btn-primary.new-gl-button,\n.btn.btn-info.new-gl-button {\n  box-shadow: none !important;\n}\n.btn.btn-inverted-secondary {\n  color: var(--accent) !important;\n  border-color: var(--accent) !important;\n}\n.btn.btn-inverted-secondary::before {\n  content: \"\";\n  background-color: var(--accent) !important;\n}\n.btn.btn-secondary:focus,\n.btn.btn-secondary.focus {\n  box-shadow: 0 0 0 0.2rem rgba(136, 136, 136, 0.063) !important;\n}\n.btn.gl-link[href] {\n  color: var(--light) !important;\n}\n.btn-link {\n  color: var(--accent) !important;\n  border-color: var(--t) !important;\n  background-color: var(--t) !important;\n}\n.btn.active {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darker) !important;\n}\n.btn-transparent:not(#z),\n.btn-default-tertiary {\n  color: var(--lighter);\n  border-color: var(--t) !important;\n  background-color: var(--t) !important;\n}\n.btn-transparent:not(#z)::before,\n.btn-default-tertiary::before {\n  content: unset;\n}\n.btn[disabled]:not(#z)::before,\n.btn.disabled:not(#z)::before {\n  content: unset;\n}\n.btn[disabled]:not(#z),\n.btn.disabled:not(#z),\n.btn[disabled]:not(#z):hover,\n.btn.disabled:not(#z):hover {\n  opacity: 0.5 !important;\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.btn[disabled]:not(#z) .fa,\n.btn.disabled:not(#z) .fa {\n  color: var(--lighter) !important;\n}\n.btn.award-control {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.btn.award-control.active,\n.btn.award-control.is-active {\n  color: var(--accent) !important;\n  border-color: var(--accent) !important;\n  background-color: var(--darken) !important;\n}\n.btn.award-control.active::before,\n.btn.award-control.is-active::before {\n  content: \"\";\n  background-color: var(--accent) !important;\n}\n.btn.gpg-status-box.invalid {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.btn.gpg-status-box.valid {\n  color: var(--green) !important;\n  border-color: var(--green) !important;\n  background-color: var(--darken) !important;\n}\n.status-box {\n  color: var(--white) !important;\n}\n.status-box-issue-closed,\n.status-box-mr-merged {\n  background-color: var(--blue) !important;\n}\n.status-box-closed,\n.status-box-mr-closed {\n  background-color: var(--red) !important;\n}\n.status-box-expired {\n  background-color: var(--orange) !important;\n}\n.status-box-upcoming {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.status-box-open {\n  background-color: var(--green) !important;\n}\n.status-box > svg.s16 {\n  fill: var(--white) !important;\n}\n.input-group-append,\n.input-group-prepend {\n  background-color: var(--t) !important;\n}\n.input-group-append > [class*=\"-text\"],\n.input-group-prepend > [class*=\"-text\"] {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n}\n.input-group-append > [class*=\"-text\"]:not(.label-color-preview),\n.input-group-prepend > [class*=\"-text\"]:not(.label-color-preview) {\n  background-color: var(--bb) !important;\n}\n.project-repo-buttons .btn {\n  padding: 6px 10px;\n}\n.project-repo-buttons .count {\n  color: var(--light) !important;\n}\n.project-repo-buttons .count-badge-count {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.project-repo-buttons .count-badge,\n.project-repo-buttons .btn-xs {\n  height: 32px !important;\n  font-size: 14px !important;\n}\n.project-repo-buttons .count-badge:last-child {\n  margin-right: 0 !important;\n}\n.text-expander {\n  padding: 2px 4px;\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.text-expander.open {\n  color: var(--accent) !important;\n  background-color: var(--darker) !important;\n}\n.btn-missing,\n.stat-text {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.provider-btn {\n  line-height: unset;\n  border-radius: 0 4px 4px 0;\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n}\n.provider-btn-group {\n  border-radius: 4px;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.provider-btn-image {\n  border-radius: 4px 0 0 4px;\n  border-color: var(--darker) !important;\n  background-color: var(--darker) !important;\n}\n.btn-link::before,\n.btn-blank::before,\n.btn-clipboard::before {\n  content: unset !important;\n}\n.btn.bg-transparent {\n  background-color: var(--t) !important;\n}\n.btn.gl-button {\n  border: 1px solid;\n  box-shadow: none !important;\n}\n.btn.gl-button.btn-dashed {\n  outline-color: var(--bb) !important;\n}\n.btn.gl-button.btn-dashed:active,\n.btn.gl-button.btn-dashed:focus {\n  border-color: var(--blue) !important;\n}\n.label.label-monospace {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--bb) !important;\n}\n.label.scoped-label .fa-question-circle {\n  background-color: var(--t) !important;\n}\n.label.scoped-label .fa-question-circle[style*=\"#FFFFFF\"] {\n  color: var(--white) !important;\n}\n.label.scoped-label .fa-question-circle[style*=\"#333333\"] {\n  color: #000 !important;\n}\n.label-link,\n.label-link .badge {\n  text-decoration: none !important;\n}\n.label-badge {\n  color: var(--light) !important;\n}\n.label-badge-blue {\n  color: var(--white) !important;\n  background-color: var(--blue) !important;\n}\n.label-badge-gray {\n  color: var(--lighter) !important;\n  background-color: var(--darken) !important;\n}\n.label-links a {\n  color: var(--accent) !important;\n}\n.label-action svg {\n  fill: var(--lighter) !important;\n}\n.label-subscribe-button {\n  font-weight: 400;\n}\n.label-lfs {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.badge.issues-count {\n  color: var(--white) !important;\n  background-color: var(--green) !important;\n}\n.badge.merge-requests-count {\n  color: var(--white) !important;\n  background-color: var(--orange) !important;\n}\n.badge.todos-count {\n  color: var(--white) !important;\n  background-color: var(--blue) !important;\n}\n.badge.badge-pill.badge-secondary {\n  color: var(--lighter) !important;\n  background-color: var(--darker) !important;\n}\n.badge.badge-pill.badge-secondary:hover {\n  color: var(--light) !important;\n}\n.badge-pill {\n  color: var(--lighter) !important;\n  background-color: var(--darker) !important;\n}\n.badge.badge-gray {\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n}\n.issue-count-badge,\n.mr-count-badge,\n.issue-count-badge + button,\n.mr-count-badge + button {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.badge.color-label {\n  box-shadow: inset 0 0 0 1rem rgba(51, 51, 51, 0.439);\n}\n.badge.color-label:hover {\n  box-shadow: none !important;\n}\n.badge.color-label[style*=\"color: #333333\"] {\n  color: #000 !important;\n  box-shadow: inset 0 0 0 1rem rgba(51, 51, 51, 0.145);\n}\n.badge-primary,\n.badge-info,\n.badge-active {\n  color: var(--white) !important;\n  background-color: var(--blue) !important;\n}\n.badge-light,\n.badge-secondary,\n.badge-inactive {\n  color: var(--lighter) !important;\n  background-color: var(--darken) !important;\n}\n.badge-warning {\n  color: var(--white) !important;\n  background-color: var(--orange) !important;\n}\n.badge-success {\n  color: var(--white) !important;\n  background-color: var(--green) !important;\n}\n.badge-danger {\n  color: var(--white) !important;\n  background-color: var(--red) !important;\n}\n.badge-dark {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.form-control,\n.search form {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  border: 1px solid var(--darker) !important;\n}\n.form-control:focus,\n.search form:focus,\n.form-control.focus,\n.search form.focus {\n  border-color: var(--blue) !important;\n  box-shadow: 0 0 0.4rem -0.2rem var(--blue) !important;\n}\n.form-control[disabled=\"disabled\"]:not(#z),\n.search form[disabled=\"disabled\"]:not(#z) {\n  opacity: 0.5;\n}\n.navbar .form-control,\n.navbar .search form {\n  background-color: var(--dark) !important;\n}\n.top-area .form-control,\n.top-area .search form {\n  height: 35px;\n}\n.form-control #search,\n.search form #search {\n  color: var(--light) !important;\n  background-color: var(--t) !important;\n  box-shadow: none !important;\n}\n.form-control #search ~ [class*=\"dropdown-menu\"] .is-active,\n.search form #search ~ [class*=\"dropdown-menu\"] .is-active {\n  color: var(--light) !important;\n}\n.dropdown-content-faded-mask::after {\n  background: linear-gradient(to top, var(--darken), var(--t)) !important;\n}\n.form-control .search-icon,\n.search form .search-icon {\n  fill: var(--lighter) !important;\n}\n.form-actions {\n  border-color: var(--darker) !important;\n  background-color: var(--t) !important;\n}\n.form-control.select-control,\n.search form.select-control {\n  background-color: var(--darken) !important;\n}\n.atwho-view {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n  box-shadow: var(--bshadow);\n}\n.atwho-view .atwho-view-ul li {\n  color: var(--light) !important;\n}\n.atwho-view .atwho-view-ul li strong {\n  color: var(--accent) !important;\n}\n.atwho-view .atwho-view-ul li small,\n.atwho-view .atwho-view-ul li .params {\n  color: var(--lighter) !important;\n}\n.atwho-view .atwho-view-ul li:hover,\n.atwho-view .atwho-view-ul li.cur {\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n}\nul.content-list li {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n}\nul.content-list li a {\n  color: var(--light) !important;\n}\n.item-meta * {\n  color: var(--lighter) !important;\n}\nul.content-list li .todo-label a,\nul.content-list li .todo-project a {\n  color: var(--accent) !important;\n}\nul.content-list li .group-row-contents:hover {\n  background-color: var(--darken) !important;\n}\nul.content-list li .group-row-contents .metadata span,\nul.content-list li .group-row-contents .metadata div {\n  color: var(--lighter) !important;\n}\n.has-no-search-results {\n  color: var(--lighter) !important;\n}\nul.content-list li.group-row .description p,\nul.content-list li.group-row .stats {\n  color: var(--lighter) !important;\n}\nul.content-list li.issue:hover,\nul.content-list li.merge-request:hover,\nul.content-list li[id*=\"epic\"]:hover {\n  background-color: var(--darken) !important;\n}\nul.content-list:not(.event_commits) > li.commit:hover {\n  background-color: var(--bb) !important;\n}\nul.content-list.all-branches .graph-side .bar,\nul.content-list.all-branches .graph-separator {\n  background-color: var(--darker) !important;\n}\nul.content-list.all-branches .branch-item:hover {\n  background-color: var(--bb) !important;\n}\nul.content-list.all-branches .commit-sha {\n  color: var(--accent) !important;\n}\nul.content-list.all-branches .cgray {\n  color: var(--lighter) !important;\n}\nul.content-list.issuable-list .issue.today:not(.user-can-drag) {\n  position: relative;\n}\nul.content-list.issuable-list .issue.today:not(.user-can-drag):hover {\n  background-color: var(--t) !important;\n}\nul.content-list.issuable-list .issue.today:not(.user-can-drag):hover::before {\n  opacity: 0.12;\n}\nul.content-list.issuable-list .issue.today:not(.user-can-drag):not(:hover) {\n  background-color: var(--t) !important;\n}\nul.content-list.issuable-list .issue.today:not(.user-can-drag)::before {\n  content: \"\";\n  z-index: -1;\n  opacity: 0.05;\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  background-color: var(--green) !important;\n}\nul.content-list.issuable-list .closed,\nul.content-list.issuable-list .merged {\n  background-color: var(--t) !important;\n}\nul.content-list.issuable-list .fa:not(.fa-question-circle),\nul.content-list.issuable-list .task-status {\n  color: var(--lighter) !important;\n}\nul.content-list.issuable-list .issuable-milestone,\nul.content-list.issuable-list .issuable-info,\nul.content-list.issuable-list .issuable-updated-at {\n  color: var(--lighter) !important;\n}\n.issuable-email-modal-btn {\n  color: var(--accent) !important;\n}\n.icon-merge-request-unmerged {\n  filter: invert(0.7);\n}\nul.content-list.issuable-list.manual-ordering {\n  color: var(--red) !important;\n  border-color: var(--green) !important;\n  background-color: var(--darken) !important;\n}\nul.content-list.issuable-list.manual-ordering > .issue {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\nul.content-list.requirements-list > li:not([class*=\"gl-bg\"]):hover {\n  background-color: var(--t) !important;\n}\nul.content-list.members-list li {\n  background-color: var(--bb) !important;\n}\nul.content-list.members-list li:hover {\n  background-color: var(--darken) !important;\n}\ninput.form-control + button {\n  border-color: var(--darker) !important;\n}\nul.content-list .snippet-filename,\nul.content-list .snippet-info {\n  color: var(--lighter) !important;\n}\n.nav-sidebar {\n  border-right: 1px solid var(--darker);\n  background-color: var(--darken) !important;\n  box-shadow: none;\n}\n.nav-sidebar .context-header > * {\n  color: var(--light) !important;\n}\n.nav-sidebar .context-header > *:hover {\n  background-color: var(--darker) !important;\n}\n.nav-sidebar .context-header > * .avatar-container {\n  border-color: var(--t) !important;\n  background-color: var(--t) !important;\n}\n.nav-sidebar .divider {\n  border-color: var(--darker) !important;\n}\n.nav-sidebar .sidebar-top-level-items > li:hover {\n  background-color: rgba(136, 136, 136, 0.063) !important;\n}\n.nav-sidebar .sidebar-top-level-items > li:hover > a {\n  color: var(--light) !important;\n}\n.nav-sidebar .sidebar-top-level-items > li.active {\n  background-color: rgba(136, 136, 136, 0.063) !important;\n  box-shadow: inset 4px 0 var(--accent) !important;\n}\n.nav-sidebar .sidebar-top-level-items > li.active > a {\n  color: var(--light) !important;\n}\n.nav-sidebar .sidebar-top-level-items > li.active > a svg {\n  fill: var(--light) !important;\n}\n.nav-sidebar\n  .sidebar-top-level-items\n  > li.active:not(.is-over)\n  > ul\n  > li.active\n  > a {\n  background-color: var(--darker) !important;\n  box-shadow: inset 4px 0 var(--accent) !important;\n}\n.nav-sidebar .sidebar-top-level-items > li.active .badge-pill {\n  color: var(--light) !important;\n}\n.nav-sidebar .sidebar-top-level-items > li a {\n  color: var(--lighter) !important;\n}\n.nav-sidebar .sidebar-top-level-items > li a:hover {\n  background-color: var(--t) !important;\n}\n.nav-sidebar .sidebar-top-level-items > li .badge-pill {\n  color: var(--lighter) !important;\n  background-color: var(--darker) !important;\n}\n.nav-sidebar .sidebar-top-level-items > li.is-over:not(#z) ul > li,\n.nav-sidebar .sidebar-top-level-items > li.is-over:not(#z) ul > li > a {\n  box-shadow: unset !important;\n}\n.nav-sidebar .sidebar-sub-level-items > li:hover {\n  background-color: var(--darker) !important;\n  box-shadow: inset 4px 0 var(--accent) !important;\n}\n.nav-sidebar .sidebar-sub-level-items > li:hover a {\n  color: var(--light) !important;\n}\n.nav-sidebar .sidebar-sub-level-items > li.active {\n  box-shadow: inset 4px 0 var(--accent) !important;\n}\n.nav-sidebar .sidebar-sub-level-items > li.active a {\n  color: var(--light) !important;\n}\n.nav-sidebar .is-over.is-showing-fly-out > a {\n  color: var(--light) !important;\n  background-color: rgba(136, 136, 136, 0.063) !important;\n}\n.nav-sidebar .is-over.is-showing-fly-out ul {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  box-shadow: none;\n}\n.nav-sidebar .is-over.is-showing-fly-out ul li a {\n  color: var(--lighter) !important;\n}\n.nav-sidebar .is-over.is-showing-fly-out ul li a:focus {\n  background-color: var(--darker) !important;\n}\n.nav-sidebar .is-over.is-showing-fly-out ul li:hover a {\n  color: var(--light) !important;\n  background-color: rgba(136, 136, 136, 0.063) !important;\n}\n.nav-sidebar[class*=\"collapsed\"] .sidebar-top-level-items > li.active {\n  background-color: var(--darker) !important;\n}\n.nav-sidebar .toggle-sidebar-button,\n.nav-sidebar .close-nav-button {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.nav-sidebar .toggle-sidebar-button svg,\n.nav-sidebar .close-nav-button svg {\n  color: var(--lighter) !important;\n}\n.nav-sidebar .toggle-sidebar-button span,\n.nav-sidebar .close-nav-button span {\n  color: var(--light) !important;\n}\n.nav-sidebar .toggle-sidebar-button:hover,\n.nav-sidebar .close-nav-button:hover {\n  background-color: var(--darker) !important;\n}\n.nav-sidebar:not(.js-sidebar-collapsed)\n  + .content-wrapper\n  .pipeline-visualization\n  > div[style*=\"padding-left: 0px\"] {\n  padding-left: 0px !important;\n  padding-left: 240px !important;\n}\n.nav-sidebar.js-sidebar-collapsed\n  + .content-wrapper\n  .pipeline-visualization\n  > div[style*=\"padding-left: 0px\"] {\n  padding-left: 0px !important;\n  padding-left: 70px !important;\n}\n.right-sidebar {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  top: 50px !important;\n}\n.right-sidebar .title {\n  color: var(--light) !important;\n}\n.right-sidebar .block {\n  border-color: var(--darker) !important;\n}\n.right-sidebar .edit-link,\n.right-sidebar .lock-edit,\n.right-sidebar .no-value,\n.right-sidebar a[href=\"#\"] {\n  color: var(--lighter) !important;\n}\n.right-sidebar a:not(.btn):hover,\n.right-sidebar .btn-link:not(.btn):hover {\n  color: var(--accent);\n}\n.gl-drawer {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n  box-shadow: -1px 0 var(--darker), var(--bshadow);\n  top: 50px !important;\n}\n.gl-drawer-header,\n.gl-drawer-body > * {\n  border-color: var(--darker) !important;\n}\n.right-sidebar .issuable-sidebar {\n  overflow-y: auto !important;\n}\n.right-sidebar .issuable-sidebar .gutter-toggle {\n  border-color: var(--darker) !important;\n  background-color: var(--t) !important;\n}\n.right-sidebar .issuable-sidebar-header button,\n.right-sidebar .issuable-sidebar .dropdown button {\n  background-color: var(--dark) !important;\n}\n.right-sidebar .issuable-sidebar-header .btn-info,\n.right-sidebar .issuable-sidebar .dropdown .btn-info {\n  background-color: var(--blue) !important;\n}\n.right-sidebar .time_tracker .compare-label {\n  color: var(--lighter) !important;\n}\n.right-sidebar .time_tracker .compare-value {\n  color: var(--light) !important;\n}\n.right-sidebar .time_tracker .time-tracking-help-state {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.right-sidebar.build-sidebar .builds-container {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.right-sidebar.build-sidebar .builds-container .build-job.retried {\n  background-color: var(--t) !important;\n}\n.right-sidebar.build-sidebar .builds-container .build-job:hover {\n  background-color: var(--bb) !important;\n}\n.right-sidebar.build-sidebar .builds-container .build-job:hover a {\n  color: var(--light) !important;\n}\n.right-sidebar.build-sidebar .blocks-container a:not(.btn),\n.right-sidebar.build-sidebar .blocks-container .btn-link:not(.btn) {\n  color: var(--accent) !important;\n}\n.right-sidebar.build-sidebar .btn,\n.right-sidebar.build-sidebar [data-toggle=\"dropdown\"] {\n  background-color: var(--dark) !important;\n}\n.right-sidebar .is-option-selected > span {\n  color: var(--lighter) !important;\n}\n.right-sidebar .vertical-timeline::before {\n  border-color: var(--lighter) !important;\n}\n.right-sidebar .vertical-timeline-icon {\n  background-color: var(--darken) !important;\n}\n.right-sidebar .vertical-timeline-icon.opened svg {\n  fill: var(--green) !important;\n}\n.right-sidebar .vertical-timeline-icon.closed svg {\n  fill: var(--blue) !important;\n}\n.right-sidebar .vertical-timeline-content a:hover {\n  color: var(--accent) !important;\n}\n.right-sidebar .labels-select-wrapper .label-item.is-focused,\n.right-sidebar .labels-select-wrapper .label-item:hover {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.right-sidebar .labels-select-wrapper .gl-link:not(.gl-label-link),\n.right-sidebar .labels-select-wrapper .btn-link:not(.gl-label-link) {\n  color: var(--lighter) !important;\n}\n.right-sidebar .labels-select-dropdown-contents {\n  border: 1px solid var(--darker) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  box-shadow: var(--bshadow) !important;\n}\n.right-sidebar .labels-select-dropdown-contents .dropdown-title,\n.right-sidebar .labels-select-dropdown-contents .dropdown-footer {\n  border-color: var(--darker) !important;\n}\n.right-sidebar .btn-group li .dropdown-item:hover {\n  background-color: var(--darker) !important;\n}\n.right-sidebar .btn-group li .dropdown-item,\n.right-sidebar .btn-group li .dropdown-item button.btn {\n  background-color: var(--t) !important;\n}\n.right-sidebar .btn-group li .dropdown-item .btn.is-active::before {\n  content: \"\\f00c\" !important;\n  opacity: 1 !important;\n  background-color: var(--t) !important;\n}\n.dropdown-title-button {\n  position: absolute;\n}\n.right-sidebar.right-sidebar-collapsed .sidebar-collapsed-icon {\n  color: var(--light) !important;\n}\n.right-sidebar.right-sidebar-collapsed .sidebar-collapsed-icon svg {\n  fill: var(--lighter) !important;\n}\n.right-sidebar.right-sidebar-collapsed .gutter-toggle {\n  background-color: var(--darken) !important;\n}\n.right-sidebar.right-sidebar-collapsed .gutter-toggle:hover,\n.right-sidebar.right-sidebar-collapsed .block:hover {\n  background-color: rgba(136, 136, 136, 0.063) !important;\n}\n.top-area {\n  border-color: var(--darker) !important;\n}\n.nav-links:not(.quick-links) {\n  border-color: var(--darker) !important;\n}\n.nav-links li .badge.badge-pill {\n  color: var(--lighter) !important;\n  background-color: var(--darker) !important;\n}\n.nav-links li a,\n.nav-links li button {\n  color: var(--lighter) !important;\n}\n.nav-links li a:focus,\n.nav-links li button:focus {\n  border-color: var(--darker) !important;\n}\n.nav-links li:hover a,\n.nav-links li:hover button {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n}\n.nav-links li.active,\n.nav-links li.active a,\n.nav-links li.active button {\n  color: var(--light) !important;\n  border-color: var(--accent) !important;\n}\n.nav-links li.active .badge.badge-pill {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.nav-links li a.active,\n.nav-links li button.active,\n.nav-links li a strong,\n.nav-links li button strong {\n  color: var(--light) !important;\n  border-color: var(--accent) !important;\n}\n.top-area .form-control {\n  background-color: var(--darken) !important;\n}\n.content-block {\n  border-color: var(--darker) !important;\n  background-color: var(--t) !important;\n}\n.content-block p:not(.status-box) {\n  color: var(--light) !important;\n}\n.content-block.landing {\n  background-color: var(--darken) !important;\n}\n.content-block.landing h4 {\n  color: var(--light) !important;\n}\n.content-block .new-branch-col .btn {\n  padding: 6px 10px !important;\n  line-height: 20px !important;\n  font-size: 0.875rem;\n}\n.emoji-block .col-lg-6 {\n  flex: unset;\n  width: unset;\n  max-width: unset;\n}\n.emoji-block .col-lg-6:first-child {\n  max-width: 50%;\n}\n.emoji-block .col-lg-6:last-child {\n  flex: 1 1 auto !important;\n}\n.nav-block {\n  border-color: var(--darker) !important;\n}\n.row-content-block {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.row-content-block.footer-block {\n  background-color: var(--t) !important;\n}\n.row-content-block\n  .btn:not(.btn-link):not(.btn-success):not(.btn-danger):not(.btn-info):not(.gl-button),\n.row-content-block .btn-default {\n  background-color: var(--dark) !important;\n}\n.row-content-block .btn.dropdown-toggle {\n  border: 1px solid var(--darker);\n}\n.row-content-block .filtered-search-box:not(#z) {\n  background-color: var(--dark) !important;\n}\n.row-content-block.top-block {\n  padding: 16px 0;\n  background-color: var(--bb) !important;\n}\n.row-content-block.top-block .event-last-push time {\n  color: var(--light) !important;\n}\n.row-content-block.top-block .event-last-push-text {\n  font-size: 14px;\n}\n.row-content-block.top-block .btn-sm {\n  padding: 6px 10px !important;\n  line-height: 1.5 !important;\n  font-size: 14px !important;\n}\n.row-content-block.issues-details-filters [class*=\"menu-toggle\"] {\n  background-color: var(--dark) !important;\n}\n.row-content-block span > code,\n.row-content-block form > div > button {\n  background-color: var(--dark) !important;\n}\n.row-content-block .block {\n  border-color: var(--darker) !important;\n}\n.row-content-block .block .title {\n  color: var(--light) !important;\n}\n.row-content-block .block button.dropdown-toggle[id]:not(#z),\n.row-content-block .block button.dropdown-menu-toggle {\n  background-color: var(--darken) !important;\n}\n.sub-header-block {\n  border-color: var(--darker) !important;\n  background-color: var(--t) !important;\n}\n.gl-tabs-nav {\n  border-color: var(--darker) !important;\n}\n.gl-tab-nav-item {\n  color: var(--lighter) !important;\n}\n.gl-tab-nav-item-active {\n  color: var(--light) !important;\n}\n.gl-tab-nav-item:hover {\n  box-shadow: inset 0 -0.125rem var(--darker);\n}\n.gl-tab-nav-item.active {\n  box-shadow: inset 0 -0.125rem var(--accent);\n}\n.gl-tab-content {\n  color: var(--light) !important;\n}\n.gl-tab-content .text-dark,\n.gl-tab-content .text-dark:hover {\n  color: var(--light) !important;\n}\n.gl-tab-content .text-secondary,\n.gl-tab-content .text-secondary:hover {\n  color: var(--lighter) !important;\n}\n.pipeline-quota {\n  border-color: var(--darker) !important;\n}\n.pipeline-quota + .ci-table > div:first-child {\n  margin-top: -1px !important;\n}\n.registry-placeholder .gl-text-black-normal {\n  color: var(--light) !important;\n}\n.registry-placeholder a.gl-text-black-normal:hover {\n  color: var(--accent) !important;\n}\n.gitlab-tabs {\n  border-radius: 4px 4px 0 0;\n  border-color: var(--darker) !important;\n  background-color: var(--t) !important;\n}\n.gitlab-tabs.nav.nav-tabs.nav-links {\n  border-radius: 4px 4px 0 0;\n  border-bottom: 1px solid;\n  box-shadow: none;\n}\n.gitlab-tabs.nav.nav-tabs.nav-links > .nav-item {\n  margin: 0;\n}\n.gitlab-tabs li[class^=\"nav-\"] {\n  border-color: var(--darker) !important;\n  background-color: var(--darker) !important;\n}\n.gitlab-tabs li[class^=\"nav-\"]:first-child {\n  margin: 0;\n}\n.gitlab-tabs li[class^=\"nav-\"] a {\n  border-radius: 0;\n}\n.gitlab-tabs li[class^=\"nav-\"]:first-child a {\n  border-radius: 3px 0 0 0;\n}\n.gitlab-tabs li[class^=\"nav-\"]:last-child a {\n  border-radius: 0 3px 0 0;\n}\n.gitlab-tabs li[class^=\"nav-\"]:hover a.nav-link {\n  color: var(--light) !important;\n  border-color: var(--t) !important;\n}\n.gitlab-tabs li[class^=\"nav-\"] a:not(.active) {\n  background-color: var(--dark) !important;\n}\n.gitlab-tabs li[class^=\"nav-\"] a.active.nav-link {\n  margin-bottom: -1px;\n  color: var(--light) !important;\n  border-color: var(--darken) !important;\n  background-color: var(--darken) !important;\n}\n.gitlab-tabs + .gitlab-tab-content {\n  border-radius: 0 0 4px 4px;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.gitlab-tabs + .gitlab-tab-content .form-control,\n.gitlab-tabs + .gitlab-tab-content .info-well {\n  background-color: var(--dark) !important;\n}\n.gitlab-tabs + .gitlab-tab-content .select2-choice,\n.gitlab-tabs + .gitlab-tab-content .select2-choices {\n  background-color: var(--dark) !important;\n}\n.gitlab-tabs\n  + .gitlab-tab-content\n  [class*=\"input-group\"]:not(.template-input-group) {\n  border-radius: 3px 0 0 3px;\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--bb) !important;\n}\n.option-title {\n  color: var(--light) !important;\n}\n.option-description,\n.option-disabled-reason {\n  color: var(--lighter) !important;\n}\n.gitlab-tabs + .gitlab-tab-content .template-option {\n  border-color: var(--darker) !important;\n}\n.gitlab-tabs + .gitlab-tab-content .card-slim {\n  background-color: var(--dark) !important;\n}\n.nav-tabs .nav-link.active {\n  border-color: var(--accent) !important;\n  background-color: var(--t) !important;\n}\n.gitlab-tabs + .gitlab-tab-content .btn[class*=\"gitea\"] svg path {\n  fill: var(--lighter) !important;\n}\n.gitlab-tabs + .gitlab-tab-content .btn[class*=\"gitea\"] svg rect {\n  fill: var(--dark) !important;\n}\n.gitlab-tabs + .gitlab-tab-content .btn-cancel,\n.gitlab-tabs + .gitlab-tab-content .btn-default,\n.gitlab-tabs + .gitlab-tab-content .btn[class*=\"import\"] {\n  background-color: var(--dark) !important;\n}\n.section-welcome .container .blank-state-link {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.section-welcome .container .blank-state-link:hover {\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n}\n.projects-list > li {\n  border-color: var(--darker) !important;\n}\n.projects-list > li .description {\n  color: var(--lighter) !important;\n}\n.user-access-role {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n  background-color: rgba(136, 136, 136, 0.082) !important;\n}\n.projects-list.compact .user-access-role {\n  line-height: 18px;\n}\n.projects-list.compact .avatar {\n  line-height: 38px !important;\n}\n.loading {\n  color: var(--lighter) !important;\n}\n.projects-list:not(.compact),\n.snippets-list-holder > ul,\n#groups > ul {\n  margin-top: 10px;\n  padding: 12px;\n  background-color: var(--darken) !important;\n  border-radius: 4px;\n}\n.projects-list:not(.compact) > li,\n.snippets-list-holder > ul > li,\n#groups > ul > li {\n  padding: 12px 0 !important;\n}\n.projects-list:not(.compact) > li:first-child,\n.snippets-list-holder > ul > li:first-child,\n#groups > ul > li:first-child {\n  padding-top: 0 !important;\n}\n.projects-list:not(.compact) > li:last-child,\n.snippets-list-holder > ul > li:last-child,\n#groups > ul > li:last-child {\n  padding-bottom: 0 !important;\n}\n.user-calendar-activities {\n  background-color: var(--darken) !important;\n  border-radius: 4px;\n}\n.user-calendar-activities h4 {\n  margin: 10px 12px 0;\n  padding: 10px 0;\n  border-bottom: 1px solid var(--darker);\n}\n.user-calendar-activities ul li,\n.user-calendar-activities > p {\n  margin: 0 12px !important;\n  padding: 10px 0 !important;\n}\n.event-item {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n}\n.event-item .commit,\n.event-item .commits-stat {\n  color: var(--light) !important;\n}\n.event-item [href],\n.event-item [href*=\"/compare/\"] {\n  color: var(--accent) !important;\n}\n.event-item .joined-icon svg,\n.event-item .pushed-new-icon svg,\n.event-item .pushed-to-icon svg {\n  fill: var(--lighter) !important;\n}\n.event-user-info a[href] {\n  color: var(--light) !important;\n}\ndiv.content_list {\n  margin-top: 10px;\n  padding: 10px;\n  background-color: var(--darken) !important;\n  border-radius: 4px;\n}\ndiv.content_list > .event-item {\n  padding-top: 10px;\n  padding-bottom: 10px;\n}\n.event-note pre.code {\n  border: 1px solid var(--darker) !important;\n  color: var(--light) !important;\n  background-color: var(--dark) !important;\n}\n.card {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.card .user-info .user {\n  color: var(--light) !important;\n}\n.card-header {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.card-header.bg-info {\n  color: var(--white) !important;\n  border-color: var(--blue) !important;\n  background-color: var(--blue) !important;\n}\n.card-header.bg-danger {\n  color: var(--white) !important;\n  border-color: var(--red) !important;\n  background-color: var(--red) !important;\n}\n.card-header + ul > .list-group-item {\n  border-color: var(--darker) !important;\n  background-color: var(--t) !important;\n}\n.card.border-info {\n  border-color: var(--blue) !important;\n}\n.card.border-danger {\n  border-color: var(--red) !important;\n}\n.list-group > .list-group-item {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.card-header input,\n.card-header [class*=\"dropdown-menu\"] {\n  background-color: var(--dark) !important;\n}\n.card-header .card-title {\n  color: var(--light) !important;\n}\n.card-body > .form-actions {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.card-body,\n.card-body > .form-actions {\n  border-radius: 0 0 3px 3px !important;\n}\n.card-footer {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.card-footer.alert-primary {\n  color: var(--blue) !important;\n  background-color: var(--darken) !important;\n}\n.card-footer pre,\n.card-footer code {\n  border-radius: 4px;\n  background-color: var(--dark) !important;\n}\n.card.border-0 {\n  border: 1px solid var(--darker) !important;\n}\n.card.border-0 .card-header a {\n  color: var(--light) !important;\n}\n.environments-dashboard .dashboard-card {\n  box-shadow: none !important;\n  border: none !important;\n  background-color: var(--t) !important;\n}\n.related-issues-block .card-header {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  border-radius: 3px 3px 0 0;\n}\n.related-issues-block .card-header.panel-empty-heading {\n  box-shadow: inset 0 -1px var(--darker);\n}\n.related-issues-block .card .linked-issues-card-body {\n  min-height: 16px;\n  border-radius: 0 0 3px 3px;\n  background-color: var(--bb) !important;\n}\n.related-issues-block .card .linked-issues-card-body > .card-body {\n  border-radius: 3px !important;\n}\n.related-issues-block .card ul > li,\n.related-issues-block .card ul > li[class*=\"input\"] > input {\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n}\n.issue-token-reference {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.issue-token-remove-button {\n  color: var(--red) !important;\n  background-color: var(--darker) !important;\n}\n.add-issuable-form-input {\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n}\n.related-issues-block .card ul > li:first-child {\n  border-radius: 3px 3px 0 0;\n}\n.related-issues-block .card ul > li:last-child {\n  border-bottom-left-radius: 3px;\n  border-bottom-right-radius: 3px;\n}\n.related-items-tree .item-title a {\n  color: var(--light) !important;\n}\n.related-items-tree .item-meta {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n}\n.related-items-list .item-body.item-closed {\n  background-color: var(--bb) !important;\n  border-radius: 3px !important;\n}\n#merge-requests {\n  background-color: var(--dark) !important;\n}\n#merge-requests .card-header {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  border-radius: 3px 3px 0 0;\n}\n#merge-requests ul li {\n  background-color: var(--t) !important;\n}\n.item-assignees:not(#z) .avatar {\n  border-color: var(--darken) !important;\n}\n.item-assignees:not(#z) .avatar-counter {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n  border-radius: var(--avatar);\n}\n[class*=\"-filters\"] + div[class]:not([class*=\"boards\"]),\n[class*=\"-filters\"] + div[class]:not([class*=\"boards\"]) .card {\n  background-color: var(--t) !important;\n}\n[class*=\"-filters\"] + div[class]:not([class*=\"boards\"]) li {\n  border-top: none;\n  color: var(--light) !important;\n}\n[class*=\"-filters\"] + div[class]:not([class*=\"boards\"]) li:hover {\n  background-color: var(--darken) !important;\n}\n.done-reversible {\n  border-top: none !important;\n  opacity: 0.6;\n  background-color: var(--t) !important;\n}\n[class*=\"-filters\"].epics-filters [class*=\"-toggle\"] {\n  background-color: var(--dark) !important;\n}\n.card.linked-card::after,\n.card.release-block::after {\n  border-color: var(--darken) !important;\n}\n.card.linked-card > .card-header,\n.card.release-block > .card-header {\n  background-color: var(--darken) !important;\n}\n.card.linked-card > .card-body,\n.card.release-block > .card-body {\n  background-color: var(--dark) !important;\n}\n.card.links-card a {\n  color: var(--accent) !important;\n}\n.sortable-container {\n  background-color: var(--darken) !important;\n}\n.sortable-container[class*=\"body\"] {\n  border-radius: 0 0 4px 4px;\n}\n.sortable-row .sortable-link {\n  color: var(--accent) !important;\n}\n.epic-discussion-separator {\n  border-color: var(--darker) !important;\n}\n.flex-grid .grid-row,\n.flex-grid .grid-cell {\n  border-color: var(--darker) !important;\n}\n.flex-grid .property-label {\n  color: var(--lighter) !important;\n}\n.flex-grid .property-value {\n  color: var(--light) !important;\n}\n.animation-container [class*=\"skeleton-line-\"] {\n  background-color: var(--darker) !important;\n}\n.animation-container [class*=\"skeleton-line-\"]::after {\n  background-image: linear-gradient(\n    90deg,\n    var(--darker) 0%,\n    var(--darken) 50%,\n    var(--darker)\n  );\n}\n[class*=\"card-skeleton-\"]::after {\n  background-image: linear-gradient(\n    90deg,\n    var(--darker) 0%,\n    var(--darken) 50%,\n    var(--darker)\n  );\n}\n.gl-spinner.gl-spinner-dark {\n  border-color: var(--darker) !important;\n  border-top-color: var(--accent) !important;\n}\nsvg.gl-skeleton-loader rect {\n  fill: var(--darker) !important;\n}\n.pika-single {\n  margin-top: 10px;\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  border-radius: 4px;\n}\n.pika-single .pika-label {\n  color: var(--light) !important;\n  background-color: var(--t) !important;\n}\n.pika-single .pika-prev,\n.pika-single .pika-next {\n  color: var(--light) !important;\n  text-indent: 0;\n  background: none;\n}\n.pika-single .pika-prev::before,\n.pika-single .pika-next::before {\n  display: inline-block;\n  width: 20px;\n}\n.pika-single .pika-prev::before {\n  content: \"←\";\n}\n.pika-single .pika-next::before {\n  content: \"→\";\n}\n.pika-single .pika-table {\n  border: 1px solid var(--darker);\n}\n.pika-single .pika-table th:not(#z) {\n  border-top: none !important;\n  color: var(--light) !important;\n  border-color: var(--t) !important;\n  background-color: var(--dark) !important;\n}\n.pika-single .pika-table td {\n  border-color: var(--darker) !important;\n}\n.pika-single .pika-table td .pika-day {\n  color: var(--light) !important;\n  background-color: var(--bb) !important;\n}\n.pika-single .pika-table td .pika-day:hover,\n.pika-single .pika-table td[class^=\"is-\"] .pika-day {\n  color: var(--accent) !important;\n  background-color: var(--darken) !important;\n}\n.pika-single .pika-table td.is-disabled .pika-day {\n  color: var(--lighter) !important;\n  background-color: var(--t) !important;\n}\n.pika-single .pika-table tr:last-child > td {\n  border-bottom: none !important;\n}\n.pika-single.is-bound {\n  box-shadow: var(--bshadow);\n}\n.gl-datepicker-theme {\n  font-family: var(--ui-font) !important;\n}\n.gl-datepicker-theme .pika-lendar:not(#z) {\n  border-radius: 4px;\n  box-shadow: inset 0 0 0 1px var(--darker);\n}\n.avatar,\n.avatar-circle,\n.avatar-container {\n  text-shadow: 2px 2px 1px var(--shadow);\n  border-radius: var(--avatar) !important;\n  color: var(--light) !important;\n  border-color: var(--t) !important;\n}\n.avatar.identicon {\n  color: var(--white) !important;\n}\n.avatar:not(.identicon) {\n  border-color: var(--t) !important;\n  background-color: var(--t) !important;\n}\n.avatar.s48 {\n  line-height: 46px;\n}\n.avatar[class*=\"bg\"] {\n  border-radius: var(--avatar);\n  box-shadow: inset 0 0 0 0.15em var(--shadow);\n}\n.avatar.bg0 {\n  background-color: var(--red) !important;\n}\n.avatar.bg1 {\n  background-color: var(--green) !important;\n}\n.avatar.bg2 {\n  background-color: var(--blue) !important;\n}\n.avatar.bg3 {\n  background-color: var(--yellow) !important;\n}\n.avatar.bg4 {\n  background-color: var(--magenta) !important;\n}\n.avatar.bg5 {\n  background-color: var(--cyan) !important;\n}\n.avatar.bg6 {\n  background-color: var(--violet) !important;\n}\n.avatar.bg7 {\n  background-color: var(--orange) !important;\n}\n.avatar.bgNaN {\n  background-color: var(--darker) !important;\n  box-shadow: none;\n}\n.page-title {\n  color: var(--light) !important;\n}\n.page-title-holder {\n  border-color: var(--darker) !important;\n}\n.commit-box {\n  border-color: var(--darker) !important;\n}\n.commit-box .commit-title,\n.commit-box time {\n  color: var(--light) !important;\n}\n.breadcrumb-item a {\n  color: var(--lighter) !important;\n}\n.breadcrumb-item a strong {\n  color: var(--light) !important;\n}\n.breadcrumbs-list a {\n  color: var(--lighter) !important;\n}\n.breadcrumbs-list-angle {\n  fill: var(--lighter) !important;\n}\n.breadcrumbs-container {\n  border-color: var(--darker) !important;\n}\n.breadcrumbs-sub-title a {\n  color: var(--light) !important;\n}\n.breadcrumbs-links img {\n  border-color: var(--darken) !important;\n  background-color: var(--darken) !important;\n}\n.breadcrumbs.group-epics-roadmap {\n  border-color: var(--darker) !important;\n}\n.breadcrumb.repo-breadcrumb > li + li::before {\n  color: var(--lighter) !important;\n}\n.pagination .page-link {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.pagination .page-link:not(.active):hover {\n  background-color: var(--darker) !important;\n  box-shadow: none;\n}\n.pagination .disabled .page-link {\n  opacity: 0.6;\n  color: var(--lighter) !important;\n  background-color: var(--darken) !important;\n}\n.pagination .active .page-link,\n.pagination .page-link.active {\n  color: var(--accent) !important;\n  background-color: var(--darker) !important;\n}\n.md {\n  color: var(--light) !important;\n}\n.md h1,\n.md h2 {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n}\n.md hr {\n  border-color: var(--darker) !important;\n}\n.md p {\n  color: var(--light) !important;\n}\n.md a {\n  color: var(--accent) !important;\n}\n.md a > code,\n.md p > code {\n  padding: 2px 4px;\n  color: inherit !important;\n}\n.md kbd {\n  border-color: var(--darker) !important;\n  box-shadow: inset 0 -1px 0 var(--darker) !important;\n}\n.md kbd > kbd {\n  background-color: var(--bb) !important;\n}\n.md blockquote,\n.md .blockquote {\n  border-left-width: 5px;\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n}\n.md blockquote p,\n.md .blockquote p {\n  color: var(--lighter) !important;\n}\n.md img.lazy {\n  background-color: var(--darken) !important;\n}\n.md img:not(.emoji) {\n  border-color: var(--darker) !important;\n}\n[src*=\"style=for-the-badge\"],\n.md img:not(.emoji)[data-canonical-src*=\"style=for-the-badge\"] {\n  border-radius: 4px;\n}\n.md pre {\n  border-radius: 4px !important;\n}\n.md pre.code.white {\n  border: 1px solid var(--darker);\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n}\n.md pre.code.white.highlight {\n  background-color: var(--darken) !important;\n}\n.md pre.code.none {\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n}\n.md pre.code.none .line span {\n  color: var(--light) !important;\n}\n.md code {\n  font-family: var(--mono-font) !important;\n}\n.md gl-emoji {\n  font-size: 1em;\n  font-family: var(--emoji-font);\n}\n.md-suggestion-header {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.md-suggestion-diff {\n  font-family: var(--mono-font) !important;\n  border-radius: 0 0 4px 4px !important;\n  border-color: var(--darker) !important;\n}\n.md-suggestion tr:last-child > td:first-child::after {\n  border-radius: 0 0 0 3px;\n}\n.md-suggestion tr:last-child > td:last-child::after {\n  border-radius: 0 0 3px 0;\n}\n.md .anchor::after {\n  content: \"§\" !important;\n  color: var(--light) !important;\n}\n.task-list {\n  color: var(--light) !important;\n}\n.swagger-ui {\n  position: relative;\n  z-index: 1;\n}\n.swagger-ui .info .title {\n  color: var(--light) !important;\n}\n.swagger-ui .info a,\n.swagger-ui link a {\n  color: var(--accent) !important;\n}\n.swagger-ui button.btn {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.swagger-ui .arrow {\n  fill: var(--light) !important;\n}\n.swagger-ui button.btn.execute {\n  color: var(--white) !important;\n  border-color: var(--blue) !important;\n  background-color: var(--blue) !important;\n}\n.swagger-ui .download-contents {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.swagger-ui input,\n.swagger-ui textarea {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.swagger-ui input[disabled],\n.swagger-ui textarea[disabled] {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  opacity: 0.6;\n}\n.swagger-ui,\n.swagger-ui h3,\n.swagger-ui h4,\n.swagger-ui h5 {\n  color: var(--light) !important;\n}\n.swagger-ui select {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  box-shadow: none !important;\n}\n.swagger-ui .opblock-tag {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n}\n.swagger-ui .opblock-section p {\n  color: var(--lighter) !important;\n}\n.swagger-ui .opblock-title,\n.swagger-ui .opblock-section-header h4 {\n  color: var(--light) !important;\n}\n.swagger-ui .opblock-section-header {\n  background-color: var(--darken) !important;\n  box-shadow: 0 1px var(--darker), 0 -1px var(--darker) !important;\n}\n.swagger-ui .opblock-summary-path,\n.swagger-ui .opblock-summary-operation-id,\n.swagger-ui .opblock-summary-path__deprecated {\n  color: var(--light) !important;\n}\n.swagger-ui .opblock-summary-description {\n  color: var(--lighter) !important;\n}\n.swagger-ui .opblock::before {\n  z-index: -1;\n  opacity: 0.1;\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n}\n.swagger-ui .opblock-get {\n  border-color: var(--blue) !important;\n  background-color: var(--t) !important;\n  position: relative;\n}\n.swagger-ui .opblock-get::before {\n  content: \"\";\n  background-color: var(--blue) !important;\n}\n.swagger-ui .opblock-get .tab-item.active h4 span::after,\n.swagger-ui .opblock-get .opblock-summary-method {\n  background-color: var(--blue) !important;\n}\n.swagger-ui .opblock-put {\n  border-color: var(--orange) !important;\n  background-color: var(--t) !important;\n  position: relative;\n}\n.swagger-ui .opblock-put::before {\n  content: \"\";\n  background-color: var(--orange) !important;\n}\n.swagger-ui .opblock-put .tab-item.active h4 span::after,\n.swagger-ui .opblock-put .opblock-summary-method {\n  background-color: var(--orange) !important;\n}\n.swagger-ui .opblock-post {\n  border-color: var(--green) !important;\n  background-color: var(--t) !important;\n  position: relative;\n}\n.swagger-ui .opblock-post::before {\n  content: \"\";\n  background-color: var(--green) !important;\n}\n.swagger-ui .opblock-post .tab-item.active h4 span::after,\n.swagger-ui .opblock-post .opblock-summary-method {\n  background-color: var(--green) !important;\n}\n.swagger-ui .opblock-patch {\n  border-color: var(--cyan) !important;\n  background-color: var(--t) !important;\n  position: relative;\n}\n.swagger-ui .opblock-patch::before {\n  content: \"\";\n  background-color: var(--cyan) !important;\n}\n.swagger-ui .opblock-patch .tab-item.active h4 span::after,\n.swagger-ui .opblock-patch .opblock-summary-method {\n  background-color: var(--cyan) !important;\n}\n.swagger-ui .opblock-delete {\n  border-color: var(--red) !important;\n  background-color: var(--t) !important;\n  position: relative;\n}\n.swagger-ui .opblock-delete::before {\n  content: \"\";\n  background-color: var(--red) !important;\n}\n.swagger-ui .opblock-delete .tab-item.active h4 span::after,\n.swagger-ui .opblock-delete .opblock-summary-method {\n  background-color: var(--red) !important;\n}\n.swagger-ui .model {\n  color: var(--light) !important;\n}\n.swagger-ui .model-title {\n  color: var(--light) !important;\n}\n.swagger-ui .model-toggle::after {\n  filter: invert(1);\n}\n.swagger-ui .models {\n  border-color: var(--darker) !important;\n}\n.swagger-ui .models > h4 {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.swagger-ui .prop-format {\n  color: var(--lighter) !important;\n}\n.swagger-ui .prop-type {\n  color: var(--violet) !important;\n}\n.swagger-ui .parameter__name {\n  color: var(--light) !important;\n}\n.swagger-ui .parameter__name::after {\n  color: var(--red) !important;\n}\n.swagger-ui .parameter__in,\n.swagger-ui .parameter__type {\n  color: var(--lighter) !important;\n}\n.swagger-ui pre.microlight {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.swagger-ui pre.microlight span:not(#z) {\n  color: var(--light) !important;\n}\n.swagger-ui .scheme-container {\n  color: var(--light) !important;\n  background-color: var(--dark) !important;\n  box-shadow: 0 -1px var(--darker), 0 1px var(--darker);\n}\n.swagger-ui table:not(#z) {\n  padding: 0;\n}\n.swagger-ui table:not(#z),\n.swagger-ui table:not(#z) th:not(#z),\n.swagger-ui table:not(#z) td {\n  color: var(--light) !important;\n  border-color: var(--t) !important;\n  background-color: var(--t) !important;\n}\n.swagger-ui table:not(#z) span[class=\"\"],\n.swagger-ui table:not(#z) span:not([class]) {\n  color: var(--lighter) !important;\n}\n.swagger-ui .tab li::after {\n  background-color: var(--lighter) !important;\n}\n.swagger-ui a.tablinks,\n.swagger-ui [class*=\"brace-\"] {\n  color: var(--light) !important;\n}\n.swagger-ui :not(#z) [style*=\"color: red\"]:not(#z) {\n  color: var(--red) !important;\n}\n.gl-banner {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.close {\n  color: var(--lighter) !important;\n  text-shadow: none;\n}\n.new-gl-button {\n  background-color: var(--darker) !important;\n  box-shadow: inset 0 0 0 1px var(--darker);\n}\n.new-gl-button:hover {\n  opacity: 0.8;\n  box-shadow: inset 0 0 0 1px var(--darker);\n}\n.mermaid:not(.code),\n.artwork,\n.group-empty-state > .icon,\n.empty-state .svg-content > svg,\n.devops-empty > div > svg,\n.blank-state-icon > svg,\n.svg-container > svg,\n.commits-empty > svg,\nimg[src^=\"img/\"]:not([src*=\"logo\"]),\nimg[src*=\"/help/img/\"],\nimg[src*=\"assets/promotions/\"],\nimg[src*=\"assets/illustrations/\"],\n#oauth-login-github > img {\n  filter: invert(0.8) brightness(110%) hue-rotate(180deg);\n  box-shadow: none !important;\n}\n.gl-alert {\n  z-index: 1;\n}\n.gl-alert-body a,\n.gl-alert-actions a {\n  font-weight: bold;\n  color: currentColor !important;\n}\n.gl-alert .js-close {\n  color: currentColor;\n}\n.gl-alert .js-close svg {\n  fill: currentColor !important;\n}\n.gl-alert::before {\n  z-index: -1;\n  opacity: 0.15;\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n}\n.gl-alert-warning {\n  color: var(--orange) !important;\n  background-color: var(--darken) !important;\n}\n.gl-alert-warning .gl-alert-icon {\n  fill: var(--orange) !important;\n}\n.gl-alert-warning::before {\n  content: \"\";\n  background-color: var(--orange) !important;\n}\n.gl-alert-danger {\n  color: var(--red) !important;\n  background-color: var(--darken) !important;\n}\n.gl-alert-danger .gl-alert-icon {\n  fill: var(--red) !important;\n}\n.gl-alert-danger::before {\n  content: \"\";\n  background-color: var(--red) !important;\n}\n.gl-alert-success {\n  color: var(--green) !important;\n  background-color: var(--darken) !important;\n}\n.gl-alert-success .gl-alert-icon {\n  fill: var(--green) !important;\n}\n.gl-alert-success::before {\n  content: \"\";\n  background-color: var(--green) !important;\n}\n.gl-alert-info {\n  color: var(--blue) !important;\n  background-color: var(--darken) !important;\n}\n.gl-alert-info .gl-alert-icon {\n  fill: var(--blue) !important;\n}\n.gl-alert-info::before {\n  content: \"\";\n  background-color: var(--blue) !important;\n}\n.gl-alert-tip {\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n}\n.gl-alert-tip .gl-alert-icon {\n  fill: var(--light) !important;\n}\n.gl-alert-tip::before {\n  content: \"\";\n  background-color: var(--lighter) !important;\n}\n.flash-container {\n  background-color: var(--dark) !important;\n}\n.flash-container > div {\n  position: relative;\n}\n.flash-container > div::before {\n  content: \"\";\n  opacity: 0.25;\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n}\n.flash-container > div svg {\n  fill: currentColor !important;\n}\n.flash-container .flash-alert {\n  color: var(--red) !important;\n  background-color: var(--t) !important;\n}\n.flash-container .flash-alert::before {\n  background-color: var(--red) !important;\n}\n.flash-container .flash-warning {\n  color: var(--orange) !important;\n  background-color: var(--t) !important;\n}\n.flash-container .flash-warning::before {\n  background-color: var(--orange) !important;\n}\n.flash-container .flash-notice {\n  color: var(--blue) !important;\n  background-color: var(--t) !important;\n}\n.flash-container .flash-notice::before {\n  background-color: var(--blue) !important;\n}\n.flash-container .flash-success {\n  color: var(--green) !important;\n  background-color: var(--t) !important;\n}\n.flash-container .flash-success::before {\n  background-color: var(--green) !important;\n}\n.flash-container.sticky {\n  top: 58px !important;\n}\n.alert.alert-info,\n.alert.alert-primary {\n  color: var(--blue) !important;\n  border-color: var(--blue) !important;\n  background-color: var(--darken) !important;\n}\n.alert.alert-warning {\n  color: var(--orange) !important;\n  border-color: var(--orange) !important;\n  background-color: var(--darken) !important;\n}\n.alert.alert-success {\n  color: var(--green) !important;\n  border-color: var(--green) !important;\n  background-color: var(--darken) !important;\n}\n.alert.alert-secondary {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.alert.alert-danger {\n  color: var(--red) !important;\n  border-color: var(--red) !important;\n  background-color: var(--darken) !important;\n}\n.alert.alert-light {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.alert h4 {\n  color: inherit !important;\n}\n[class*=\"broadcast-banner\"] svg {\n  fill: var(--white) !important;\n}\n[class*=\"broadcast-banner\"] .fa {\n  color: var(--white) !important;\n}\n.broadcast-notification-message {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  box-shadow: var(--bshadow);\n}\n.broadcast-notification-message .btn {\n  color: var(--light) !important;\n}\n.broadcast-notification-message a {\n  color: var(--accent) !important;\n}\n[role=\"alert\"][class*=\"_message\"]:not([class*=\"epic\"]) {\n  border-radius: 4px;\n}\n[role=\"alert\"] .warning_message:not(#z),\n.warning_message:not(#z) {\n  color: var(--orange) !important;\n  border-color: var(--orange) !important;\n  background-color: var(--darken) !important;\n}\n[role=\"alert\"] .danger_message:not(#z),\n.danger_message:not(#z) {\n  color: var(--red) !important;\n  border-color: var(--red) !important;\n  background-color: var(--darken) !important;\n}\n.gl-toggle,\n.project-feature-toggle {\n  background-color: var(--darker) !important;\n}\n.gl-toggle .toggle-icon,\n.project-feature-toggle .toggle-icon {\n  background-color: var(--dark) !important;\n}\n.gl-toggle .toggle-icon svg,\n.project-feature-toggle .toggle-icon svg {\n  fill: var(--lighter) !important;\n}\n.gl-toggle.is-checked,\n.project-feature-toggle.is-checked {\n  background-color: var(--accent) !important;\n}\n.gl-toggle.is-checked svg,\n.project-feature-toggle.is-checked svg {\n  fill: var(--accent) !important;\n}\n.gl-form-checkbox {\n  color: var(--light) !important;\n}\n.gl-form-input {\n  box-shadow: none !important;\n}\n.custom-select {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.gl-form-group .bordered-box.pl-3 {\n  padding: 0 !important;\n  background-color: var(--dark) !important;\n}\n.gl-form-group .bordered-box.pl-3 > .md-area {\n  margin: 0 !important;\n  padding: 10px !important;\n  border-radius: 4px;\n}\n.gl-form-group .bordered-box.pl-3:focus-within {\n  border-color: var(--blue) !important;\n}\n.gl-form-input.form-control {\n  background-color: var(--darken) !important;\n}\n.gl-form-input[placeholder] {\n  background-color: var(--dark) !important;\n}\n.help-form .form-group form,\n.help-form .form-group .form-control,\n.help-form .form-group code {\n  background-color: var(--dark) !important;\n}\n.form-group > label + input {\n  background-color: var(--darken) !important;\n}\n.gl-filtered-search-scrollable {\n  background-color: var(--dark) !important;\n  border-radius: 4px 0 0 4px;\n  box-shadow: inset 0 0 0 1px var(--darker) !important;\n}\n.gl-filtered-search-scrollable input {\n  color: var(--light) !important;\n  background-color: var(--t) !important;\n}\n.gl-filtered-search-suggestion-active {\n  background-color: var(--darker) !important;\n}\n.gl-filtered-search-suggestion-active a,\n.gl-filtered-search-suggestion-active p {\n  color: var(--light) !important;\n}\n.gl-filtered-search-token-operator-description {\n  color: var(--lighter) !important;\n}\n.gl-token-close {\n  color: var(--lighter) !important;\n}\n.gl-token-content {\n  color: var(--light) !important;\n}\n.gl-token.gl-filtered-search-token-type,\n.gl-token.gl-filtered-search-token-operator {\n  background-color: var(--darken) !important;\n}\n.gl-token.gl-filtered-search-token-data {\n  background-color: var(--darker) !important;\n}\n.gl-search-box-by-click-search-button {\n  border: 1px solid var(--darker);\n}\n.gl-text-body {\n  color: var(--light) !important;\n}\n.gl-text-orange-500:not(#z) {\n  color: var(--orange) !important;\n  fill: var(--orange) !important;\n}\n.gl-bg-white {\n  background-color: var(--bb) !important;\n}\n.gl-bg-gray-10 {\n  background-color: var(--dark) !important;\n}\n.gl-bg-gray-50 {\n  background-color: var(--darken) !important;\n}\n.bg-secondary-50 {\n  background-color: var(--darken) !important;\n}\n.gl-bg-green-100.gl-text-green-800 {\n  color: var(--white) !important;\n  border-color: var(--green) !important;\n  background-color: var(--green) !important;\n}\n.gl-bg-blue-50 {\n  background-color: var(--blue) !important;\n}\n.gl-border-gray-100,\n.gl-border-gray-200 {\n  border-color: var(--darker) !important;\n}\n.border {\n  border: 1px solid var(--darker) !important;\n}\n.gl-border-b-gray-100 {\n  border-color: var(--darker) !important;\n}\n.gl-inset-border-1-gray-100 {\n  box-shadow: inset 0 0 0 1px var(--darker);\n}\n.gl-new-dropdown p {\n  color: var(--light) !important;\n}\n.gl-new-dropdown button[class*=\"close\"] {\n  border-color: var(--t) !important;\n  background-color: var(--t) !important;\n}\n.gfm {\n  color: var(--light) !important;\n}\n.gfm.gfm-issue,\n.gfm.gfm-merge_request,\n.gfm.gfm-epic,\n.gfm.gfm-milestone {\n  color: var(--accent) !important;\n}\n.gfm.gfm-commit,\n.gfm.gfm-commit_range {\n  font-family: var(--mono-font);\n}\n.gfm.gfm-commit,\n.gfm.gfm-commit_range > code {\n  color: var(--accent) !important;\n}\n.gfm-color_chip > span {\n  border-color: var(--t) !important;\n}\n.gfm.gfm-project_member {\n  z-index: 1;\n  padding: 1px 3px;\n  position: relative;\n  text-decoration: none !important;\n  transition: 0.2s ease;\n  font-weight: 500;\n  color: var(--accent) !important;\n  background-color: var(--t) !important;\n}\n.gfm.gfm-project_member::before {\n  z-index: -1;\n  content: \"\";\n  opacity: 0.2;\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  transition: inherit;\n  border-radius: inherit;\n  background-color: var(--accent) !important;\n}\n.gfm.gfm-project_member:hover::before {\n  opacity: 0.4;\n}\n.gfm.gfm-project_member.current-user {\n  color: var(--white) !important;\n  background-color: var(--accent) !important;\n}\n.gfm.gfm-project_member.current-user:hover {\n  opacity: 0.7;\n}\n.suggestion {\n  color: var(--light) !important;\n}\n.suggestion-confidential.s16 {\n  fill: var(--orange) !important;\n}\n.suggestion-state-closed.s16 {\n  fill: var(--blue) !important;\n}\n.suggestion-state-open.s16 {\n  fill: var(--green) !important;\n}\n.gl-label {\n  background-color: var(--darker);\n}\n.gl-label-label-link {\n  background-color: var(--t) !important;\n}\n.gl-label-text-light {\n  text-shadow: 1px 1px 0 var(--shadow);\n}\n.gl-label-text-dark[style*=\"background-color\"] + .gl-label-text-dark,\n.gl-label-text-dark > .gl-label-link > span:nth-child(2),\n.gl-label-text[style=\"color: rgb(51, 51, 51);\"] {\n  color: var(--light) !important;\n}\n.gl-label[style*=\"--label-inset-border\"]:not(:hover) [class*=\"text-scoped\"] {\n  z-index: 1;\n}\n.gl-label[style*=\"--label-inset-border\"]:not(:hover)::after {\n  z-index: 0;\n  content: \"\";\n  position: absolute;\n  top: 0;\n  left: 0;\n  bottom: 0;\n  right: 0;\n  box-shadow: inset 0 0 0 1rem var(--shadow) !important;\n}\n.gl-label-link:not(#z),\n.gfm-label:not(#z) {\n  color: inherit !important;\n}\n.gl-label-icon[href^=\"/help\"] > .fa,\n.gl-label-icon[href^=\"/help\"] > svg {\n  color: var(--lighter) !important;\n}\n.gl-label-close svg {\n  fill: currentColor !important;\n}\n.gl-label:not([style*=\"label-background\"]) {\n  background-color: var(--darker) !important;\n}\n.gfm-form[action$=\"tags\"] .form-control,\n.gfm-form[action$=\"tags\"] .dropdown-menu-toggle {\n  background-color: var(--dark) !important;\n}\n.modal {\n  background-color: var(--t) !important;\n}\n.modal .modal-content {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.modal .modal-content .modal-header {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.modal .modal-content .modal-header .close {\n  color: var(--lighter) !important;\n}\n.modal .modal-content .modal-body {\n  background-color: var(--t) !important;\n}\n.modal .modal-content .modal-body .modal-subheader {\n  border-color: var(--darker) !important;\n}\n.modal .modal-content .modal-body table th {\n  color: var(--light) !important;\n}\n.modal .modal-content .modal-body table td {\n  color: var(--lighter) !important;\n}\n.modal .modal-content .modal-footer {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.modal .modal-content .modal-footer .btn-secondary {\n  background-color: var(--dark) !important;\n}\n.modal .modal-content .btn-clipboard:not(#z) {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.modal .modal-content .btn[href*=\"mailto:\"] {\n  height: 34px;\n}\n.modal-backdrop {\n  opacity: 0.85 !important;\n  background-color: var(--bb) !important;\n}\nbody.modal-open {\n  padding-right: 0px !important;\n}\n.dropzone-previews {\n  border-color: var(--darker) !important;\n}\n.markdown-selector {\n  color: var(--accent);\n}\n.design-dropzone-card .text-center {\n  color: var(--light) !important;\n}\n#add-projects-modal .gl-form-input {\n  background-color: var(--darken) !important;\n}\n#add-projects-modal .gl-infinite-scroll-container .btn {\n  background-color: var(--t) !important;\n}\n#add-projects-modal .gl-infinite-scroll-container .btn:focus,\n#add-projects-modal .gl-infinite-scroll-container .btn.focus {\n  background-color: var(--darken) !important;\n  box-shadow: none !important;\n}\n#add-projects-modal .gl-infinite-scroll-legend {\n  color: var(--lighter) !important;\n}\n.modal-doorkeepr-auth > .modal-content {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.modal-doorkeepr-auth > .modal-content .modal-header {\n  border-color: var(--darker) !important;\n  background-color: var(--t) !important;\n}\n.modal-doorkeepr-auth > .modal-content .modal-body {\n  background-color: var(--t) !important;\n}\n.modal-doorkeepr-auth > .modal-content .modal-body .form-actions {\n  background-color: var(--darken) !important;\n}\n.gl-popover {\n  font-family: var(--ui-font);\n  border-radius: 4px;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  box-shadow: var(--bshadow) !important;\n}\n.gl-popover-header {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.gl-popover-body {\n  padding: 8px;\n  color: var(--light) !important;\n}\n.gl-popover.blue {\n  background-color: var(--blue) !important;\n}\n.arrow {\n  color: var(--darken);\n}\n.gl-popover.blue .arrow {\n  color: var(--blue) !important;\n}\n[class*=\"-top\"] .arrow::before {\n  border-top-color: var(--darker) !important;\n}\n[class*=\"-top\"] .arrow::after {\n  border-top-color: inherit !important;\n}\n[class*=\"-bottom\"] .arrow::before {\n  border-bottom-color: var(--darker) !important;\n}\n[class*=\"-bottom\"] .arrow::after {\n  border-bottom-color: inherit !important;\n}\n[class*=\"-left\"] .arrow::before {\n  border-left-color: var(--darker) !important;\n}\n[class*=\"-left\"] .arrow::after {\n  border-left-color: inherit !important;\n}\n[class*=\"-right\"] .arrow::before {\n  border-right-color: var(--darker) !important;\n}\n[class*=\"-right\"] .arrow::after {\n  border-right-color: inherit !important;\n}\n.gpg-popover-icon.valid svg {\n  border-color: var(--green) !important;\n  fill: var(--green) !important;\n}\n.gpg-popover-icon.invalid svg {\n  border-color: var(--red) !important;\n  fill: var(--red) !important;\n}\n.gpg-popover-user-link {\n  color: var(--light) !important;\n}\n.gl-popover .milestone-popover-body {\n  background-color: var(--t) !important;\n}\n.gl-popover .milestone-popover-footer {\n  border-color: var(--darker) !important;\n}\n.gl-popover .js-user-status {\n  color: var(--lighter) !important;\n}\n.tooltip.show {\n  opacity: 1;\n}\n.tooltip-inner {\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n  border: 1px solid var(--darker);\n  box-shadow: var(--bshadow);\n}\n.tooltip-inner [class*=\"share\"] {\n  color: var(--lighter) !important;\n}\n.tooltip-inner [class*=\"scoped-label\"] {\n  color: var(--accent) !important;\n}\n.tooltip-inner .text-white-50 {\n  color: var(--lighter) !important;\n  opacity: 0.5;\n}\n.tooltip[class*=\"bottom\"] .arrow::before {\n  border-bottom-color: var(--darker);\n}\n.tooltip[class*=\"right\"] .arrow::before {\n  border-right-color: var(--darker);\n}\n.tooltip[class*=\"left\"] .arrow::before {\n  border-left-color: var(--darker);\n}\n.tooltip[class*=\"top\"] .arrow::before {\n  border-top-color: var(--darker);\n}\n.popover {\n  border: 1px solid var(--darker);\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n  box-shadow: var(--bshadow);\n}\n.popover-header {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.popover-body {\n  color: var(--light) !important;\n}\n.onboarding-helper-container {\n  background-color: var(--dark) !important;\n  box-shadow: inset 0 0 0 1px var(--darker), 0 4px 8px 0 var(--shadow);\n}\n.onboarding-helper-container .avatar {\n  border-radius: 50% !important;\n  background-color: var(--darker) !important;\n  box-shadow: inset 0 0 0 1px var(--darker);\n}\n.onboarding-helper-container .progress {\n  background-color: var(--darker) !important;\n}\n.onboarding-helper-container .bg-info {\n  background-color: var(--blue) !important;\n}\n.onboarding-helper-container .text-info {\n  color: var(--blue) !important;\n}\n.onboarding-helper-container .active {\n  background-color: var(--darker) !important;\n}\n.onboarding-helper-container .qa-toggle-btn {\n  background-color: var(--t) !important;\n}\n.onboarding-helper-container .qa-toggle-btn:hover svg {\n  fill: var(--light) !important;\n}\n.slead {\n  color: var(--lighter) !important;\n}\n.slead + hr + .no-repo-actions .btn-primary {\n  color: var(--accent) !important;\n  border-color: var(--accent) !important;\n  background-color: var(--t) !important;\n}\n.slead + hr + .no-repo-actions .btn-primary::before {\n  content: \"\";\n  background-color: var(--accent) !important;\n}\n.access-request-link {\n  border-color: var(--darker) !important;\n}\n.home-panel-description + p time {\n  color: var(--light) !important;\n}\n.git-empty h5 {\n  color: var(--light) !important;\n}\n.git-empty pre.bg-light {\n  background-color: var(--darken) !important;\n  border-radius: 4px;\n}\n.info-well {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.info-well .commit-row-message,\n.info-well .committer a {\n  color: var(--light) !important;\n}\n.info-well .commit-actions {\n  align-self: center;\n}\n.info-well .branch-info {\n  border-color: var(--darker) !important;\n}\n.info-well .branch-info .badge {\n  background-color: var(--darker) !important;\n}\n.info-well .branch-info .cgray {\n  color: var(--light) !important;\n}\n.info-well svg path {\n  fill: var(--lighter) !important;\n}\n.info-well .limit-box {\n  color: var(--white) !important;\n  background-color: var(--red) !important;\n}\n.info-well .limit-box .fa {\n  color: var(--white) !important;\n}\n.info-well .branches .s12 {\n  margin-top: 2px;\n}\n.info-well .well-segment {\n  border-color: var(--darker) !important;\n}\n.info-well .well-segment code:not([class]) {\n  background-color: var(--dark) !important;\n}\n.table-holder.bordered-box {\n  border: none !important;\n}\n.blame tr:not(:first-child) > td {\n  border-top: 1px solid var(--darker) !important;\n}\n.file-blame-legend {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.blame-commit {\n  position: relative;\n  padding-left: 12px !important;\n  border-left: none !important;\n}\n.blame-commit::before {\n  content: \"\";\n  position: absolute;\n  top: 0;\n  left: 0;\n  bottom: 0;\n  width: 4px;\n}\n.blame-commit .commit > a[href] > img {\n  margin-right: 10px;\n}\n.blame .blame-commit:not(#z) {\n  background-color: var(--darken) !important;\n}\n.blame-commit + .line-numbers:not(#z) {\n  border-left: 1px solid var(--darker) !important;\n  background-color: var(--darken) !important;\n  border-radius: 0;\n}\n.blame .commit-author-link,\n.blame .cdark {\n  color: var(--light) !important;\n}\n.blame .commit-sha {\n  color: var(--accent) !important;\n}\n.legend-box-0,\n.blame-commit-age-0::before {\n  background-color: var(--green) !important;\n  opacity: 0.099;\n}\n.legend-box-1,\n.blame-commit-age-1::before {\n  background-color: var(--green) !important;\n  opacity: 0.199;\n}\n.legend-box-2,\n.blame-commit-age-2::before {\n  background-color: var(--green) !important;\n  opacity: 0.299;\n}\n.legend-box-3,\n.blame-commit-age-3::before {\n  background-color: var(--green) !important;\n  opacity: 0.399;\n}\n.legend-box-4,\n.blame-commit-age-4::before {\n  background-color: var(--green) !important;\n  opacity: 0.499;\n}\n.legend-box-5,\n.blame-commit-age-5::before {\n  background-color: var(--green) !important;\n  opacity: 0.599;\n}\n.legend-box-6,\n.blame-commit-age-6::before {\n  background-color: var(--green) !important;\n  opacity: 0.699;\n}\n.legend-box-7,\n.blame-commit-age-7::before {\n  background-color: var(--green) !important;\n  opacity: 0.799;\n}\n.legend-box-8,\n.blame-commit-age-8::before {\n  background-color: var(--green) !important;\n  opacity: 0.899;\n}\n.legend-box-9,\n.blame-commit-age-9::before {\n  background-color: var(--green) !important;\n  opacity: 0.999;\n}\n.readme-holder {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.readme-holder [class*=\"file-title\"] {\n  padding: 10px 16px;\n  border-radius: 4px 4px 0 0;\n}\n.readme-holder [class*=\"file-title\"] strong {\n  font-weight: normal;\n}\n.readme-holder [class*=\"file-title\"] a:not(.btn) {\n  color: var(--light) !important;\n}\n.readme-holder .file-content {\n  background-color: var(--t) !important;\n}\n.readme-holder .file-content [dir][align=\"left\"] {\n  text-align: left;\n}\n.readme-holder .file-content [dir][align=\"right\"] {\n  text-align: right;\n}\n.readme-holder .file-content [dir][align=\"center\"] {\n  text-align: center;\n}\n.readme-holder .file-content a img:not(.emoji) {\n  box-sizing: content-box;\n  margin: 0 !important;\n  background-color: var(--dark) !important;\n}\n.readme-holder .file-content a img:not(.emoji)[align=\"left\"] {\n  padding-right: 20px;\n}\n.readme-holder .file-content a img:not(.emoji)[align=\"right\"] {\n  padding-left: 20px;\n}\n.readme-holder .file-content h1,\n.readme-holder .file-content h2,\n.readme-holder .file-content h3,\n.readme-holder .file-content h4,\n.readme-holder .file-content h5,\n.readme-holder .file-content h6 {\n  position: relative;\n}\n.readme-holder .file-content::before,\n.readme-holder .file-content::after {\n  content: \"\";\n  display: table;\n}\n.readme-holder .file-content::after {\n  clear: both;\n}\n.committer {\n  color: var(--lighter) !important;\n}\n.commit .commit-author-link {\n  color: var(--light) !important;\n}\n.commit a,\n.generic-commit-status a {\n  color: var(--light);\n}\n.commit-header {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.commit-header:first-child {\n  border-top-width: 1px;\n}\n.commit-message-container {\n  font-family: var(--mono-font);\n  background-color: var(--t) !important;\n}\n.ci-job-name-component > .gl-text-truncate {\n  max-width: 100%;\n  margin-right: 35px;\n}\n.pipeline-graph.pipeline-tab-content {\n  background-color: var(--darken) !important;\n}\n.pipeline-graph .build {\n  width: 100% !important;\n  margin-bottom: 5px;\n}\n.pipeline-graph .build-content {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n  transition: none !important;\n  padding: 5px 5px !important;\n}\n.pipeline-graph .build-content:hover {\n  color: var(--lighter) !important;\n  background-color: var(--bb) !important;\n}\n.pipeline-graph .build .linked-pipeline-content {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n  border-radius: 8px !important;\n}\n.pipeline-graph .build .linked-pipeline-content::before {\n  content: unset !important;\n}\n.pipeline-graph .build .linked-pipeline-content:hover {\n  background-color: var(--bb) !important;\n}\n.pipeline-graph .curve::before,\n.pipeline-graph .build:not(first-child)::before,\n.stage-container::before,\n.pipeline-graph .curve::after,\n.pipeline-graph .build:not(first-child)::after,\n.stage-container::after {\n  border-color: var(--darker) !important;\n}\n.ci-build-text,\n.ci-status-text {\n  font-weight: normal !important;\n  color: var(--light) !important;\n}\ndiv[class*=\"mini-pipe\"]:focus {\n  box-shadow: 0 0 4px 0px var(--accent) !important;\n}\ndiv[class*=\"mini-pipe\"] li:hover [class*=\"dropdown-item\"] {\n  background-color: var(--darker) !important;\n}\n.pipeline-graph .stage-column .curve::before,\n.pipeline-graph .stage-column .curve::after {\n  top: -24px;\n}\n.pipeline-graph .stage-column .build:nth-child(2)::before,\n.pipeline-graph .stage-column .build:nth-child(2)::after {\n  height: 24px;\n  top: -4px;\n}\n.build-page .top-bar {\n  z-index: 99;\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  border-radius: 4px 4px 0 0;\n  top: 49px !important;\n}\n.build-page .job-log {\n  border: 1px solid var(--darker);\n  border-top: none;\n  color: var(--light) !important;\n  background-color: var(--dark) !important;\n  box-shadow: none;\n  border-radius: 0 0 4px 4px;\n}\n.build-page .line-number {\n  color: var(--lighter) !important;\n}\n.build-page .collapsible-line .log-duration-badge {\n  background-color: var(--darker) !important;\n}\n.build-page .collapsible-line:hover {\n  background-color: var(--darken) !important;\n}\n.build-page .term-fg-l-red {\n  color: var(--red) !important;\n}\n.build-page .term-fg-l-blue {\n  color: var(--blue) !important;\n}\n.build-page .term-fg-l-cyan {\n  color: var(--cyan) !important;\n}\n.build-page .term-fg-l-green {\n  color: var(--green) !important;\n}\n.build-page .term-fg-l-yellow {\n  color: var(--yellow) !important;\n}\n.build-page .term-fg-l-magenta {\n  color: var(--magenta) !important;\n}\n.build-page div.build-trace-container {\n  padding-right: 0 !important;\n}\n.build-trace {\n  border: 1px solid var(--darker);\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n}\n.build-trace-container {\n  padding-right: 16px !important;\n}\n.detail-page-header {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n}\n.author {\n  color: var(--light) !important;\n}\n.detail-page-header a {\n  color: var(--lighter);\n}\n.detail-page-header-body .issuable-warning-icon {\n  background-color: var(--darker) !important;\n}\n.detail-page-header-body .issuable-warning-icon svg {\n  fill: var(--orange) !important;\n}\n.detail-page-description,\n.detail-page-description .title {\n  border-color: var(--darker) !important;\n}\n.page-content-header time,\n.page-content-header [class*=\"-link\"] {\n  color: var(--light) !important;\n}\n.page-content-header .header-content a {\n  color: var(--light) !important;\n}\n.detail-page-description .title {\n  color: var(--light) !important;\n}\n.detail-page-description small {\n  color: var(--lighter) !important;\n}\n.edited-text,\n.edited-text .author-link {\n  color: var(--lighter) !important;\n}\n.filtered-search-box {\n  border-radius: 4px;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  min-height: 36px;\n}\n.filtered-search-box ul {\n  padding: 0 !important;\n}\n.filtered-search-box input {\n  padding-left: 12px !important;\n  border: none !important;\n  background-color: var(--t) !important;\n}\n.filtered-search-box input:focus {\n  box-shadow: none !important;\n}\n.filtered-search-box .clear-search {\n  border-radius: 4px;\n  background-color: var(--dark) !important;\n}\n.filtered-search-box.focus {\n  border-color: var(--blue) !important;\n}\n.filtered-search-box-input-container {\n  background-color: var(--t) !important;\n}\n.filtered-search-token .name,\n.filtered-search-term .name,\n.filtered-search-token .operator,\n.filtered-search-term .operator,\n.filtered-search-token .value-container,\n.filtered-search-term .value-container {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.filtered-search-token:first-child {\n  margin-left: 5px;\n}\n.filtered-search-token > .name,\n.filtered-search-term > .name {\n  background-color: var(--t) !important;\n}\n.mr-state-widget .mr-source-target {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.mr-widget-heading {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.mr-state-widget .mr-widget-extension {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  box-shadow: 0 1px var(--darker) !important;\n}\n.mr-state-widget .mr-widget-extension:last-child {\n  border-radius: 0 0 3px 3px;\n}\n.mr-state-widget .mr-widget-extension .label-branch {\n  background-color: var(--dark) !important;\n}\n.mr-state-widget .mr-widget-extension + .border-top > table:not(#z) {\n  margin-bottom: 0px !important;\n  border: none !important;\n  border-radius: 0 0 3px 3px !important;\n}\n.mr-state-widget\n  .mr-widget-extension\n  + .border-top\n  > table:not(#z)\n  thead\n  > tr\n  > th {\n  background-color: var(--bb) !important;\n}\n.mr-state-widget .mr-section-container {\n  border: 1px solid var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.mr-state-widget .mr-section-container::before {\n  border-color: var(--darken) !important;\n}\n.mr-state-widget .mr-section-container > .mr-widget-section {\n  border-radius: 0;\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n}\n.mr-state-widget .mr-section-container .mr-widget-help {\n  color: var(--lighter) !important;\n}\n.mr-state-widget .mr-section-container .mr-widget-empty-state {\n  color: var(--light) !important;\n}\n.mr-widget-workflow::before {\n  border-width: 2px;\n  border-color: var(--darken) !important;\n}\n.mr-widget-workflow > :first-child {\n  border-top: none;\n}\n.mr-state-widget .mr-widget-border-top {\n  border-color: var(--darker) !important;\n}\n.mr-state-widget .mr-widget-info {\n  color: var(--light) !important;\n}\n.report-block {\n  color: var(--light) !important;\n}\n.report-block-list-issue-parent {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.report-block-list-issue-description {\n  color: var(--light) !important;\n}\n.report-block-container {\n  border-color: var(--darker) !important;\n  background-color: var(--bb) !important;\n}\n.failed > svg {\n  fill: var(--red) !important;\n}\n.neutral > svg {\n  fill: var(--lighter) !important;\n}\n.success > svg {\n  fill: var(--green) !important;\n}\n.mr-state-widget .border-top {\n  border-color: var(--darker) !important;\n}\n.mr-state-widget .border-top .table tr:not(:first-child) > td {\n  border-top: 1px solid var(--darker) !important;\n}\n.mr-state-widget .mr-widget-body.media .square + button {\n  margin-right: 10px;\n}\n.mr-state-widget .mr-widget-body.media .bold {\n  margin-left: 0;\n  color: var(--lighter) !important;\n}\n.mr-state-widget .deploy-heading,\n.mr-state-widget .merge-train-position-indicator {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.linked-pipeline-mini-list.is-downstream > svg.arrow-icon + a[href] {\n  margin-top: 5px !important;\n}\n.linked-pipeline-mini-list.is-downstream [class*=\"ci-status\"] {\n  background-color: var(--darken) !important;\n}\n.linked-pipeline-mini-list.is-downstream [class*=\"ci-status\"],\n.linked-pipeline-mini-list.is-downstream [class*=\"ci-status\"] .s16 {\n  width: 24px !important;\n  height: 24px !important;\n}\n.linked-pipeline-mini-list.is-downstream [class*=\"ci-status\"]:hover > .s16 {\n  width: 22px !important;\n  height: 22px !important;\n}\n.mr-state-widget .ci-widget {\n  color: var(--light) !important;\n}\n.mr-state-widget .mr-widget-footer {\n  border-color: var(--darker) !important;\n}\n.mr-state-widget .mr-widget-footer .btn-link {\n  color: var(--accent) !important;\n}\n.mr-state-widget .pipeline-number,\n.mr-state-widget .commit-sha,\n.mr-state-widget .label-branch {\n  padding: 0.2em 0.4em;\n  font-weight: normal !important;\n  color: var(--accent);\n  background-color: var(--darken) !important;\n  border-radius: 4px;\n  box-shadow: inset 0 0 0 1px var(--darker);\n}\n.mr-state-widget .pipeline-number.label-truncate > a,\n.mr-state-widget .commit-sha.label-truncate > a,\n.mr-state-widget .label-branch.label-truncate > a {\n  line-height: 1.2 !important;\n}\n.mr-state-widget .bold,\n.mr-state-widget .media-body,\n.mr-state-widget .code-text,\n.mr-state-widget .label-branch {\n  color: var(--light) !important;\n}\n.mr-state-widget .diverged-commits-count,\n.mr-state-widget .coverage {\n  color: var(--lighter) !important;\n}\n.wiki-last-edit-by {\n  color: var(--lighter) !important;\n}\n.wiki-last-edit-by strong {\n  color: var(--light) !important;\n}\n.wiki-sidebar.right-sidebar a {\n  color: var(--lighter) !important;\n}\n.wiki-sidebar.right-sidebar .active a {\n  color: var(--accent) !important;\n}\n.wiki-sidebar.right-sidebar .btn {\n  background-color: var(--dark) !important;\n}\n.wiki-form .form-control {\n  background-color: var(--dark) !important;\n}\n.wiki-page-header + .table-holder > table {\n  margin-top: 10px;\n  border: 1px solid var(--darker);\n}\n.wiki-page-header + .table-holder > table thead > tr > th {\n  border-top: none;\n}\n.wiki-page-header + .table-holder > table tbody > tr:hover {\n  background-color: var(--bb) !important;\n}\n.cluster-application-row {\n  background-color: var(--darken) !important;\n}\n.cluster-application-row img.avatar:not(.identicon) {\n  background-color: 0 0 unset !important;\n}\n.clusters-container .clusters-table {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.project-visibility-setting,\n.project-feature-settings,\n.sub-section {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.project-visibility-setting .bs-callout,\n.project-feature-settings .bs-callout,\n.sub-section .bs-callout {\n  background-color: var(--darker) !important;\n}\n.settings {\n  border-color: var(--darker) !important;\n}\n.project-feature-row .form-control {\n  background-color: var(--dark) !important;\n}\n.settings-message {\n  color: var(--orange) !important;\n  border-color: var(--orange) !important;\n  background-color: var(--dark) !important;\n}\n.settings .account-well {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.settings .account-well li > code {\n  background-color: var(--dark) !important;\n}\n.settings .protected-branches-list > .table-bordered {\n  border: none !important;\n}\n.settings .protected-tags-list {\n  border: 1px solid var(--darker) !important;\n  border-radius: 4px;\n}\n.settings-content .sub-section {\n  border-radius: 4px;\n}\n.settings-content .sub-section .btn-default,\n.settings-content .sub-section .form-control,\n.settings-content .sub-section .select2-choice {\n  background-color: var(--dark) !important;\n}\n.settings-content .sub-section .btn-warning {\n  transition: opacity 0.2s ease;\n  color: var(--white) !important;\n  background-color: var(--orange) !important;\n}\n.settings-content .sub-section .btn-warning:hover {\n  opacity: 0.8;\n}\n.settings-content .sub-section .btn-warning::before {\n  content: unset !important;\n}\n.project-badges {\n  margin-top: -0.5rem;\n}\n.project-badges img {\n  margin-top: 0.5rem;\n  border-radius: 4px;\n}\n.file-holder {\n  border-color: var(--darker) !important;\n}\n.file-holder .file-title {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.file-holder .file-title-flex-parent {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.file-holder .file-title-flex-parent .btn svg {\n  fill: var(--lighter) !important;\n}\n.file-holder .file-title-flex-parent .btn.active {\n  background-color: var(--darker) !important;\n}\n.file-holder .file-title-flex-parent .btn,\n.file-holder .file-title-flex-parent .btn-default {\n  background-color: var(--dark) !important;\n}\n.file-holder .file-title-flex-parent .btn-danger-secondary {\n  color: var(--red) !important;\n  border-color: var(--red) !important;\n}\n.file-holder .file-title-flex-parent .btn-default-tertiary:not(#z) {\n  border-color: var(--t) !important;\n  background-color: var(--t) !important;\n}\n.file-holder .file-title-flex-parent .btn-primary:not(.btn-inverted),\n.file-holder .file-title-flex-parent .btn-info:not(.btn-inverted) {\n  background-color: var(--blue) !important;\n}\n.file-holder .file-title-flex-parent .btn-primary svg,\n.file-holder .file-title-flex-parent .btn-info svg {\n  fill: var(--white) !important;\n}\n.file-holder .file-title a:not(.btn),\n.file-holder .file-title-flex-parent a:not(.btn) {\n  color: var(--light) !important;\n}\n.file-holder .file-title-name {\n  color: var(--light) !important;\n}\n.file-holder .file-content {\n  background-color: var(--dark) !important;\n  border-radius: 0 0 3px 3px;\n}\n.file-holder .file-content pre.code.highlight.white:not([lang]) {\n  background-color: var(--dark) !important;\n}\n.code.white .line-numbers,\n.code.none .line-numbers,\n.code.white .diff-line-num,\n.code.none .diff-line-num {\n  background-color: var(--darken) !important;\n}\n.code.white .line-numbers a,\n.code.none .line-numbers a,\n.code.white .diff-line-num a,\n.code.none .diff-line-num a {\n  font-family: var(--mono-font);\n  color: var(--lighter) !important;\n}\n.code.white code > span.line:hover,\n.code.none code > span.line:hover {\n  background-color: var(--darken) !important;\n}\n.code.white .line-numbers > .diff-line-num,\n.code.none .line-numbers > .diff-line-num {\n  background-color: var(--t) !important;\n}\n.code.white .line_expansion,\n.code.none .line_expansion {\n  background-color: var(--darken) !important;\n}\n.code.white .line_expansion td,\n.code.none .line_expansion td {\n  border-color: var(--darker) !important;\n}\n.code.white .line_expansion a,\n.code.none .line_expansion a,\n.code.white .line_expansion span,\n.code.none .line_expansion span {\n  color: var(--lighter) !important;\n}\n.code.white .line_expansion:not(:first-of-type) > td,\n.code.none .line_expansion:not(:first-of-type) > td {\n  border-top: 1px solid var(--darker) !important;\n}\n.code.white pre .hll,\n.code.none pre .hll {\n  z-index: 1 !important;\n  position: relative;\n  background-color: var(--t) !important;\n}\n.code.white pre .hll::before,\n.code.none pre .hll::before {\n  content: \"\";\n  z-index: -1 !important;\n  opacity: 0.2;\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  background-color: var(--yellow) !important;\n}\n.code.white .new .idiff,\n.code.none .new .idiff {\n  color: var(--light) !important;\n  background-color: var(--t) !important;\n  box-shadow: inset 0 0 0 1rem rgba(79, 88, 0, 0.75);\n}\n.code.white .old .idiff,\n.code.none .old .idiff {\n  color: var(--light) !important;\n  background-color: var(--t) !important;\n  box-shadow: inset 0 0 0 1rem rgba(117, 0, 0, 0.65);\n}\n.code.white pre.code {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.code.none pre.code {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.code.none pre.code .line span {\n  color: var(--light) !important;\n}\n.code.white .line > a {\n  color: var(--blue) !important;\n}\n.code.white .err {\n  color: var(--white) !important;\n  background-color: var(--red) !important;\n}\n.code.white .gi {\n  color: var(--green) !important;\n  background-color: var(--bb) !important;\n}\n.code.white .gd {\n  color: var(--red) !important;\n  background-color: var(--bb) !important;\n}\n.code.white .c,\n.code.white .cm,\n.code.white .c1,\n.code.white .gh,\n.code.white .nn,\n.code.white .go,\n.code.white .gt {\n  color: var(--lighter) !important;\n}\n.code.white .n,\n.code.white .cp,\n.code.white .gp,\n.code.white .s,\n.code.white .s1 {\n  color: var(--light) !important;\n}\n.code.white .no,\n.code.white .na,\n.code.white .nb {\n  color: var(--cyan) !important;\n}\n.code.white .sx,\n.code.white .se,\n.code.white .sh,\n.code.white .s2 {\n  color: var(--red) !important;\n}\n.code.white .sr,\n.code.white .vi,\n.code.white .mf,\n.code.white .ne,\n.code.white .nv {\n  color: var(--green) !important;\n}\n.code.white .nt,\n.code.white .m,\n.code.white .mi,\n.code.white .mh {\n  color: var(--blue) !important;\n}\n.code.white .nf,\n.code.white .ss,\n.code.white .si,\n.code.white .nc {\n  color: var(--magenta) !important;\n}\n.code.white .ni,\n.code.white .gu,\n.code.white .sb,\n.code.white .kt {\n  color: var(--violet) !important;\n}\n.file-title,\n.file-title-flex-parent {\n  border-top: 1px solid var(--darker) !important;\n  border-radius: 4px 4px 0 0;\n}\n.diff-file .file-title,\n.diff-file .file-title-flex-parent {\n  top: 165px;\n}\n.diff-file.conflict .file-title,\n.diff-file.conflict .file-title-flex-parent {\n  top: 49px !important;\n}\n.diff-file .file-title.is-commit,\n.diff-file .file-title-flex-parent.is-commit,\n.diff-file .file-title.is-compare,\n.diff-file .file-title-flex-parent.is-compare {\n  top: 117px;\n}\n.sticky-placeholder + div .is-commit {\n  top: 86px !important;\n}\n.diff-file .file-title,\n.diff-file .file-title-flex-parent {\n  box-shadow: none !important;\n}\n.diff-file .file-title .btn:not(.active),\n.diff-file .file-title-flex-parent .btn:not(.active) {\n  background-color: var(--dark) !important;\n}\n.diff-file .file-title::before,\n.diff-file .file-title-flex-parent::before {\n  background-color: var(--bb) !important;\n}\n.diff-file .diff-content {\n  color: var(--light) !important;\n  background-color: var(--dark) !important;\n}\n.nothing-here-block {\n  color: var(--lighter) !important;\n}\n.nothing-here-block .click-to-expand {\n  color: var(--accent) !important;\n  border-color: var(--t) !important;\n  background-color: var(--t) !important;\n}\n.diff-file .diff-content .image {\n  background-color: var(--dark) !important;\n}\n.diff-file .diff-content .image .frame {\n  background-color: var(--t) !important;\n}\n.diff-file .diff-content .image .frame.added {\n  border-color: var(--green) !important;\n}\n.diff-file .diff-content .image .frame.deleted {\n  border-color: var(--red) !important;\n}\n.diff-file .diff-content .image .frame img {\n  background-image: linear-gradient(\n      45deg,\n      var(--darker) 25%,\n      var(--t) 25%,\n      var(--t) 75%,\n      var(--darker) 75%,\n      var(--darker) 100%\n    ),\n    linear-gradient(\n      45deg,\n      var(--darker) 25%,\n      var(--t) 25%,\n      var(--t) 75%,\n      var(--darker) 75%,\n      var(--darker) 100%\n    );\n  border-color: var(--darker) !important;\n}\n.diff-file .diff-content .image .frame img:-moz-broken::before {\n  content: \"broken image\";\n}\n.diff-file .diff-content .image-info {\n  color: var(--lighter) !important;\n}\n.diff-file .diff-content .image ~ .note-container {\n  border-color: var(--t) !important;\n  background-color: var(--t) !important;\n}\n.diff-file .diff-content .view-modes {\n  background-color: var(--t) !important;\n}\n.diff-file .diff-content .view-modes li {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n}\n.diff-file .diff-content .view-modes .active {\n  color: var(--light) !important;\n}\n.diff-file .diff-content .notes_holder td {\n  border-top-color: var(--darker) !important;\n}\n.diff-file .diff-content .notes_holder td,\n.diff-file .diff-content .diff-discussions {\n  border-bottom-color: var(--darker) !important;\n}\n.diff-files-changed {\n  border-color: var(--darker) !important;\n  background-color: var(--bb) !important;\n  top: 49px;\n}\n.diff-files-changed > div > .dropdown {\n  margin-left: 0;\n  padding-left: 0;\n  background-color: var(--t) !important;\n}\n.cred:not(#z) {\n  color: var(--red) !important;\n  fill: var(--red) !important;\n}\n.cgreen:not(#z) {\n  color: var(--green) !important;\n  fill: var(--green) !important;\n}\n.diff-changed-file-path {\n  color: var(--lighter) !important;\n}\n.diff-files-changed [class*=\"summary-toggle\"] {\n  color: var(--blue) !important;\n  background-color: var(--t) !important;\n}\n.diff-files-changed [class*=\"summary-toggle\"]::before {\n  content: unset;\n}\n.diff-file.is-active {\n  box-shadow: var(--bshadow) !important;\n}\n.diff-tree-list {\n  top: 165px !important;\n}\n.diff-tree-list .drag-handle:hover {\n  background-color: var(--darken) !important;\n}\n.diff-tree-list .drag-handle.is-dragging {\n  background-color: var(--darker) !important;\n}\n.diff-tree-list .file-row:hover,\n.diff-tree-list .file-row:focus {\n  background-color: var(--darken) !important;\n}\n.diff-tree-list .file-row-header.bg-white {\n  background-color: var(--bb) !important;\n}\n.diff-tree-list .file-row.is-active {\n  background-color: var(--darker) !important;\n}\n.diff-file.conflict {\n  border-top: none !important;\n}\n.diff-file.conflict .head,\n.diff-file.conflict .origin {\n  position: relative;\n}\n.diff-file.conflict .head::before,\n.diff-file.conflict .origin::before {\n  content: \"\";\n  opacity: 0.35;\n  position: absolute;\n  pointer-events: none;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n}\n.diff-file.conflict .line_content:not(.header).head::before,\n.diff-file.conflict .line_content:not(.header).origin::before {\n  opacity: 0.25;\n}\n.diff-file.conflict .line_content:not(.header).selected::before {\n  opacity: 0.25 !important;\n}\n.diff-file.conflict .unselected:not(#z)::before {\n  background-color: var(--darker) !important;\n}\n.diff-file.conflict .unselected .btn {\n  opacity: 0.5;\n}\n.diff-file.conflict .selected::before {\n  opacity: 0.5 !important;\n}\n.diff-file.conflict .head::before,\n.diff-file.conflict .head > .btn {\n  border-color: var(--green) !important;\n  background-color: var(--green) !important;\n}\n.diff-file.conflict .origin::before,\n.diff-file.conflict .origin > .btn {\n  border-color: var(--blue) !important;\n  background-color: var(--blue) !important;\n}\n.diff-file.conflict .editor-wrap.saved .editor {\n  border-color: var(--green) !important;\n}\n.code.white,\n.code.none {\n  color: var(--light);\n  background-color: var(--dark);\n}\n.code.white .line_holder:not(#z) > td,\n.code.none .line_holder:not(#z) > td {\n  color: var(--light) !important;\n}\nbutton.add-diff-note {\n  padding: 0 0 1px 1px;\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\nbutton.add-diff-note:hover {\n  background-color: var(--darken) !important;\n}\n.code.white .line_holder .unfold:not(#z),\n.code.none .line_holder .unfold:not(#z) {\n  color: var(--lighter) !important;\n}\n.code.white .line_holder .unfold:not(#z)::before,\n.code.none .line_holder .unfold:not(#z)::before {\n  content: unset;\n}\n.code.white .line_holder.match:not(#z),\n.code.none .line_holder.match:not(#z),\n.code.white .line_holder.new-nonewline:not(#z),\n.code.none .line_holder.new-nonewline:not(#z) {\n  background-color: var(--darken) !important;\n}\n.code.white .line_holder.match:not(#z) .line_content,\n.code.none .line_holder.match:not(#z) .line_content,\n.code.white .line_holder.new-nonewline:not(#z) .line_content,\n.code.none .line_holder.new-nonewline:not(#z) .line_content {\n  color: var(--lighter) !important;\n}\n.code.white .line_holder .diff-line-num,\n.code.none .line_holder .diff-line-num {\n  z-index: 1;\n  padding-right: 11px;\n  border-right: none !important;\n  box-shadow: inset -1px 0 var(--darker);\n}\n.code.white .line_holder .diff-line-num.new::after,\n.code.none .line_holder .diff-line-num.new::after,\n.code.white .line_holder .diff-line-num.old::after,\n.code.none .line_holder .diff-line-num.old::after {\n  content: \"\";\n  z-index: -1;\n  opacity: 0.25;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  position: absolute;\n  pointer-events: none;\n}\n.code.white .line_holder .diff-line-num.is-over::before,\n.code.none .line_holder .diff-line-num.is-over::before {\n  content: \"\";\n  z-index: -1;\n  opacity: 0.45;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  position: absolute;\n  pointer-events: none;\n}\n.code.white .line_holder .diff-line-num.old::after,\n.code.none .line_holder .diff-line-num.old::after {\n  background-color: var(--red) !important;\n}\n.code.white .line_holder .diff-line-num.new::after,\n.code.none .line_holder .diff-line-num.new::after {\n  background-color: var(--green) !important;\n}\n.code.white .line_holder .diff-line-num.is-over::before,\n.code.none .line_holder .diff-line-num.is-over::before {\n  background-color: var(--darker) !important;\n}\n:not(#z) .code.white .line_holder .diff-line-num:not(.new):not(.old),\n:not(#z) .code.none .line_holder .diff-line-num:not(.new):not(.old) {\n  background-color: var(--darken) !important;\n}\n.code.white .line_holder > [class*=\"line\"]:not([class*=\"num\"]),\n.code.none .line_holder > [class*=\"line\"]:not([class*=\"num\"]) {\n  position: relative;\n  z-index: 1;\n  background-color: var(--t) !important;\n}\n.code.white .line_holder > [class*=\"line\"]:not([class*=\"num\"]).new,\n.code.none .line_holder > [class*=\"line\"]:not([class*=\"num\"]).new,\n.code.white .line_holder > [class*=\"line\"]:not([class*=\"num\"]).old,\n.code.none .line_holder > [class*=\"line\"]:not([class*=\"num\"]).old {\n  background-color: var(--t) !important;\n}\n.code.white .line_holder > [class*=\"line\"]:not([class*=\"num\"]).new::after,\n.code.none .line_holder > [class*=\"line\"]:not([class*=\"num\"]).new::after,\n.code.white .line_holder > [class*=\"line\"]:not([class*=\"num\"]).old::after,\n.code.none .line_holder > [class*=\"line\"]:not([class*=\"num\"]).old::after {\n  content: \"\";\n  z-index: -1;\n  opacity: 0.18;\n  position: absolute;\n  pointer-events: none;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n}\n.code.white .line_holder > [class*=\"line\"]:not([class*=\"num\"]).old::before,\n.code.none .line_holder > [class*=\"line\"]:not([class*=\"num\"]).old::before {\n  color: var(--red) !important;\n}\n.code.white .line_holder > [class*=\"line\"]:not([class*=\"num\"]).old::after,\n.code.none .line_holder > [class*=\"line\"]:not([class*=\"num\"]).old::after {\n  background-color: var(--red) !important;\n}\n.code.white .line_holder > [class*=\"line\"]:not([class*=\"num\"]).new::before,\n.code.none .line_holder > [class*=\"line\"]:not([class*=\"num\"]).new::before {\n  color: var(--green) !important;\n}\n.code.white .line_holder > [class*=\"line\"]:not([class*=\"num\"]).new::after,\n.code.none .line_holder > [class*=\"line\"]:not([class*=\"num\"]).new::after {\n  background-color: var(--green) !important;\n}\n.diff-comment-avatar,\n.diff-comments-more-count {\n  border-color: var(--dark) !important;\n}\n.diff-comments-more-count,\n.diff-notes-collapse {\n  border-radius: var(--avatar);\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.js-temp-notes-holder td {\n  border-color: var(--darker) !important;\n}\n.code.white .line_holder.diff-expanded > .line_content,\n.code.none .line_holder.diff-expanded > .line_content {\n  background-color: var(--darken) !important;\n}\n.code.white .line_holder.diff-expanded > .diff-line-num,\n.code.none .line_holder.diff-expanded > .diff-line-num {\n  box-shadow: none !important;\n}\n.code.white .line_holder.diff-expanded > td,\n.code.none .line_holder.diff-expanded > td,\n.code.white .line_holder.diff-expanded + :not(.diff-expanded) > td,\n.code.none .line_holder.diff-expanded + :not(.diff-expanded) > td {\n  border-color: var(--darker) !important;\n}\n.code.white\n  .line_holder[class*=\"holder\"]:not(.new):not(.old):hover\n  > td[class*=\"line\"]:not(.match)::before,\n.code.none\n  .line_holder[class*=\"holder\"]:not(.new):not(.old):hover\n  > td[class*=\"line\"]:not(.match)::before {\n  content: \"\";\n  z-index: -1;\n  opacity: 0.5;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  position: absolute;\n  pointer-events: none;\n  background-color: var(--darker) !important;\n}\n.code.white .line_holder.old:hover > .diff-line-num::after,\n.code.none .line_holder.old:hover > .diff-line-num::after,\n.code.white .line_holder.new:hover > .diff-line-num::after,\n.code.none .line_holder.new:hover > .diff-line-num::after {\n  opacity: 0.3 !important;\n}\n.code.white\n  .line_holder.old:hover\n  > td[class*=\"line\"]:not([class*=\"num\"])::after,\n.code.none\n  .line_holder.old:hover\n  > td[class*=\"line\"]:not([class*=\"num\"])::after,\n.code.white\n  .line_holder.new:hover\n  > td[class*=\"line\"]:not([class*=\"num\"])::after,\n.code.none\n  .line_holder.new:hover\n  > td[class*=\"line\"]:not([class*=\"num\"])::after {\n  opacity: 0.3 !important;\n}\n.code.white.white,\n.code.none.white {\n  color: var(--light);\n  background-color: var(--t);\n}\n.code.white tbody > tr.line_expansion.match:last-child > td,\n.code.none tbody > tr.line_expansion.match:last-child > td {\n  border-bottom: none !important;\n}\n.group-list-tree::before {\n  border-color: var(--darker) !important;\n}\n.group-list-tree .folder-caret,\n.group-list-tree .item-type-icon {\n  color: var(--lighter) !important;\n}\n.group-list-tree .group-row {\n  border-color: var(--darker) !important;\n}\n.group-list-tree .group-row a {\n  color: var(--light) !important;\n}\n.group-list-tree .group-row::before {\n  border-color: var(--darker) !important;\n}\n.group-list-tree .group-row-contents:hover {\n  background-color: var(--darken) !important;\n}\n.group-list-tree .group-row:last-child::before {\n  background-color: var(--bb) !important;\n}\n.group-list-tree .group-row .metadata {\n  margin-right: 10px;\n}\n.group-list-tree .group-row .description p,\n.group-list-tree .group-row .stat-value {\n  color: var(--lighter) !important;\n}\n.group-list-tree .group-row .identicon.s40 {\n  line-height: 30px;\n}\n.group-list-tree .folder-caret {\n  margin-left: 10px;\n}\n.cover-block {\n  background-color: var(--darken) !important;\n}\n.cover-title,\n.cover-status,\n.cover-desc {\n  color: var(--light) !important;\n}\n.cover-controls .btn {\n  background-color: var(--dark) !important;\n}\n.calendar-hint {\n  color: var(--lighter) !important;\n}\n.calendar svg.contrib-calendar > g text {\n  fill: var(--light) !important;\n}\n.calendar svg.contrib-calendar > g rect {\n  fill: var(--accent) !important;\n}\n.calendar svg.contrib-calendar > g rect[fill=\"#ededed\"] {\n  opacity: 0.06;\n}\n.calendar svg.contrib-calendar > g rect[fill^=\"rgb(17\"] {\n  opacity: 0.2;\n}\n.calendar svg.contrib-calendar > g rect[fill^=\"rgb(12\"] {\n  opacity: 0.45;\n}\n.calendar svg.contrib-calendar > g rect[fill^=\"rgb(82\"] {\n  opacity: 0.7;\n}\n.calendar svg.contrib-calendar > g rect[fill^=\"rgb(37\"] {\n  opacity: 1;\n}\n.user-profile .projects-block,\n.user-profile .activities-block {\n  padding: 0 12px;\n  background-color: var(--darken) !important;\n  border-radius: 4px;\n}\n.user-profile .activities-block [data-href] {\n  min-height: 40px;\n}\n.user-profile .activities-block [data-href] .hide:first-child:last-child {\n  display: flex !important;\n  justify-content: center;\n}\n.user-profile .activities-block [data-href] .hide:first-child:last-child > div {\n  display: none;\n}\n.user-profile\n  .activities-block\n  [data-href]\n  .hide:first-child:last-child::before {\n  content: \"No recent activities\";\n  font-size: 15px;\n  color: var(--light) !important;\n}\n.roadmap-container .roadmap-shell {\n  border-color: var(--darker) !important;\n  border-top: 1px solid var(--darker);\n}\n.roadmap-container .timeline-header-blank,\n.roadmap-container .timeline-header-item {\n  border-color: var(--darker) !important;\n  background-color: var(--bb) !important;\n}\n.roadmap-container .timeline-header-blank::before {\n  border-color: var(--darker) !important;\n  box-shadow: none !important;\n  background: linear-gradient(\n    to bottom,\n    var(--shadow) 0%,\n    var(--t) 100%\n  ) !important;\n}\n.roadmap-container .timeline-header-item .item-label {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n}\n.roadmap-container .timeline-header-item .item-sublabel .sublabel-value {\n  color: var(--lighter) !important;\n}\n.roadmap-container .timeline-header-item .item-sublabel .label-bold {\n  color: var(--light) !important;\n}\n.roadmap-container .milestones-list-title {\n  background-color: var(--bb) !important;\n}\n.roadmap-container .milestones-list-title::after {\n  width: 4px;\n  right: -4px;\n  background: linear-gradient(to right, var(--shadow) 0%, var(--t) 100%);\n}\n.roadmap-container .milestone-start-and-end {\n  border-color: var(--darker) !important;\n}\n.roadmap-container .milestone-timeline-cell {\n  background-color: var(--dark) !important;\n}\n.roadmap-container .milestone-item-details {\n  color: var(--lighter) !important;\n}\n.roadmap-container .milestone-item-details .timeline-bar,\n.roadmap-container .milestone-item-details .timeline-bar::before {\n  background-color: var(--lighter) !important;\n}\n.roadmap-container .milestone-item-details .timeline-bar::after {\n  border-color: var(--lighter) !important;\n  background-color: var(--light) !important;\n}\n.roadmap-container .milestone-url {\n  color: var(--lighter) !important;\n}\n.roadmap-container .milestone-item-details:hover .timeline-bar,\n.roadmap-container .milestone-item-details:hover .timeline-bar::before {\n  background-color: var(--light) !important;\n}\n.roadmap-container .milestone-item-details:hover .milestone-url {\n  color: var(--light) !important;\n}\n.roadmap-container .epic-bar {\n  background-color: var(--blue) !important;\n}\n.roadmap-container .epic-bar-child-epic {\n  border-color: var(--blue) !important;\n  background-color: var(--bb) !important;\n}\n.roadmap-container .epic-bar-child-epic p,\n.roadmap-container .epic-bar-child-epic svg {\n  color: var(--blue) !important;\n}\n.roadmap-container .epic-bar-child-epic .progress-bar {\n  background-color: var(--blue) !important;\n}\n.roadmap-container .epic-details-cell {\n  border-color: var(--darker) !important;\n  background-color: var(--bb) !important;\n}\n.roadmap-container .epic-timeline-cell {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.roadmap-container .epics-list-item:hover > .epic-timeline-cell {\n  background-color: var(--bb) !important;\n}\n.roadmap-container .epic-group-timeframe {\n  color: var(--lighter) !important;\n}\n.roadmap-container .epic-title,\n.roadmap-container .epic-title > a {\n  color: var(--light) !important;\n}\n.roadmap-container .timeline-header-blank::after,\n.roadmap-container .milestones-list-title::after,\n.roadmap-container .epic-details-cell::after {\n  width: 4px;\n  right: -4px;\n  background: linear-gradient(to right, var(--shadow) 0%, var(--t) 100%);\n}\n.roadmap-container .current-day-indicator,\n.roadmap-container .current-day-indicator-header {\n  background-color: var(--accent) !important;\n}\n.notes::before {\n  border-color: var(--darken) !important;\n}\n.notes .system-note .timeline-icon {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.notes .system-note .timeline-icon svg {\n  fill: var(--lighter) !important;\n}\n.notes .system-note a:not(.gl-link):not(.gfm) {\n  color: var(--accent) !important;\n}\n.notes.timeline > .timeline-entry {\n  border-color: var(--darker) !important;\n}\n.notes.timeline > .timeline-entry:not(.system-note):not(.note-form) {\n  background-color: var(--dark) !important;\n}\n.notes.timeline > .timeline-entry.target:not(#z) {\n  border-color: var(--blue) !important;\n  background-color: var(--bb) !important;\n}\n.notes.timeline > .timeline-entry .note-text.md {\n  color: var(--light) !important;\n}\n.notes.timeline > .timeline-entry .note-text::after {\n  background: linear-gradient(var(--t) -100px, var(--bb) 100%) !important;\n}\n.notes.timeline > .timeline-entry .note-text + .flex-list div[class*=\"toggle\"] {\n  color: var(--accent) !important;\n}\n.notes.timeline\n  > .timeline-entry\n  .note-text\n  + .description-version\n  > pre.wrapper {\n  border-radius: 4px;\n}\n.notes.timeline\n  > .timeline-entry\n  .note-actions-item\n  > [class*=\"button\"]:hover::before {\n  content: unset !important;\n}\n.notes.timeline\n  > .timeline-entry\n  .note-actions-item\n  > [class*=\"button\"]:hover\n  svg {\n  fill: var(--light) !important;\n}\n.notes.timeline\n  > .timeline-entry\n  .note-actions-item.js-reply-button\n  > .gl-button {\n  border: none !important;\n  background-color: var(--t) !important;\n}\n.notes.timeline > .timeline-entry .edited-text,\n.notes.timeline > .timeline-entry .edited-text .author-link {\n  color: var(--lighter) !important;\n}\n.notes.timeline > .timeline-entry .notes-content {\n  border-color: var(--darker) !important;\n}\n[class*=\"author-name\"] {\n  color: var(--light) !important;\n}\n[class*=\"headline-light\"],\n[class*=\"headline-light\"] [class*=\"separator\"] {\n  color: var(--lighter) !important;\n}\n[class*=\"headline-light\"] a:hover,\n[class*=\"headline-light\"] a:hover time {\n  color: var(--accent) !important;\n}\n.notes .replies-toggle {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.notes .replies-toggle:not(.expanded) {\n  border-bottom: 0;\n}\n.notes .replies-toggle.collapsed {\n  border-radius: 0 0 3px 3px;\n}\n.notes .replies-toggle.expanded {\n  background-color: var(--darken) !important;\n}\n.notes .replies-toggle span,\n.notes .replies-toggle a {\n  color: var(--light) !important;\n}\n[class*=\"award-control-\"],\n[class*=\"award-control-\"] svg {\n  fill: var(--lighter) !important;\n}\n[class*=\"award-control-\"]:hover svg {\n  fill: var(--light) !important;\n}\n[class*=\"award-control-\"].is-active svg {\n  fill: var(--accent) !important;\n}\n.notes .user-access-role {\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n}\n.emoji-menu {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  box-shadow: var(--bshadow);\n}\n.emoji-menu input {\n  background-color: var(--dark) !important;\n}\n.idiff.addition {\n  color: var(--green) !important;\n  background-color: var(--t) !important;\n}\n.idiff.deletion {\n  color: var(--red) !important;\n  background-color: var(--t) !important;\n}\n.line-resolve-all {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.line-resolve-btn {\n  color: var(--lighter) !important;\n}\n.line-resolve-btn.is-disabled svg {\n  fill: var(--lighter) !important;\n}\n.line-resolve-btn.is-active {\n  color: var(--green) !important;\n}\n.line-resolve-btn.is-active svg {\n  fill: var(--green) !important;\n}\n.notes_holder {\n  font-family: var(--ui-font) !important;\n}\n.notes_holder > td,\n.notes_holder .notes {\n  background-color: var(--t) !important;\n}\n.notes_holder [class*=\"reply-holder\"] {\n  margin-bottom: -1px;\n}\n.notes_holder .timeline-entry.note {\n  color: var(--light) !important;\n  background-color: var(--dark) !important;\n}\n.notes_holder .timeline-entry.note .replies-toggle,\n.notes_holder .timeline-entry.note [class*=\"reply-holder\"] {\n  border-bottom: 1px solid var(--darker);\n}\n.notes.timeline > .discussion-filter-note {\n  color: var(--light) !important;\n}\n.notes.timeline > .discussion-filter-note .timeline-icon {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.epic-tabs-content .card-header .issue-count-badge {\n  background-color: var(--t) !important;\n}\n.status-at-risk {\n  color: var(--red) !important;\n  background-color: rgba(255, 0, 102, 0.125) !important;\n}\n.status-on-track {\n  color: var(--green) !important;\n  background-color: rgba(0, 255, 102, 0.125) !important;\n}\n.status-needs-attention {\n  color: var(--orange) !important;\n  background-color: rgba(255, 102, 0, 0.125) !important;\n}\n.status-at-risk > .gl-label-text,\n.status-on-track > .gl-label-text,\n.status-needs-attention > .gl-label-text {\n  color: inherit !important;\n}\n.bullet-separator {\n  color: var(--lighter) !important;\n}\n.gl-label[class*=\"status-\"] > .gl-label-text {\n  box-shadow: none !important;\n}\n.sortable-drag {\n  background-color: var(--t) !important;\n  box-shadow: none !important;\n}\n.js-comment-form .float-left.btn-group {\n  float: unset !important;\n}\n.discussion-header {\n  border-color: var(--darker) !important;\n}\n.discussion-actions button {\n  color: var(--lighter) !important;\n}\n.discussion-headline-light a {\n  color: var(--accent) !important;\n}\n.discussion .timeline-entry {\n  color: var(--light) !important;\n  background-color: var(--dark) !important;\n}\n.discussion .timeline-entry.target {\n  background-color: var(--bb) !important;\n}\n.discussion-body .notes_holder li.note,\n.discussion-body .notes li.note:not(:first-child) {\n  border-radius: 0;\n}\n.discussion-body .file-title {\n  top: 98px !important;\n}\n.discussion-reply-holder {\n  border-color: var(--darker) !important;\n  background-color: var(--bb) !important;\n}\n.discussion-reply-holder > .discussion-notes {\n  background-color: var(--t) !important;\n  box-shadow: none !important;\n}\n.discussion-reply-holder .btn:not(.btn-success) {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.disabled-comment {\n  padding: 8px 0;\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.disabled-comment a:not(.learn-more) {\n  color: var(--accent) !important;\n}\n.disabled-comment .issuable-note-warning {\n  color: var(--orange) !important;\n  border-color: var(--t) !important;\n  background-color: var(--t) !important;\n}\n.disabled-comment .issuable-note-warning svg {\n  fill: var(--orange) !important;\n}\n.discussion-form {\n  border-color: var(--darker) !important;\n  background-color: var(--bb) !important;\n}\n.draft-note-component {\n  background-color: var(--t) !important;\n}\n.draft-note-component .drafts-count-component {\n  color: var(--white) !important;\n  background-color: var(--green) !important;\n}\n.review-bar-component {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.note-form {\n  background-color: var(--t) !important;\n}\n.issuable-note-warning {\n  color: var(--orange) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.issuable-note-warning a {\n  color: var(--orange) !important;\n}\n.md-area {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.toolbar-btn svg {\n  fill: var(--lighter) !important;\n}\n.toolbar-btn svg:hover {\n  fill: var(--light) !important;\n}\n.md-area.is-focused {\n  border-color: var(--blue) !important;\n  box-shadow: 0 0 0.4rem -0.2rem var(--blue) !important;\n}\n.md-area .markdown-selector {\n  color: var(--accent) !important;\n}\n.md-area .markdown-area {\n  color: var(--light) !important;\n  background-color: var(--t) !important;\n}\n.md-area .comment-toolbar {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n}\n.md-area textarea {\n  font-family: var(--mono-font);\n}\n.note-form .timeline-icon {\n  background-color: var(--t) !important;\n}\n.referenced-commands {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.zen-control svg {\n  fill: var(--lighter) !important;\n}\n.zen-backdrop.fullscreen {\n  background-color: var(--dark) !important;\n}\n.note-form-actions {\n  color: var(--lighter) !important;\n}\n.board-inner {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.board-title {\n  border-color: var(--darker) !important;\n}\n.board-title-caret:hover {\n  background-color: var(--darken) !important;\n}\n.board-list-count {\n  color: var(--lighter) !important;\n}\n.board .issue-count-badge {\n  background-color: var(--t) !important;\n}\n.board .form-control {\n  background-color: var(--dark) !important;\n}\n.board-card {\n  border-top: 1px solid var(--darker) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  box-shadow: none;\n}\n.board-card-header a,\n.board-card-title a {\n  color: var(--light) !important;\n}\n.board-card-number {\n  color: var(--lighter) !important;\n}\n.board-card-weight {\n  color: var(--light) !important;\n}\n.board-card:last-child {\n  margin-bottom: 0.25rem;\n}\n.board-delete:not(:hover) {\n  opacity: 0.6;\n}\n.issue-boards-content.is-focused {\n  background-color: var(--bb) !important;\n}\n.board-blank-state,\n.board-promotion-state {\n  background-color: var(--t) !important;\n}\n.top-space #hide-btn {\n  margin-top: 15px;\n}\n.board-inner > header h3 {\n  min-height: 51px !important;\n}\n.boards-list,\n.board-swimlanes {\n  --offset: 0px;\n  height: calc(100vh - 114px - var(--offset));\n}\n@media (min-width: 768px) {\n  .boards-list,\n  .board-swimlanes {\n    height: calc(100vh - 167px - var(--offset));\n  }\n}\n@media (max-width: 767.98px) and (min-width: 576px) {\n  .boards-list,\n  .board-swimlanes {\n    height: calc(100vh - 99px - var(--offset));\n  }\n}\n.boards-app .add-issues-container {\n  border: 1px solid;\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.boards-app .add-issues-container > div > header {\n  background-color: var(--darken) !important;\n}\n.boards-app .add-issues-container .board-card.is-active {\n  background-color: rgba(34, 136, 255, 0.082) !important;\n}\n.boards-app .add-issues-container .board-card.is-active svg.gl-icon {\n  color: var(--white) !important;\n  border-color: var(--blue) !important;\n  background-color: var(--blue) !important;\n  fill: var(--white) !important;\n}\n.boards-app .add-issues-container .btn.close {\n  top: -5px;\n}\n.boards-app .add-issues-container .filtered-search {\n  background-color: var(--t) !important;\n}\n.boards-app .add-issues-container .clear-search {\n  background-color: var(--t) !important;\n}\n.milestones .milestone:not(:last-child) {\n  margin-bottom: 8px;\n}\n.milestone .label-badge-gray {\n  color: var(--light) !important;\n}\n.milestone-content .card-header {\n  border-color: var(--t) !important;\n}\n.milestone-content .card-header.bg-primary {\n  color: var(--accent) !important;\n}\n.milestone-content li.issuable-row {\n  background-color: var(--dark) !important;\n}\n.milestone-content li.issuable-row:first-child {\n  border-top: 1px solid var(--darker) !important;\n}\n.milestone-content li.issuable-row:last-child {\n  border-radius: 0 0 4px 4px;\n}\n.milestone-content li.issuable-row .issuable-number {\n  color: var(--lighter) !important;\n}\n.manage-labels-list li {\n  background-color: var(--t) !important;\n}\n.burndown-chart {\n  background-color: var(--dark) !important;\n  border-radius: 4px;\n  box-shadow: inset 0 0 0 1px var(--darker);\n}\n.burndown-chart text {\n  fill: var(--light) !important;\n}\n.burndown-chart .axis-label text {\n  fill: var(--light) !important;\n}\n.burndown-chart .axis-label line,\n.burndown-chart .axis line,\n.burndown-chart .axis path {\n  stroke: var(--lighter) !important;\n}\n.burndown-chart .line.ideal {\n  stroke: var(--lighter) !important;\n}\n.burndown-chart .line.actual {\n  stroke: var(--green) !important;\n}\n.burndown-chart .legend rect {\n  stroke: var(--lighter) !important;\n}\n.burndown-chart .legend text {\n  fill: var(--light) !important;\n}\n.gl-legend,\n.gl-legend-inline {\n  color: var(--light) !important;\n}\n.burndown-chart [style*=\"221, 221, 221\"] {\n  fill: var(--darker) !important;\n}\n.burndown-chart [stroke=\"#ddd\"],\n.burndown-chart [stroke=\"#dfdfdf\"],\n.burndown-chart [stroke=\"#919191\"] {\n  stroke: var(--darker) !important;\n}\n.burndown-chart [stroke=\"#1f78d1\"] {\n  stroke: var(--blue) !important;\n}\n.burndown-chart [fill=\"#1f78d1\"],\n.burndown-chart [fill*=\"34,132,229\"],\n.burndown-chart [style*=\"31, 120, 209\"] {\n  fill: var(--blue) !important;\n}\n.content-block.burndown-hint {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  border-radius: 4px;\n}\n.content-block.burndown-hint svg path[fill=\"#fff\"] {\n  fill: var(--t) !important;\n}\n.js-burndown-data-selector .btn-primary {\n  color: var(--white) !important;\n  border-color: var(--blue) !important;\n  background-color: var(--blue) !important;\n}\n[class*=\"-tabs-holder\"] {\n  border-color: var(--darker) !important;\n  background-color: var(--bb) !important;\n  top: 50px;\n}\n.mr-version-controls {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--bb) !important;\n  top: 98px;\n}\n.design-detail {\n  background-color: var(--t) !important;\n}\n.design-detail::before {\n  content: \"\";\n  z-index: -1;\n  opacity: 0.9;\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  background-color: var(--darken) !important;\n}\n.design-detail header {\n  border-bottom: 1px solid var(--darker);\n}\n.design-detail .frame .badge-pill {\n  color: var(--white) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--accent) !important;\n}\n.design-detail .image-notes {\n  border-left: 1px solid var(--darker);\n  background-color: var(--dark) !important;\n}\n.design-detail .image-notes .design-discussion {\n  background-color: var(--darken) !important;\n}\n.design-detail .image-notes .design-discussion::before,\n.design-detail .image-notes .design-discussion .reply-wrapper {\n  border-color: var(--darker) !important;\n}\n.design-detail .image-notes .design-discussion .btn-text-field {\n  background-color: var(--dark) !important;\n}\n.design-detail .image-notes .badge-pill,\n.design-detail .image-notes .key {\n  color: var(--white) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--accent) !important;\n  box-shadow: none;\n}\n.file-holder {\n  background-color: var(--dark) !important;\n}\n.file-holder.file-holder-bottom-radius {\n  border-radius: 0 0 4px 4px;\n}\n.file-holder.file-holder-bottom-radius .file-title {\n  border-radius: 0;\n}\n.file-fork-suggestion {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.file-editor .nav-links {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  border-radius: 4px 4px 0 0;\n}\n.file-editor .file-title {\n  border-radius: 4px 4px 0 0;\n}\n.file-editor .file-title-flex-parent > .form-control {\n  background-color: var(--dark) !important;\n}\n.file-editor .file-title [data-toggle=\"dropdown\"] {\n  background-color: var(--dark) !important;\n}\n.file .toolbar-btn:hover svg {\n  fill: var(--light) !important;\n}\n.file .btn,\n.file .encoding-selector,\n.file #preview {\n  font-family: var(--ui-font);\n}\n.file .editor-ref {\n  border-color: var(--darker) !important;\n  background-color: var(--t) !important;\n}\n.template-selectors-menu {\n  border-color: var(--darker) !important;\n}\n.template-selector-dropdowns-wrap > div[class] {\n  font-family: var(--ui-font);\n}\n.file input,\n.file .btn,\n.file .select2-choice {\n  background-color: var(--dark) !important;\n}\n.file .btn[class*=\"active\"] {\n  background-color: var(--darker) !important;\n}\n.ace-tm {\n  border-radius: 0 0 3px 3px !important;\n  color: var(--light) !important;\n  background-color: var(--dark) !important;\n}\n.ace_gutter {\n  border-radius: 0 0 0 3px;\n  color: var(--lighter) !important;\n  background-color: var(--darken) !important;\n  box-shadow: 1px 0 var(--darker);\n}\n.ace_gutter-cell {\n  background-color: var(--t) !important;\n}\n.ace_gutter + .ace_scroller {\n  border-radius: 0 0 3px 0;\n}\n.ace_gutter-active-line,\n.ace_active-line {\n  background-color: var(--darken) !important;\n}\n.ace_selected-word,\n.ace_selection {\n  background-color: var(--blue) !important;\n  opacity: 0.3;\n}\n.ace_cursor {\n  color: var(--accent) !important;\n}\n.ace_indent-guide {\n  background: none;\n  box-shadow: inset -1px 0 var(--darker);\n}\n.ace_print-margin {\n  background-color: var(--darker) !important;\n}\n.ace_search {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  box-shadow: var(--bshadow);\n}\n.ace_search_form,\n.ace_search_field {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.ace_search [action] {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.ace_search_options {\n  margin: 4px 0 0 -2px;\n  text-align: left;\n}\n.ace_search_options .ace_button {\n  padding: 4px;\n  border-radius: 3px;\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.ace_search_options .ace_button:hover,\n.ace_search_options .ace_button.checked {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.ace_scroller.ace_scroll-left {\n  box-shadow: inset 17px 0 16px -16px var(--shadow);\n}\n.ace_url {\n  color: var(--accent) !important;\n}\n.ace_list {\n  color: var(--magenta) !important;\n}\n.ace_name.ace_function {\n  color: var(--violet) !important;\n}\n.ace_line,\n.ace_constant,\n.ace_numeric {\n  color: var(--light) !important;\n}\n.file_type.ace_support,\n.file_function.ace_support {\n  color: var(--lighter) !important;\n}\n.ace_variable,\n.ace_string,\n.ace_comment {\n  color: var(--green) !important;\n}\n.ace_heading,\n.ace_storage,\n.ace_keyword,\n.ace_meta.ace_tag {\n  color: var(--blue) !important;\n}\n.labels-container,\n.milestones {\n  background-color: var(--darken) !important;\n}\n.manage-labels-list > li:not(.empty-message):not(.no-border),\n.milestones > ul > li:not(.empty-message):not(.no-border) {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n[data-page*=\"network:show\"] .row-content-block {\n  background-color: var(--t) !important;\n}\n[data-page*=\"network:show\"] .row-content-block + div {\n  padding: 0;\n}\n[data-page*=\"network:show\"] .project-network {\n  margin-top: 16px;\n  border-color: var(--darker) !important;\n  border-radius: 4px;\n}\n[data-page*=\"network:show\"] .project-network .controls {\n  border-radius: 3px 3px 0 0;\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n[data-page*=\"network:show\"] .project-network .controls input {\n  background-color: var(--dark) !important;\n}\n[data-page*=\"network:show\"] .project-network .network-graph {\n  background-color: var(--dark) !important;\n}\n[data-page*=\"network:show\"] text {\n  fill: var(--light) !important;\n}\n[data-page*=\"network:show\"] rect[fill=\"#222222\"] {\n  fill: var(--darken) !important;\n  stroke: var(--t) !important;\n}\n[data-page*=\"network:show\"] rect[fill=\"#444444\"] {\n  fill: var(--bb) !important;\n  stroke: var(--t) !important;\n}\n[data-page*=\"network:show\"] rect[transform=\"matrix(1,0,0,1,20,20)\"] {\n  fill: var(--darken) !important;\n  stroke: var(--darker) !important;\n}\n[data-page*=\"network:show\"] rect[style=\"fill-opacity: 0.5;\"],\n[data-page*=\"network:show\"] path[style=\"fill-opacity: 0.5;\"] {\n  fill: var(--accent) !important;\n}\n[data-page*=\"network:show\"] rect[style=\"fill-opacity: 0.5;\"] + text[style],\n[data-page*=\"network:show\"] path[style=\"fill-opacity: 0.5;\"] + text[style] {\n  fill: var(--white) !important;\n}\n[data-page*=\"network:show\"] rect[stroke=\"#cc7a7a\"],\n[data-page*=\"network:show\"] path[stroke=\"#cc7a7a\"] {\n  stroke: var(--light) !important;\n}\n[data-page*=\"network:show\"] rect[stroke=\"#cccccc\"],\n[data-page*=\"network:show\"] path[stroke=\"#cccccc\"] {\n  stroke: var(--lighter) !important;\n}\n[data-page*=\"network:show\"] rect[stroke=\"#cc0000\"],\n[data-page*=\"network:show\"] path[stroke=\"#cc0000\"] {\n  stroke: var(--red) !important;\n}\n[data-page*=\"network:show\"] rect[stroke=\"#00cc8f\"],\n[data-page*=\"network:show\"] path[stroke=\"#00cc8f\"] {\n  stroke: var(--cyan) !important;\n}\n[data-page*=\"network:show\"] rect[stroke=\"#5283cc\"],\n[data-page*=\"network:show\"] path[stroke=\"#5283cc\"] {\n  stroke: var(--blue) !important;\n}\n[data-page*=\"network:show\"] rect[stroke=\"#49cc29\"],\n[data-page*=\"network:show\"] path[stroke=\"#49cc29\"] {\n  stroke: var(--green) !important;\n}\n[data-page*=\"network:show\"] rect[stroke=\"#7a29cc\"],\n[data-page*=\"network:show\"] path[stroke=\"#7a29cc\"] {\n  stroke: var(--orange) !important;\n}\n[data-page*=\"network:show\"] rect[stroke=\"#ccc052\"],\n[data-page*=\"network:show\"] path[stroke=\"#ccc052\"] {\n  stroke: var(--yellow) !important;\n}\n[data-page*=\"network:show\"] rect[stroke=\"#cc007a\"],\n[data-page*=\"network:show\"] path[stroke=\"#cc007a\"] {\n  stroke: var(--violet) !important;\n}\n[data-page*=\"network:show\"] rect[stroke=\"#b8a3cc\"],\n[data-page*=\"network:show\"] path[stroke=\"#b8a3cc\"] {\n  stroke: var(--magenta) !important;\n}\n[data-page*=\"network:show\"] circle[fill=\"#cc7a7a\"] {\n  fill: var(--light) !important;\n}\n[data-page*=\"network:show\"] circle[fill=\"#cccccc\"] {\n  fill: var(--lighter) !important;\n}\n[data-page*=\"network:show\"] circle[fill=\"#cc0000\"] {\n  fill: var(--red) !important;\n}\n[data-page*=\"network:show\"] circle[fill=\"#00cc8f\"] {\n  fill: var(--cyan) !important;\n}\n[data-page*=\"network:show\"] circle[fill=\"#5283cc\"] {\n  fill: var(--blue) !important;\n}\n[data-page*=\"network:show\"] circle[fill=\"#49cc29\"] {\n  fill: var(--green) !important;\n}\n[data-page*=\"network:show\"] circle[fill=\"#7a29cc\"] {\n  fill: var(--orange) !important;\n}\n[data-page*=\"network:show\"] circle[fill=\"#ccc052\"] {\n  fill: var(--yellow) !important;\n}\n[data-page*=\"network:show\"] circle[fill=\"#cc007a\"] {\n  fill: var(--violet) !important;\n}\n[data-page*=\"network:show\"] circle[fill=\"#b8a3cc\"] {\n  fill: var(--magenta) !important;\n}\n[data-page*=\"network:show\"] [style*=\"Monaco\"] {\n  font-family: var(--mono-font) !important;\n}\n[data-page*=\"network:show\"] [class*=\"-chart\"] text tspan,\n[_echarts_instance_*=\"ec\"] text tspan,\n[data-page*=\"network:show\"] [class*=\"-chart\"] [fill=\"#2e2e2e\"],\n[_echarts_instance_*=\"ec\"] [fill=\"#2e2e2e\"] {\n  fill: var(--light);\n}\n[data-page*=\"network:show\"] [class*=\"-chart\"] [fill=\"#919191\"],\n[_echarts_instance_*=\"ec\"] [fill=\"#919191\"] {\n  fill: var(--lighter);\n}\n[data-page*=\"network:show\"] [class*=\"-chart\"] [fill=\"#dbdbdb\"],\n[_echarts_instance_*=\"ec\"] [fill=\"#dbdbdb\"] {\n  fill: var(--darker);\n}\n[data-page*=\"network:show\"] [class*=\"-chart\"] [fill=\"#dbdbdb\"],\n[_echarts_instance_*=\"ec\"] [fill=\"#dbdbdb\"] {\n  fill: var(--darker);\n}\n[data-page*=\"network:show\"] [class*=\"-chart\"] [stroke=\"#bfbfbf\"],\n[_echarts_instance_*=\"ec\"] [stroke=\"#bfbfbf\"] {\n  stroke: var(--darker);\n}\n[data-page*=\"network:show\"] [class*=\"-chart\"] .gl-series-label,\n[_echarts_instance_*=\"ec\"] .gl-series-label {\n  color: var(--light) !important;\n}\n[data-page*=\"network:show\"] [class*=\"-chart\"] .gl-legend-series,\n[_echarts_instance_*=\"ec\"] .gl-legend-series {\n  color: var(--lighter) !important;\n}\n.issues-analytics-legend {\n  color: var(--lighter) !important;\n}\n#cycle-analytics h4 {\n  color: var(--light) !important;\n}\n#cycle-analytics .empty-stage,\n#cycle-analytics .no-access-stage {\n  color: var(--lighter) !important;\n}\n#cycle-analytics .card-header {\n  border-bottom: 1px solid var(--darker) !important;\n}\n#cycle-analytics .stage-nav {\n  margin-top: 4px;\n}\n#cycle-analytics .stage-nav-item {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--bb) !important;\n}\n#cycle-analytics .stage-nav-item.active {\n  border-color: var(--accent) !important;\n  background-color: var(--darken) !important;\n  box-shadow: inset 4px 0 var(--accent) !important;\n}\n#cycle-analytics .stage-nav-item:hover:not(.active) {\n  background-color: var(--darken) !important;\n  box-shadow: none !important;\n}\n#cycle-analytics .stage-nav-item .stage-empty,\n#cycle-analytics .stage-nav-item .not-available {\n  color: var(--lighter) !important;\n}\n#cycle-analytics .stage-event-item {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n}\n#cycle-analytics .stage-event-item .total-time,\n#cycle-analytics .stage-event-item .total-time span {\n  color: var(--lighter) !important;\n}\n#cycle-analytics .stage-event-item .issue-date,\n#cycle-analytics .stage-event-item .build-date {\n  color: var(--lighter) !important;\n}\n#cycle-analytics .stage-event-item .issue-author-link,\n#cycle-analytics .stage-event-item .issue-title,\n#cycle-analytics .stage-event-item .issue-link {\n  color: var(--light) !important;\n}\n.dashboard-card-header-failed,\n.dashboard-card-footer-failed {\n  background-color: var(--red-darken) !important;\n}\n.dashboard-card-body-failed {\n  background-color: var(--red-darker) !important;\n}\n.dashboard-card-body .gl-link {\n  color: var(--light) !important;\n}\n.dashboard-card-body .text-secondary {\n  overflow: hidden;\n  white-space: nowrap;\n  text-overflow: ellipsis;\n}\n.dashboard-card-body .ci-table {\n  margin-top: 0 !important;\n  border-radius: 0px !important;\n  border-color: var(--t) !important;\n  background-color: var(--t) !important;\n}\n[data-page^=\"snippets:\"] .snippet-header h2 {\n  color: var(--light) !important;\n}\n[data-page^=\"snippets:\"] .file-holder pre.code.highlight {\n  background-color: var(--dark) !important;\n}\n[data-page^=\"snippets:\"] .row-content-block.content-component-block {\n  background-color: var(--t) !important;\n}\n.search-results-row {\n  border-color: var(--darker) !important;\n}\n.search-results-row .author {\n  color: var(--accent) !important;\n}\n.search-results-row pre.code {\n  border-radius: 4px;\n}\n.search-results .blob-result {\n  margin: 16px 0;\n}\n.search-results .code.highlight.white {\n  background-color: var(--darken) !important;\n}\n.search-results .search-result-row {\n  border-color: var(--darker) !important;\n}\n.ide {\n  --ide-link-color: var(--accent);\n  --ide-text-color: var(--light);\n  --ide-input-color: var(--light);\n  --ide-border-color: var(--dark);\n  --ide-input-background: var(--darken);\n  --ide-text-color-secondary: var(--lighter);\n  --ide-highlight-background: var(--darken);\n  --ide-animation-gradient-1: var(--darker);\n  --ide-animation-gradient-2: var(--darken);\n  --ide-dropdown-hover-background: var(--darker);\n  --ide-dropdown-btn-hover-border: var(--darker);\n  --ide-dropdown-btn-hover-background: var(--darken);\n}\n.ide-view {\n  color: var(--light) !important;\n}\n.ide .sidebar-context-title {\n  color: var(--light) !important;\n}\n.ide .avatar-container {\n  background-color: var(--t) !important;\n}\n.ide-activity-bar svg.s16 {\n  fill: var(--lighter) !important;\n}\n.ide-activity-bar button.active {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n  box-shadow: inset 3px 0 var(--accent) !important;\n}\n.ide-activity-bar button.active.is-right {\n  box-shadow: inset -3px 0 var(--accent) !important;\n}\n.ide-activity-bar button.active::after {\n  background-color: var(--t) !important;\n}\n.ide-activity-bar button.active svg.s16 {\n  fill: var(--light) !important;\n}\n.ide .ide-right-sidebar .ide-activity-bar {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n}\n.ide .ide-right-sidebar .ide-pipeline-header {\n  margin: 0;\n  padding: 16px !important;\n}\n.ide .ide-right-sidebar .multi-file-commit-panel-inner {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.ide .ide-right-sidebar .multi-file-commit-panel .card-body {\n  background-color: var(--bb) !important;\n}\n.ide-sidebar-link:hover {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.ide .multi-file-commit-panel {\n  background-color: var(--darken) !important;\n}\n.ide .multi-file-commit-panel .ic-git-merge {\n  color: var(--lighter) !important;\n}\n.ide .multi-file-commit-panel-header,\n.ide .multi-file-commit-form > form {\n  border-color: var(--darker) !important;\n}\n.ide .multi-file-commit-panel-header .ide-staged-action-btn {\n  background-color: var(--t) !important;\n}\n.ide .multi-file-commit-list-path:hover,\n.ide .multi-file-commit-list-path:focus {\n  background-color: var(--darken) !important;\n}\n.ide .multi-file-commit-list-path.is-active {\n  background-color: var(--darker) !important;\n}\n.ide .multi-file-edit-pane {\n  border-color: var(--darker) !important;\n}\n.ide .multi-file-commit-panel-inner-content {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.ide .multi-file-commit-form {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.ide .multi-file-commit-form > .commit-form-compact {\n  border-color: var(--darker) !important;\n}\n.ide .multi-file-edit-pane {\n  border-color: var(--darker) !important;\n}\n.ide .multi-file-edit-pane-content > .ide-mode-tabs {\n  border-color: var(--darker) !important;\n}\n.ide .multi-file-tabs {\n  background-color: var(--darken) !important;\n  box-shadow: none;\n}\n.ide .multi-file-tabs li {\n  color: var(--lighter) !important;\n  border-color: var(--darken) !important;\n  background-color: var(--darken) !important;\n}\n.ide .multi-file-tabs li:hover {\n  background-color: rgba(136, 136, 136, 0.082) !important;\n}\n.ide .multi-file-tabs li.active {\n  color: var(--light) !important;\n  border-color: var(--dark) !important;\n  background-color: var(--dark) !important;\n}\n.ide .multi-file-tab-close {\n  color: var(--lighter) !important;\n}\n.ide .multi-file-tab-close:not([disabled]):hover {\n  background-color: var(--darker) !important;\n}\n.ide-file-templates {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.ide-file-templates [class*=\"menu-toggle\"] {\n  background-color: var(--dark) !important;\n}\n.ide-file-list .ide-tree-header {\n  border-color: var(--darker) !important;\n}\n.ide-file-list .ide-tree-body .file-row:hover,\n.ide-file-list .ide-tree-body .file-row.is-active {\n  background-color: var(--darken) !important;\n}\n.ide-file-list .ide-tree-body .ide-entry-dropdown-toggle {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.ide-review-sub-header {\n  color: var(--lighter) !important;\n}\n.ide-review-header a {\n  color: var(--accent) !important;\n}\n.ide-commit-editor-header {\n  background-color: var(--darken) !important;\n  box-shadow: inset 0 -1px var(--darker);\n}\n.ide-commit-list-container.is-first {\n  border-color: var(--darker) !important;\n}\n.ide-commit-message-field {\n  background-color: var(--t) !important;\n}\n.ide-commit-message-field .md-area {\n  background-color: var(--darken) !important;\n}\n.ide-commit-message-textarea-container .note-textarea {\n  font-family: var(--mono-font) !important;\n  color: var(--light) !important;\n}\n.ide-nav-form li a:not(.active) {\n  background-color: var(--t) !important;\n}\n.ide-nav-form ul > li {\n  width: 100%;\n}\n.ide-tree-header {\n  border-color: var(--darker) !important;\n}\n.ide-tree-header svg {\n  color: var(--lighter) !important;\n}\n.ide-tree-header svg:hover {\n  color: var(--accent) !important;\n}\n.ide .drag-handle:hover {\n  background-color: var(--darker) !important;\n}\n.ide .drag-handle.is-dragging {\n  background-color: var(--accent) !important;\n}\n.ide-status-bar {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.ide-status-bar .ide-status-avatar[src*=\"png;base64\"] {\n  filter: invert(0.8);\n}\n.ide .diffOverview {\n  border-color: var(--darker) !important;\n  background-color: var(--bb) !important;\n}\n.ide .diffOverviewRuler {\n  filter: invert(0.8) hue-rotate(180deg);\n}\n.monaco-editor {\n  color: var(--light) !important;\n  background-color: var(--dark) !important;\n}\n.monaco-editor .margin {\n  border-color: var(--darker) !important;\n  background-color: var(--t) !important;\n}\n.monaco-editor .margin * {\n  font-family: var(--mono-font) !important;\n}\n.monaco-editor .line-numbers {\n  opacity: 0.6;\n  color: var(--lighter) !important;\n}\n.monaco-editor .current-line {\n  background-color: var(--darken) !important;\n}\n.monaco-editor .current-line ~ .line-numbers {\n  opacity: 1;\n  color: var(--light) !important;\n}\n.monaco-editor-background,\n.monaco-editor .inputarea.ime-input {\n  background-color: var(--t) !important;\n}\n.monaco-editor .cigr,\n.monaco-editor .cigra {\n  box-shadow: inset 1px 0 var(--darker) !important;\n}\n.monaco-editor .view-overlays .current-line {\n  border-color: var(--t) !important;\n  background-color: var(--darken) !important;\n}\n.monaco-editor .cursor {\n  color: var(--dark) !important;\n  border-color: var(--dark) !important;\n  background-color: var(--light) !important;\n}\n.monaco-editor .scroll-decoration {\n  box-shadow: inset 0 6px 6px -6px var(--dark);\n}\n.monaco-editor .mtk1 {\n  color: var(--light) !important;\n}\n.monaco-editor .mtk3,\n.monaco-editor .mtk10 {\n  color: var(--lighter) !important;\n}\n.monaco-editor .mtk5,\n.monaco-editor .mtk6,\n.monaco-editor .mtk23 {\n  color: var(--blue) !important;\n}\n.monaco-editor .mtk7 {\n  color: var(--cyan) !important;\n}\n.monaco-editor .mtk8 {\n  color: var(--green) !important;\n}\n.monaco-editor .mtk11 {\n  color: var(--orange) !important;\n}\n.monaco-editor .mtk4,\n.monaco-editor .mtk15,\n.monaco-editor .mtk20 {\n  color: var(--red) !important;\n}\n.monaco-editor .mtk14,\n.monaco-editor .mtk20 {\n  color: var(--magenta) !important;\n}\n.monaco-editor .mtk12,\n.monaco-editor .mtk22,\n.monaco-editor .mtk23 {\n  color: var(--cyan) !important;\n}\n.monaco-editor .lines-content .cursor {\n  color: var(--light) !important;\n  border-color: var(--accent) !important;\n  background-color: var(--accent) !important;\n}\n.monaco-editor .lines-content .current-line {\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n}\n.monaco-editor .selected-text {\n  background-color: var(--blue) !important;\n}\n.monaco-editor .selectionHighlight {\n  background-color: var(--darker) !important;\n}\n.monaco-editor .lines-content [class*=\"cigr\"] {\n  box-shadow: inset 1px 0 var(--lighter);\n}\n.monaco-editor .monaco-quick-open-widget {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n  box-shadow: 0 0 0 1px var(--darker), var(--bshadow) !important;\n}\n.monaco-editor .monaco-quick-open-widget .results-group {\n  color: var(--lighter) !important;\n}\n.monaco-editor .monaco-quick-open-widget .label-name {\n  color: var(--light) !important;\n}\n.monaco-editor .monaco-quick-open-widget .label-name .highlight {\n  color: var(--accent) !important;\n}\n.monaco-editor .monaco-quick-open-widget .monaco-tree-row:hover,\n.monaco-editor .monaco-quick-open-widget .monaco-tree-row.focused {\n  color: var(--accent) !important;\n  background-color: var(--darker) !important;\n}\n.monaco-editor .monaco-inputbox {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.monaco-editor .monaco-inputbox input {\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n}\n.monaco-editor .find-widget {\n  color: var(--light) !important;\n  border-color: var(--accent) !important;\n  background-color: var(--darken) !important;\n  box-shadow: var(--bshadow);\n}\n.monaco-editor .find-widget .button,\n.monaco-editor .find-widget .label {\n  filter: invert(1) hue-rotate(180deg);\n}\n.monaco-editor .monaco-sash {\n  background-color: var(--darker) !important;\n}\n.monaco-editor .find-widget textarea {\n  color: var(--light) !important;\n  background-color: var(--dark) !important;\n}\n.monaco-editor .accessibilityHelpWidget {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  box-shadow: 0 0 0 1px var(--darker), var(--bshadow);\n}\n.monaco-menu-container .monaco-scrollable-element {\n  box-shadow: var(--bshadow) !important;\n}\n.monaco-menu-container .monaco-action-bar {\n  background-color: var(--dark) !important;\n  box-shadow: inset 0 0 0 1px var(--darker), var(--bshadow) !important;\n}\n.monaco-menu-container .monaco-action-bar .action-item > a {\n  color: var(--lighter) !important;\n  background-color: var(--t) !important;\n}\n.monaco-menu-container .monaco-action-bar .action-item.focused a {\n  color: var(--light) !important;\n  background-color: var(--darken) !important;\n}\n.monaco-menu-container .monaco-action-bar .action-item.disabled a {\n  border-color: var(--darker) !important;\n}\n.monaco-editor .scroll-decoration {\n  box-shadow: inset var(--bshadow) !important;\n}\n.monaco-editor .tokens-inspect-widget {\n  color: var(--light) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.monaco-editor .findOptionsWidget {\n  border-color: var(--darker) !important;\n  background-color: var(--darker) !important;\n  box-shadow: var(--bshadow);\n}\n.monaco-editor .monaco-editor-hover {\n  border-color: var(--darker) !important;\n  background-color: var(--dark) !important;\n}\n.monaco-editor .cslr.selected-text {\n  background-color: var(--darker);\n}\n.monaco-editor .selectionHighlight {\n  background-color: var(--darker) !important;\n}\n.monaco-editor .tree {\n  color: var(--lighter) !important;\n  border-color: var(--darker) !important;\n  background-color: var(--darken) !important;\n  box-shadow: var(--bshadow);\n}\n.monaco-editor .tree .focused {\n  color: var(--light) !important;\n  background-color: var(--darker) !important;\n}\n.monaco-editor .dirty-diff-added {\n  background-color: var(--green) !important;\n}\n.monaco-editor .dirty-diff-modified {\n  background-color: var(--blue) !important;\n}\n.monaco-editor .inline-deleted-margin-view-zone,\n.monaco-editor .char-delete {\n  background-color: rgba(255, 0, 0, 0.314) !important;\n}\n.monaco-editor .inline-added-margin-view-zone,\n.monaco-editor .char-insert {\n  background-color: rgba(0, 255, 0, 0.314) !important;\n}\n.monaco-editor .line-delete {\n  color: var(--white) !important;\n  border-color: var(--shadow) !important;\n  background-color: rgba(117, 0, 0, 0.65) !important;\n}\n.monaco-editor .line-insert {\n  color: var(--white) !important;\n  border-color: var(--shadow) !important;\n  background-color: rgba(79, 88, 0, 0.75) !important;\n}\n.monaco-editor .current-line-margin {\n  border-color: var(--darker) !important;\n  background-color: var(--darker) !important;\n}\n.hover-overlay hr {\n  background-color: var(--darker) !important;\n}\n.hover-overlay__contents {\n  border-color: var(--darker) !important;\n}\n.hover-overlay--gitlab .hljs-comment,\n.hover-overlay--gitlab .hljs-quote {\n  color: var(--lighter) !important;\n}\n.hover-overlay--gitlab .hljs-section,\n.hover-overlay--gitlab .hljs-selector-id,\n.hover-overlay--gitlab .hljs-title {\n  color: var(--light) !important;\n}\n.hover-overlay .loading-spinner {\n  border-color: var(--darker) !important;\n  border-top-color: var(--accent) !important;\n}\nline[id*=\"dag-\"][stroke=\"#f2f2f2\"] {\n  stroke: #808080 !important;\n}\n.devops-card-high .board-card-score-big {\n  background-color: var(--success) !important;\n}\n.devops-card-low .board-card-score-big {\n  background-color: var(--red) !important;\n}\n.devops-step {\n  background-color: var(--darken) !important;\n}\n.board-card-score-value {\n  color: var(--lighter) !important;\n}\n\n/****************************** GITLAB-DARK-END ******************************/\n\n/*Gitlab Tweaks*/\nhtml {\n  scrollbar-color: rgba(136, 136, 136, 0.188) rgba(136, 136, 136, 0.082) !important;\n}\n::-webkit-scrollbar {\n  width: 8px !important;\n  height: 8px !important;\n}\n::-webkit-scrollbar-thumb {\n  background-color: rgba(130, 130, 130, 0.5) !important;\n  border-radius: 10px !important;\n  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3) !important;\n}\n::-webkit-scrollbar-track {\n  background-color: var(--darken) !important;\n}\n::-webkit-scrollbar-corner {\n  background-color: var(--darken) !important;\n}\n.nav-sidebar-inner-scroll {\n  overflow: hidden !important;\n}\n.nav-sidebar-inner-scroll:hover {\n  overflow: auto !important;\n}\n\n/*SpanTree Styles*/\n.spantree-pane-header {\n  background-color: rgb(38, 38, 38) !important;\n  height: 50px !important;\n}\n.spantree-tree-list {\n  height: calc(100vh - 50px) !important;\n}\n.spantree-tree-list::-webkit-scrollbar-thumb {\n  background-color: rgba(130, 130, 130, 0.5) !important;\n}\n.spantree-tree-list::-webkit-scrollbar-track {\n  background-color: var(--darken) !important;\n}\n.spantree-tree-list::-webkit-scrollbar-corner {\n  background-color: var(--darken) !important;\n}\n.spantree-backdrop {\n  background-color: rgba(0, 0, 0, 0.51);\n}\n.spantree-search {\n  background-color: var(--darken) !important;\n  border: 1px solid darkslategrey !important;\n  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5) !important;\n}\n.spantree-searchbar input {\n  color: lightgrey;\n  background: var(--dark) !important;\n  border: 1px solid darkslategrey !important;\n}\n.spantree-searchbar input:focus {\n  border: 1px solid rgb(77, 61, 146) !important;\n  outline: none !important;\n  box-shadow: 0px 0px 10px rgba(77, 61, 146, 0.25) !important;\n}\n.spantree-search-result::-webkit-scrollbar {\n  height: 0px !important;\n}\n.spantree-result-active {\n  background: var(--darker) !important;\n}\n.spantree-in-fzy {\n  color: rgb(146, 122, 249) !important;\n}\n\n.spantree-search-help {\n  border-top: 1px solid darkslategray !important;\n}\n"
  },
  {
    "path": "content/src/scripts/utils/backgroundColor.js",
    "content": "const getHeaderBackgroundColor = (options) => {\n  if (\"auto-theme\" in options && options[\"auto-theme\"]) {\n    const fetchedValue = window\n      .getComputedStyle(document.querySelector(\"header\"))\n      .getPropertyValue(\"background-color\");\n    return fetchedValue && fetchedValue.length > 0\n      ? { backgroundColor: fetchedValue }\n      : {};\n  }\n  return {};\n};\n\nexport default getHeaderBackgroundColor;\n"
  },
  {
    "path": "content/src/scripts/utils/browser.js",
    "content": "const isWindowObject = (value) => {\n  return value != null && typeof value === \"object\" && \"setInterval\" in value;\n};\n\nconst freeSelf = isWindowObject(typeof self == \"object\" && self) && self;\n\nconst navigator = freeSelf && freeSelf.navigator;\nconst userAgent = ((navigator && navigator.userAgent) || \"\").toLowerCase();\nconst vendor = ((navigator && navigator.vendor) || \"\").toLowerCase();\n\nexport const browserKey = () => {\n  if (isChrome()) return \"chrome\";\n  if (isFirefox()) return \"moz\";\n  return \"chrome\";\n};\n\nconst isChrome = () => {\n  const match = /google inc/.test(vendor)\n    ? userAgent.match(/(?:chrome|crios)\\/(\\d+)/)\n    : null;\n  return match !== null && !isOpera();\n};\n\nconst isFirefox = () => {\n  const match = userAgent.match(/(?:firefox|fxios)\\/(\\d+)/);\n  return match !== null;\n};\n\nconst isOpera = () => {\n  const match = userAgent.match(/(?:^opera.+?version|opr)\\/(\\d+)/);\n  return match !== null;\n};\n"
  },
  {
    "path": "content/src/scripts/utils/file-icons.js",
    "content": "/**\n * ╭─╮ ┬ ┬   ╭─╮    ┬ ╭─╮ ╭─╮ ╭╮╭ ╭─╮\n * ├┤  │ │   ├┤     │ │   │ │ │││ ╰─╮\n * ┴   ┴ ┴─╯ ╰─╯    ┴ ╰─╯ ╰─╯ ╯╰╯ ╰─╯\n * File specific icons for the browser\n * from Atom File-icons, https://github.com/file-icons/atom\n *\n * @link      https://github.com/file-icons/atom\n * @author    Daniel Brooker, <dan@nocturnalcode.com>\n * @author    Adnan M.Sagar, <adnan@websemantics.ca>\n */\n\nconst fileIcons = () => {\n  var cache = {\n    directoryName: {},\n    directoryPath: {},\n    fileName: {},\n    filePath: {},\n    interpreter: {},\n    scope: {},\n    language: {},\n    signature: {},\n  };\n\n  /* ---------------------------------------------------------------------------\n   * Icon\n   * ------------------------------------------------------------------------- */\n\n  /**\n   * Create Icon instance\n   *\n   * @param {Number}  index - Index of the icon's appearance in the enclosing array\n   * @param {Array}   data - icon's data points that contains the following,\n   *\n   * @property {Icon} icon - Icon's CSS class (e.g., \"js-icon\")\n   * @property {Array} colour - Icon's colour classes\n   * @property {RegExp} match - Pattern for matching names or pathnames\n   * @property {Numeric} [priority=1] -  priority that determined icon's order of appearance\n   * @property {Boolean} [matchPath=false] - Match against system path instead of basename\n   * @property {RegExp} [interpreter=null] -  to match executable names in hashbangs\n   * @property {RegExp} [scope=null] -  to match grammar scope-names\n   * @property {RegExp} [lang=null] -  to match alias patterns\n   * @property {RegExp} [sig=null] -  to match file signatures\n   *\n   * @constructor\n   */\n\n  var Icon = function (index, data) {\n    this.index = index;\n    this.icon = data[0];\n    this.colour = data[1];\n    this.match = data[2];\n    this.priority = data[3] || 1;\n    this.matchPath = data[4] || false;\n    this.interpreter = data[5] || null;\n    this.scope = data[6] || null;\n    this.lang = data[7] || null;\n    this.signature = data[8] || null;\n  };\n\n  /**\n   * Return the CSS classes for displaying the icon.\n   *\n   * @param {Number|null} colourMode\n   * @param {Boolean} asArray\n   * @return {String}\n   */\n\n  Icon.prototype.getClass = function (colourMode, asArray) {\n    colourMode = colourMode !== undefined ? colourMode : null;\n    asArray = asArray !== undefined ? asArray : false;\n\n    // No colour needed or available\n    if (colourMode === null || this.colour[0] === null)\n      return asArray ? [this.icon] : this.icon;\n\n    return asArray\n      ? [this.icon, this.colour[colourMode]]\n      : this.icon + \" \" + this.colour[colourMode];\n  };\n\n  /* ---------------------------------------------------------------------------\n   * IconTables\n   * ------------------------------------------------------------------------- */\n\n  /**\n   * Create IconTables instance\n   *\n   * @param {Array}   data - Icons database\n   *\n   * @property {Array} directoryIcons - Icons to match directory-type resources.\n   * @property {Array} fileIcons      - Icons to match file resources.\n   * @property {Icon}  binaryIcon     - Icon for binary files.\n   * @property {Icon}  executableIcon - Icon for executables.\n   * @class\n   * @constructor\n   */\n\n  var IconTables = function (data) {\n    this.directoryIcons = this.read(data[0]);\n    this.fileIcons = this.read(data[1]);\n    this.binaryIcon = this.matchScope(\"source.asm\");\n    this.executableIcon = this.matchInterpreter(\"bash\");\n  };\n\n  /**\n   * Populate icon-lists from a icons data table.\n   *\n   * @param {Array} table\n   * @return {Object}\n   * @private\n   */\n\n  IconTables.prototype.read = function (table) {\n    var icons = table[0];\n    var indexes = table[1];\n\n    icons = icons.map(function (icon, index) {\n      return new Icon(index, icon);\n    });\n\n    // Dereference Icon instances from their stored offset\n    indexes = indexes.map(function (index) {\n      return index.map(function (offset) {\n        return icons[offset];\n      });\n    });\n\n    return {\n      byName: icons,\n      byInterpreter: indexes[0],\n      byLanguage: indexes[1],\n      byPath: indexes[2],\n      byScope: indexes[3],\n      bySignature: indexes[4],\n    };\n  };\n\n  /**\n   * Match an icon using a resource's basename.\n   *\n   * @param {String} name - Name of filesystem entity\n   * @param {Boolean} [directory=false] - Match folders instead of files\n   * @return {Icon}\n   */\n  IconTables.prototype.matchName = function (name, directory) {\n    directory = directory !== undefined ? directory : false;\n    var cachedIcons = directory ? this.cache.directoryName : cache.fileName;\n    var icons = directory ? this.directoryIcons.byName : this.fileIcons.byName;\n\n    if (cachedIcons[name]) {\n      return cachedIcons[name];\n    }\n\n    for (var i in icons) {\n      var icon = icons[i];\n      if (icon.match.test(name)) {\n        return (cachedIcons[name] = icon);\n      }\n    }\n    return null;\n  };\n\n  /**\n   * Match an icon using a resource's system path.\n   *\n   * @param {String} path - Full pathname to check\n   * @param {Boolean} [directory=false] - Match folders instead of files\n   * @return {Icon}\n   */\n  IconTables.prototype.matchPath = function (path, directory) {\n    directory = directory !== undefined ? directory : false;\n    var cachedIcons = directory ? cache.directoryName : cache.fileName;\n    var icons = directory ? this.directoryIcons.byPath : this.fileIcons.byPath;\n\n    if (cachedIcons[name]) {\n      return cachedIcons[name];\n    }\n\n    for (var i in icons) {\n      var icon = icons[i];\n      if (icon.match.test(path)) {\n        return (cachedIcons[path] = icon);\n      }\n    }\n    return null;\n  };\n\n  /**\n   * Match an icon using the human-readable form of its related language.\n   *\n   * Typically used for matching modelines and Linguist-language attributes.\n   *\n   * @example IconTables.matchLanguage(\"JavaScript\")\n   * @param {String} name - Name/alias of language\n   * @return {Icon}\n   */\n  IconTables.prototype.matchLanguage = function (name) {\n    if (cache.language[name]) {\n      return cache.language[name];\n    }\n\n    for (var i in this.fileIcons.byLanguage) {\n      var icon = this.fileIcons.byLanguage[i];\n      if (icon.lang.test(name)) {\n        return (cache.language[name] = icon);\n      }\n    }\n    return null;\n  };\n\n  /**\n   * Match an icon using the grammar-scope assigned to it.\n   *\n   * @example IconTables.matchScope(\"source.js\")\n   * @param {String} name\n   * @return {Icon}\n   */\n  IconTables.prototype.matchScope = function (name) {\n    if (cache.scope[name]) {\n      return cache.scope[name];\n    }\n\n    for (var i in this.fileIcons.byScope) {\n      var icon = this.fileIcons.byScope[i];\n      if (icon.scope.test(name)) {\n        return (cache.scope[name] = icon);\n      }\n    }\n    return null;\n  };\n\n  /**\n   * Match an icon using the name of an interpreter which executes its language.\n   *\n   * Used for matching interpreter directives (a.k.a., \"hashbangs\").\n   *\n   * @example IconTables.matchInterpreter(\"bash\")\n   * @param {String} name\n   * @return {Icon}\n   */\n  IconTables.prototype.matchInterpreter = function (name) {\n    if (cache.interpreter[name]) {\n      return cache.interpreter[name];\n    }\n\n    for (var i in this.fileIcons.byInterpreter) {\n      var icon = this.fileIcons.byInterpreter[i];\n      if (icon.interpreter.test(name)) {\n        return (cache.interpreter[name] = icon);\n      }\n    }\n    return null;\n  };\n\n  /**\n   * Match an icon using a resource's file signature.\n   *\n   * @example IconTables.matchSignature(\"\\x1F\\x8B\")\n   * @param {String} data\n   * @return {Icon}\n   */\n  IconTables.prototype.matchSignature = function (data) {};\n\n  /* ---------------------------------------------------------------------------\n   * Icons Database\n   * ------------------------------------------------------------------------- */\n\n  var icondb = [\n    [\n      [\n        [\"arttext-icon\", [\"dark-purple\", \"dark-purple\"], /\\.artx$/i],\n        [\"atom-icon\", [\"dark-green\", \"dark-green\"], /^\\.atom$/],\n        [\n          \"bower-icon\",\n          [\"medium-yellow\", \"medium-orange\"],\n          /^bower[-_]components$/,\n        ],\n        [\n          \"dropbox-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /^(?:Dropbox|\\.dropbox\\.cache)$/,\n        ],\n        [\"emacs-icon\", [\"medium-purple\", \"medium-purple\"], /^\\.emacs\\.d$/],\n        [\"dylib-icon\", [null, null], /\\.framework$/i],\n        [\"git-icon\", [\"medium-red\", \"medium-red\"], /\\.git$/],\n        [\"github-icon\", [null, null], /^\\.github$/],\n        [\"meteor-icon\", [\"dark-orange\", \"dark-orange\"], /^\\.meteor$/],\n        [\"node-icon\", [\"medium-green\", \"medium-green\"], /^node_modules$/],\n        [\"package-icon\", [null, null], /^\\.bundle$/i],\n        [\"svn-icon\", [null, null], /^\\.svn$/i],\n        [\"textmate-icon\", [null, null], /\\.tmBundle$/i],\n        [\"vagrant-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.vagrant$/i],\n        [\"appstore-icon\", [null, null], /\\.xcodeproj$/i],\n      ],\n      [[], [], [], [], []],\n    ],\n    [\n      [\n        [\"binary-icon\", [\"dark-green\", \"dark-green\"], /\\.swp$/i, 4],\n        [\"link-icon\", [\"medium-blue\", \"medium-blue\"], /\\.lnk$/i, 3],\n        [\n          \"angular-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^angular[^.]*\\.js$/i,\n          2,\n        ],\n        [\"ant-icon\", [\"dark-pink\", \"dark-pink\"], /^ant\\.xml$|\\.ant$/i, 2],\n        [\n          \"apache-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^(?:apache2?|httpd).conf$/i,\n          2,\n        ],\n        [\"apache-icon\", [\"dark-green\", \"dark-green\"], /\\.vhost$/i, 2],\n        [\"apache-icon\", [\"medium-green\", \"medium-green\"], /\\.thrift$/i, 2],\n        [\n          \"appcelerator-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^appcelerator\\.js$/i,\n          2,\n        ],\n        [\n          \"appveyor-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /^appveyor\\.yml$/i,\n          2,\n        ],\n        [\"archlinux-icon\", [\"dark-purple\", \"dark-purple\"], /^\\.install$/, 2],\n        [\"archlinux-icon\", [\"dark-maroon\", \"dark-maroon\"], /^\\.SRCINFO$/, 2],\n        [\"archlinux-icon\", [\"dark-yellow\", \"dark-yellow\"], /^pacman\\.conf$/, 2],\n        [\n          \"archlinux-icon\",\n          [\"light-yellow\", \"light-yellow\"],\n          /^pamac\\.conf$/,\n          2,\n        ],\n        [\"archlinux-icon\", [\"dark-cyan\", \"dark-cyan\"], /^PKGBUILD$/, 2],\n        [\"archlinux-icon\", [\"light-yellow\", \"light-yellow\"], /yaourtrc$/i, 2],\n        [\n          \"backbone-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /^backbone(?:[-.]min|dev)?\\.js$/i,\n          2,\n        ],\n        [\"boot-icon\", [\"medium-green\", \"dark-green\"], /^Makefile\\.boot$/i, 2],\n        [\n          \"bootstrap-icon\",\n          [\"medium-yellow\", \"dark-yellow\"],\n          /^(?:custom\\.)?bootstrap\\S*\\.js$/i,\n          2,\n        ],\n        [\n          \"bootstrap-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /^(?:custom\\.)?bootstrap\\S*\\.css$/i,\n          2,\n        ],\n        [\n          \"bootstrap-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /^(?:custom\\.)?bootstrap\\S*\\.less$/i,\n          2,\n        ],\n        [\n          \"bootstrap-icon\",\n          [\"light-pink\", \"light-pink\"],\n          /^(?:custom\\.)?bootstrap\\S*\\.scss$/i,\n          2,\n        ],\n        [\n          \"bootstrap-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /^(?:custom\\.)?bootstrap\\S*\\.styl$/i,\n          2,\n        ],\n        [\n          \"bower-icon\",\n          [\"medium-yellow\", \"medium-orange\"],\n          /^(?:\\.bowerrc|bower\\.json|Bowerfile)$/i,\n          2,\n        ],\n        [\"brakeman-icon\", [\"medium-red\", \"medium-red\"], /brakeman\\.yml$/i, 2],\n        [\"brakeman-icon\", [\"dark-red\", \"dark-red\"], /^brakeman\\.ignore$/i, 2],\n        [\"broccoli-icon\", [\"medium-green\", \"medium-green\"], /^Brocfile\\./i, 2],\n        [\"package-icon\", [\"light-orange\", \"light-orange\"], /Cargo\\.toml$/i, 2],\n        [\"package-icon\", [\"dark-orange\", \"dark-orange\"], /Cargo\\.lock$/i, 2],\n        [\n          \"chai-icon\",\n          [\"medium-red\", \"dark-red\"],\n          /^chai\\.(?:[jt]sx?|es6?|coffee)$/i,\n          2,\n        ],\n        [\"chartjs-icon\", [\"dark-pink\", \"dark-pink\"], /^Chart\\.js$/i, 2],\n        [\n          \"circleci-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /^circle\\.yml$/i,\n          2,\n        ],\n        [\n          \"cc-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.codeclimate\\.yml$/i,\n          2,\n        ],\n        [\"codecov-icon\", [\"dark-pink\", \"dark-pink\"], /^codecov\\.ya?ml$/i, 2],\n        [\"coffee-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.coffee\\.ecr$/i, 2],\n        [\"coffee-icon\", [\"medium-red\", \"medium-red\"], /\\.coffee\\.erb$/i, 2],\n        [\n          \"compass-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^_?(?:compass|lemonade)\\.scss$/i,\n          2,\n        ],\n        [\n          \"composer-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /^composer\\.(?:json|lock)$/i,\n          2,\n        ],\n        [\"composer-icon\", [\"dark-blue\", \"dark-blue\"], /^composer\\.phar$/i, 2],\n        [\n          \"cordova-icon\",\n          [\"light-blue\", \"light-blue\"],\n          /^cordova(?:[^.]*\\.|-(?:\\d\\.)+)js$/i,\n          2,\n        ],\n        [\n          \"d3-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /^d3(?:\\.v\\d+)?[^.]*\\.js$/i,\n          2,\n        ],\n        [\"database-icon\", [\"medium-red\", \"medium-red\"], /^METADATA\\.pb$/, 2],\n        [\n          \"database-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.git[\\/\\\\](?:.*[\\/\\\\])?(?:HEAD|ORIG_HEAD|packed-refs|logs[\\/\\\\](?:.+[\\/\\\\])?[^\\/\\\\]+)$/,\n          2,\n          true,\n        ],\n        [\n          \"docker-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /^(?:Dockerfile|docker-compose)|\\.docker(?:file|ignore)$/i,\n          2,\n          false,\n          ,\n          /\\.dockerfile$/i,\n          /^Docker$/i,\n        ],\n        [\n          \"docker-icon\",\n          [\"dark-orange\", \"dark-orange\"],\n          /^docker-sync\\.yml$/i,\n          2,\n        ],\n        [\"dojo-icon\", [\"light-red\", \"light-red\"], /^dojo\\.js$/i, 2],\n        [\n          \"ember-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^ember(?:\\.|(?:-[^.]+)?-(?:\\d+\\.)+(?:debug\\.)?)js$/i,\n          2,\n        ],\n        [\n          \"eslint-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.eslint(?:cache|ignore)$/i,\n          2,\n        ],\n        [\n          \"eslint-icon\",\n          [\"light-purple\", \"light-purple\"],\n          /\\.eslintrc(?:\\.(?:js|json|ya?ml))?$/i,\n          2,\n        ],\n        [\n          \"extjs-icon\",\n          [\"light-green\", \"light-green\"],\n          /\\bExtjs(?:-ext)?\\.js$/i,\n          2,\n        ],\n        [\"fabfile-icon\", [\"medium-blue\", \"medium-blue\"], /^fabfile\\.py$/i, 2],\n        [\n          \"fuelux-icon\",\n          [\"medium-orange\", \"dark-orange\"],\n          /^fuelux(?:\\.min)?\\.(?:css|js)$/i,\n          2,\n        ],\n        [\"gear-icon\", [\"medium-blue\", \"medium-blue\"], /\\.indent\\.pro$/i, 2],\n        [\n          \"grunt-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /gruntfile\\.js$/i,\n          2,\n        ],\n        [\n          \"grunt-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /gruntfile\\.coffee$/i,\n          2,\n        ],\n        [\n          \"gulp-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /gulpfile\\.js$|gulpfile\\.babel\\.js$/i,\n          2,\n        ],\n        [\n          \"gulp-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /gulpfile\\.coffee$/i,\n          2,\n        ],\n        [\"html5-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.html?\\.ecr$/i, 2],\n        [\n          \"html5-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.(?:html?\\.erb|rhtml)$/i,\n          2,\n          false,\n          ,\n          /\\.html\\.erb$/i,\n          /^HTML$/i,\n        ],\n        [\"ionic-icon\", [\"medium-blue\", \"medium-blue\"], /^ionic\\.project$/, 2],\n        [\"js-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.js\\.ecr$/i, 2],\n        [\"js-icon\", [\"medium-red\", \"medium-red\"], /\\.js\\.erb$/i, 2],\n        [\n          \"jquery-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /^jquery(?:[-.](?:min|latest|\\d\\.\\d+(?:\\.\\d+)?))*\\.(?:[jt]sx?|es6?|coffee|map)$/i,\n          2,\n        ],\n        [\n          \"jqueryui-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /^jquery(?:[-_.](?:ui[-_.](?:custom|dialog-?\\w*)|effects)(?:\\.[^.]*)?|[-.]?ui(?:-\\d\\.\\d+(?:\\.\\d+)?)?(?:\\.\\w+)?)(?:[-_.]?min|dev)?\\.(?:[jt]sx?|es6?|coffee|map|s?css|less|styl)$/i,\n          2,\n        ],\n        [\"karma-icon\", [\"medium-cyan\", \"medium-cyan\"], /^karma\\.conf\\.js$/i, 2],\n        [\n          \"karma-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /^karma\\.conf\\.coffee$/i,\n          2,\n        ],\n        [\n          \"knockout-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^knockout[-.](?:\\d+\\.){3}(?:debug\\.)?js$/i,\n          2,\n        ],\n        [\n          \"leaflet-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /^leaflet\\.(?:draw-src|draw|spin|coordinates-(?:\\d+\\.)\\d+\\.\\d+\\.src)\\.(?:js|css)$|^wicket-leaflet\\.js$/i,\n          2,\n        ],\n        [\"lein-icon\", [null, null], /project\\.clj$/i, 2],\n        [\n          \"manpage-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /^tmac\\.|^(?:mmn|mmt)$/i,\n          2,\n        ],\n        [\n          \"marko-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.marko$/i,\n          2,\n          false,\n          /^marko$/,\n          /\\.marko$/i,\n          /^mark[0o]$/i,\n        ],\n        [\"marko-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.marko\\.js$/i, 2],\n        [\n          \"materialize-icon\",\n          [\"light-red\", \"light-red\"],\n          /^materialize(?:\\.min)?\\.(?:js|css)$/i,\n          2,\n        ],\n        [\n          \"mathjax-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /^MathJax[^.]*\\.js$/i,\n          2,\n        ],\n        [\n          \"mocha-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /^mocha\\.(?:[jt]sx?|es6?|coffee)$/i,\n          2,\n        ],\n        [\n          \"mocha-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^mocha\\.(?:s?css|less|styl)$/i,\n          2,\n        ],\n        [\"mocha-icon\", [\"light-maroon\", \"light-maroon\"], /mocha\\.opts$/i, 2],\n        [\n          \"modernizr-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^modernizr(?:[-\\.]custom|-\\d\\.\\d+)(?:\\.\\d+)?\\.js$/i,\n          2,\n        ],\n        [\n          \"mootools-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /^mootools[^.]*\\d+\\.\\d+(?:.\\d+)?[^.]*\\.js$/i,\n          2,\n        ],\n        [\"neko-icon\", [\"dark-orange\", \"dark-orange\"], /^run\\.n$/, 2],\n        [\"newrelic-icon\", [\"medium-cyan\", \"medium-cyan\"], /^newrelic\\.yml/i, 2],\n        [\"nginx-icon\", [\"dark-green\", \"dark-green\"], /^nginx\\.conf$/i, 2],\n        [\"shuriken-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.ninja\\.d$/i, 2],\n        [\n          \"nodemon-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /^nodemon\\.json$|^\\.nodemonignore$/i,\n          2,\n        ],\n        [\n          \"normalize-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^normalize\\.(?:css|less|scss|styl)$/i,\n          2,\n        ],\n        [\n          \"npm-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^(?:package\\.json|\\.npmignore|\\.?npmrc|npm-debug\\.log|npm-shrinkwrap\\.json)$/i,\n          2,\n        ],\n        [\n          \"postcss-icon\",\n          [\"medium-yellow\", \"dark-yellow\"],\n          /\\bpostcss\\.config\\.js$/i,\n          2,\n        ],\n        [\n          \"protractor-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^protractor\\.conf\\./i,\n          2,\n        ],\n        [\"pug-icon\", [\"medium-orange\", \"medium-orange\"], /^\\.pug-lintrc/i, 2],\n        [\n          \"raphael-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /^raphael(?:\\.min|\\.no-deps)*\\.js$/i,\n          2,\n        ],\n        [\n          \"react-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /^react(?:-[^.]*)?\\.js$/i,\n          2,\n        ],\n        [\"react-icon\", [\"medium-blue\", \"dark-blue\"], /\\.react\\.js$/i, 2],\n        [\n          \"book-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /^README(?:\\b|_)|^(?:licen[sc]es?|(?:read|readme|click|delete|keep|test)\\.me)$|\\.(?:readme|1st)$/i,\n          2,\n        ],\n        [\n          \"book-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /^(?:notice|bugs|changes|change[-_]?log(?:[-._]?\\d+)?|contribute|contributing|contributors|copying|hacking|history|install|maintainers|manifest|more\\.stuff|projects|revision|terms|thanks)$/i,\n          2,\n        ],\n        [\n          \"requirejs-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /^require(?:[-.]min|dev)?\\.js$/i,\n          2,\n        ],\n        [\n          \"clojure-icon\",\n          [\"medium-maroon\", \"dark-maroon\"],\n          /^riemann\\.config$/i,\n          2,\n        ],\n        [\"rollup-icon\", [\"medium-red\", \"medium-red\"], /^rollup\\.config\\./i, 2],\n        [\"ruby-icon\", [\"light-green\", \"light-green\"], /_spec\\.rb$/i, 2],\n        [\n          \"scrutinizer-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.scrutinizer\\.yml$/i,\n          2,\n        ],\n        [\n          \"sencha-icon\",\n          [\"light-green\", \"light-green\"],\n          /^sencha(?:\\.min)?\\.js$/i,\n          2,\n        ],\n        [\n          \"snapsvg-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /^snap\\.svg(?:[-.]min)?\\.js$/i,\n          2,\n        ],\n        [\"sourcemap-icon\", [\"medium-blue\", \"medium-blue\"], /\\.css\\.map$/i, 2],\n        [\"sourcemap-icon\", [\"medium-yellow\", \"dark-yellow\"], /\\.js\\.map$/i, 2],\n        [\n          \"stylelint-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /^\\.stylelintrc(?:\\.|$)/i,\n          2,\n        ],\n        [\n          \"stylelint-icon\",\n          [\"medium-yellow\", \"dark-yellow\"],\n          /^stylelint\\.config\\.js$/i,\n          2,\n        ],\n        [\n          \"stylelint-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.stylelintignore$/i,\n          2,\n        ],\n        [\n          \"toc-icon\",\n          [\"medium-cyan\", \"dark-cyan\"],\n          /\\.toc$/i,\n          2,\n          false,\n          ,\n          /\\.toc$/i,\n          /^Table of Contents$/i,\n        ],\n        [\n          \"calc-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.8x[pk](?:\\.txt)?$/i,\n          2,\n          false,\n          ,\n          ,\n          ,\n          /^\\*\\*TI[789]\\d\\*\\*/,\n        ],\n        [\"travis-icon\", [\"medium-red\", \"medium-red\"], /^\\.travis/i, 2],\n        [\"typedoc-icon\", [\"dark-purple\", \"dark-purple\"], /^typedoc\\.json$/i, 2],\n        [\n          \"typings-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /^typings\\.json$/i,\n          2,\n        ],\n        [\n          \"uikit-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /^uikit(?:\\.min)?\\.js$/i,\n          2,\n        ],\n        [\n          \"webpack-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /webpack\\.config\\.|^webpackfile\\.js$/i,\n          2,\n        ],\n        [\n          \"wercker-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /^wercker\\.ya?ml$/i,\n          2,\n        ],\n        [\"yarn-icon\", [\"medium-blue\", \"medium-blue\"], /^yarn\\.lock$/i, 2],\n        [\"yeoman-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.yo-rc\\.json$/i, 2],\n        [\n          \"yui-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /^(?:yahoo-|yui)[^.]*\\.js$/i,\n          2,\n        ],\n        [\"emacs-icon\", [\"medium-red\", \"medium-red\"], /\\.gnus$/i, 1.5],\n        [\"emacs-icon\", [\"dark-green\", \"dark-green\"], /\\.viper$/i, 1.5],\n        [\"emacs-icon\", [\"dark-blue\", \"dark-blue\"], /^Cask$/, 1.5],\n        [\"emacs-icon\", [\"medium-blue\", \"medium-blue\"], /^Project\\.ede$/i, 1.5],\n        [\n          \"_1c-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.bsl$/i,\n          ,\n          false,\n          ,\n          /\\.bsl$/i,\n          /^1C$|^1[\\W_ \\t]?C[\\W_ \\t]?Enterprise$/i,\n        ],\n        [\n          \"_1c-icon\",\n          [\"dark-orange\", \"dark-orange\"],\n          /\\.sdbl$/i,\n          ,\n          false,\n          ,\n          /\\.sdbl$/i,\n          /^1C$|^1[\\W_ \\t]?C[\\W_ \\t]?Query$/i,\n        ],\n        [\"_1c-icon\", [\"dark-red\", \"dark-red\"], /\\.os$/i],\n        [\"_1c-alt-icon\", [\"medium-red\", \"dark-red\"], /\\.mdo$/i],\n        [\n          \"abap-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.abap$/i,\n          ,\n          false,\n          ,\n          /\\.abp$/i,\n          /^ABAP$/i,\n        ],\n        [\"as-icon\", [\"medium-blue\", \"medium-blue\"], /\\.swf$/i],\n        [\n          \"as-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.as$/i,\n          ,\n          false,\n          ,\n          /\\.(?:flex-config|actionscript(?:\\.\\d+)?)$/i,\n          /^ActionScript$|^(?:ActionScript\\s*3|as3)$/i,\n        ],\n        [\"as-icon\", [\"medium-yellow\", \"dark-yellow\"], /\\.jsfl$/i],\n        [\"as-icon\", [\"dark-red\", \"dark-red\"], /\\.swc$/i],\n        [\n          \"ada-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.(?:ada|adb|ads)$/i,\n          ,\n          false,\n          ,\n          /\\.ada$/i,\n          /^Ada$|^(?:ada95|ada2005)$/i,\n        ],\n        [\"ae-icon\", [\"dark-pink\", \"dark-pink\"], /\\.aep$/i],\n        [\"ae-icon\", [\"dark-purple\", \"dark-purple\"], /\\.aet$/i],\n        [\"ai-icon\", [\"medium-orange\", \"medium-orange\"], /\\.ai$/i],\n        [\"ai-icon\", [\"dark-orange\", \"dark-orange\"], /\\.ait$/i],\n        [\"indesign-icon\", [\"dark-pink\", \"dark-pink\"], /\\.indd$|\\.idml$/i],\n        [\"indesign-icon\", [\"medium-purple\", \"medium-purple\"], /\\.indl$/i],\n        [\"indesign-icon\", [\"dark-purple\", \"dark-purple\"], /\\.indt$|\\.inx$/i],\n        [\"indesign-icon\", [\"dark-blue\", \"dark-blue\"], /\\.indb$/i],\n        [\n          \"psd-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.psd$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^8BPS/,\n        ],\n        [\"psd-icon\", [\"dark-purple\", \"dark-purple\"], /\\.psb$/i],\n        [\"premiere-icon\", [\"dark-purple\", \"dark-purple\"], /\\.prproj$/i],\n        [\"premiere-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.prel$/i],\n        [\"premiere-icon\", [\"medium-purple\", \"medium-purple\"], /\\.psq$/i],\n        [\n          \"alloy-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.als$/i,\n          ,\n          false,\n          ,\n          /\\.alloy$/i,\n          /^Alloy$/i,\n        ],\n        [\"alpine-icon\", [\"dark-blue\", \"dark-blue\"], /(?:\\.|^)APKBUILD$/],\n        [\n          \"ampl-icon\",\n          [\"dark-maroon\", \"dark-maroon\"],\n          /\\.ampl$/i,\n          ,\n          false,\n          ,\n          /\\.ampl$/i,\n          /^AMPL$/i,\n        ],\n        [\"sun-icon\", [\"medium-yellow\", \"dark-yellow\"], /\\.ansiweatherrc$/i],\n        [\n          \"antlr-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.g$/i,\n          ,\n          false,\n          /^antlr$/,\n          /\\.antlr$/i,\n          /^antlr$/i,\n        ],\n        [\"antlr-icon\", [\"medium-orange\", \"medium-orange\"], /\\.g4$/i],\n        [\n          \"apache-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.apacheconf$/i,\n          ,\n          false,\n          ,\n          /\\.apache-config$/i,\n          /^Apache$|^(?:aconf|ApacheConf)$/i,\n        ],\n        [\n          \"apache-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /apache2[\\\\\\/]magic$/i,\n          ,\n          true,\n        ],\n        [\n          \"api-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.apib$/i,\n          ,\n          false,\n          ,\n          /\\.apib$/i,\n          /^API Blueprint$/i,\n        ],\n        [\n          \"apl-icon\",\n          [\"dark-cyan\", \"dark-cyan\"],\n          /\\.apl$/i,\n          ,\n          false,\n          /^apl$/,\n          /\\.apl$/i,\n          /^apl$/i,\n        ],\n        [\"apl-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.apl\\.history$/i],\n        [\n          \"apple-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.(?:applescript|scpt)$/i,\n          ,\n          false,\n          /^osascript$/,\n          /\\.applescript$/i,\n          /^Apple$|^[0o]sascript$/i,\n        ],\n        [\"arc-icon\", [\"medium-blue\", \"medium-blue\"], /\\.arc$/i],\n        [\n          \"arduino-icon\",\n          [\"dark-cyan\", \"dark-cyan\"],\n          /\\.ino$/i,\n          ,\n          false,\n          ,\n          /\\.arduino$/i,\n          /^Arduino$/i,\n        ],\n        [\n          \"asciidoc-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.(?:ad|adoc|asc|asciidoc)$/i,\n          ,\n          false,\n          ,\n          /\\.asciidoc$/i,\n          /^AsciiDoc$/i,\n        ],\n        [\n          \"asp-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.asp$/i,\n          ,\n          false,\n          ,\n          /\\.asp$/i,\n          /^[Aa][Ss][Pp][\\W_ \\t]?[Nn][Ee][Tt]$|^aspx(?:-vb)?$/,\n        ],\n        [\"asp-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.asax$/i],\n        [\"asp-icon\", [\"dark-green\", \"dark-green\"], /\\.ascx$/i],\n        [\"asp-icon\", [\"medium-green\", \"medium-green\"], /\\.ashx$/i],\n        [\"asp-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.asmx$/i],\n        [\"asp-icon\", [\"medium-purple\", \"medium-purple\"], /\\.aspx$/i],\n        [\"asp-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.axd$/i],\n        [\"eclipse-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.aj$/i],\n        [\n          \"binary-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.(?:l?a|[ls]?o|out|s|a51|n?asm|axf|elf|prx|puff|was[mt]|z80)$|\\.rpy[bc]$/i,\n          ,\n          false,\n          ,\n          /(?:^|\\.)(?:a[rs]m|x86|z80|lc-?3|cpu12|x86asm|m68k|assembly|avr(?:dis)?asm|dasm)(?:\\.|$)/i,\n          /^Assembly$|^n?asm$/i,\n        ],\n        [\n          \"binary-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.agc$|\\.d-objdump$/i,\n          ,\n          false,\n          ,\n          /\\.source\\.agc$/i,\n          /^Assembly$|^(?:Virtual\\s*)?AGC$|^Apollo(?:[-_\\s]*11)?\\s*Guidance\\s*Computer$/i,\n        ],\n        [\"binary-icon\", [\"dark-green\", \"dark-green\"], /\\.ko$/i],\n        [\n          \"binary-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.lst$/i,\n          ,\n          false,\n          /^lst-cpu12$/,\n          /\\.lst-cpu12$/i,\n          /^Assembly$|^lst[\\W_ \\t]?cpu12$/i,\n        ],\n        [\n          \"binary-icon\",\n          [\"dark-orange\", \"dark-orange\"],\n          /\\.(?:(?:c(?:[+px]{2}?)?-?)?objdump|bsdiff|bin|dat|pak|pdb)$/i,\n        ],\n        [\"binary-icon\", [\"medium-orange\", \"medium-orange\"], /\\.gcode|\\.gco/i],\n        [\"binary-icon\", [\"dark-purple\", \"dark-purple\"], /\\.py[co]$/i],\n        [\"binary-icon\", [null, null], /\\.DS_Store$/i],\n        [\n          \"ats-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.dats$/i,\n          ,\n          false,\n          ,\n          /\\.ats$/i,\n          /^ATS$|^ats2$/i,\n        ],\n        [\"ats-icon\", [\"medium-blue\", \"medium-blue\"], /\\.hats$/i],\n        [\"ats-icon\", [\"dark-yellow\", \"dark-yellow\"], /\\.sats$/i],\n        [\"audacity-icon\", [\"medium-yellow\", \"medium-yellow\"], /\\.aup$/i],\n        [\n          \"audio-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.mp3$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\xFF\\xFB|^ID3/,\n        ],\n        [\n          \"audio-icon\",\n          [\"dark-yellow\", \"dark-yellow\"],\n          /\\.wav$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^RIFF(?!.+WEBP)/,\n        ],\n        [\n          \"audio-icon\",\n          [\"dark-cyan\", \"dark-cyan\"],\n          /\\.(?:aac|ac3|m4p)$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\x0Bw/,\n        ],\n        [\n          \"audio-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.aif[fc]?$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^FORM.{4}AIFF/,\n        ],\n        [\n          \"audio-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.au$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\.snd|^dns\\./,\n        ],\n        [\n          \"audio-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.flac$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^fLaC/,\n        ],\n        [\n          \"audio-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.f4[ab]$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^FLV\\x01\\x04/,\n        ],\n        [\n          \"audio-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.m4a$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^.{4}ftypM4A/,\n        ],\n        [\n          \"audio-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.(?:mpc|mp\\+)$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^MPCK/,\n        ],\n        [\"audio-icon\", [\"dark-orange\", \"dark-orange\"], /\\.oga$/i],\n        [\n          \"audio-icon\",\n          [\"dark-maroon\", \"dark-maroon\"],\n          /\\.opus$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /OpusHead/,\n        ],\n        [\n          \"audio-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.r[am]$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\.RMF/,\n        ],\n        [\"audio-icon\", [\"medium-blue\", \"medium-blue\"], /\\.wma$/i],\n        [\"augeas-icon\", [\"dark-orange\", \"dark-orange\"], /\\.aug$/i],\n        [\n          \"ahk-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.ahk$/i,\n          ,\n          false,\n          /^ahk$/,\n          /\\.ahk$/i,\n          /^AutoHotkey$|^ahk$/i,\n        ],\n        [\"ahk-icon\", [\"dark-purple\", \"dark-purple\"], /\\.ahkl$/i],\n        [\n          \"autoit-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.au3$/i,\n          ,\n          false,\n          ,\n          /(?:^|\\.)autoit(?:\\.|$)/i,\n          /^AutoIt$|^(?:AutoIt3|AutoItScript|au3)$/i,\n        ],\n        [\n          \"terminal-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.awk$/i,\n          ,\n          false,\n          /^awk$/,\n          /\\.awk$/i,\n          /^awk$/i,\n        ],\n        [\n          \"terminal-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.gawk$/i,\n          ,\n          false,\n          /^gawk$/,\n          /\\.gawk$/i,\n          /^AWK$|^gawk$/i,\n        ],\n        [\n          \"terminal-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.mawk$/i,\n          ,\n          false,\n          /^mawk$/,\n          /\\.mawk$/i,\n          /^AWK$|^mawk$/i,\n        ],\n        [\n          \"terminal-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.nawk$/i,\n          ,\n          false,\n          /^nawk$/,\n          /\\.nawk$/i,\n          /^AWK$|^nawk$/i,\n        ],\n        [\"terminal-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.auk$/i],\n        [\n          \"babel-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /\\.(?:babelrc|languagebabel|babel)$/i,\n        ],\n        [\"babel-icon\", [\"dark-yellow\", \"dark-yellow\"], /\\.babelignore$/i],\n        [\"bibtex-icon\", [\"medium-red\", \"dark-red\"], /\\.cbx$/i],\n        [\"bibtex-icon\", [\"medium-orange\", \"dark-orange\"], /\\.bbx$/i],\n        [\n          \"bibtex-icon\",\n          [\"medium-yellow\", \"dark-yellow\"],\n          /\\.bib$/i,\n          ,\n          false,\n          /^bibtex$/,\n          /\\.bibtex$/i,\n          /^bibtex$/i,\n        ],\n        [\"bibtex-icon\", [\"medium-green\", \"dark-green\"], /\\.bst$/i],\n        [\n          \"gnu-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.bison$/i,\n          ,\n          false,\n          ,\n          /\\.bison$/i,\n          /^Bison$/i,\n        ],\n        [\"blender-icon\", [\"medium-orange\", \"medium-orange\"], /\\.blend$/i],\n        [\"blender-icon\", [\"dark-orange\", \"dark-orange\"], /\\.blend\\d+$/i],\n        [\"blender-icon\", [\"dark-blue\", \"dark-blue\"], /\\.bphys$/i],\n        [\n          \"bluespec-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.bsv$/i,\n          ,\n          false,\n          ,\n          /\\.bsv$/i,\n          /^Bluespec$/i,\n        ],\n        [\n          \"boo-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.boo$/i,\n          ,\n          false,\n          ,\n          /\\.boo(?:\\.unity)?$/i,\n          /^Boo$/i,\n        ],\n        [\"boot-icon\", [null, null], /\\.boot$/i],\n        [\n          \"brain-icon\",\n          [\"dark-pink\", \"dark-pink\"],\n          /\\.bf?$/i,\n          ,\n          false,\n          ,\n          /\\.(?:bf|brainfuck)$/i,\n          /^Brainfuck$|^(?:bf|Brainf\\**ck)$/i,\n        ],\n        [\"brew-icon\", [\"medium-orange\", \"medium-orange\"], /^Brewfile$/],\n        [\n          \"bro-icon\",\n          [\"dark-cyan\", \"dark-cyan\"],\n          /\\.bro$/i,\n          ,\n          false,\n          ,\n          /\\.bro$/i,\n          /^Bro$/i,\n        ],\n        [\n          \"byond-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.dm$/i,\n          ,\n          false,\n          ,\n          /\\.dm$/i,\n          /^BYOND$|^(?:DM|Dream\\s*Maker(?:\\s*Script)?)$/i,\n        ],\n        [\n          \"c-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.c$/i,\n          ,\n          false,\n          /^tcc$/,\n          /\\.c$/i,\n          /^C$/i,\n        ],\n        [\"c-icon\", [\"medium-purple\", \"medium-purple\"], /\\.h$|\\.cats$/i],\n        [\"c-icon\", [\"medium-green\", \"medium-green\"], /\\.idc$/i],\n        [\"c-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.w$/i],\n        [\"c-icon\", [\"dark-blue\", \"dark-blue\"], /\\.nc$/i],\n        [\"c-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.upc$/i],\n        [\n          \"csharp-icon\",\n          [\"medium-blue\", \"dark-blue\"],\n          /\\.cs$/i,\n          ,\n          false,\n          ,\n          /\\.cs$/i,\n          /^C#$|^c\\s*sharp$/i,\n        ],\n        [\n          \"csscript-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.csx$/i,\n          ,\n          false,\n          ,\n          /\\.csx$/i,\n          /^C#-Script$/i,\n        ],\n        [\n          \"cpp-icon\",\n          [\"medium-blue\", \"dark-blue\"],\n          /\\.c[+px]{2}$|\\.cc$/i,\n          ,\n          false,\n          ,\n          /\\.cpp$/i,\n          /^C\\+\\+$|c[-_]?pp|cplusplus/i,\n        ],\n        [\"cpp-icon\", [\"medium-purple\", \"dark-purple\"], /\\.h[+px]{2}$/i],\n        [\"cpp-icon\", [\"medium-orange\", \"dark-orange\"], /\\.[it]pp$/i],\n        [\"cpp-icon\", [\"medium-red\", \"dark-red\"], /\\.(?:tcc|inl)$/i],\n        [\n          \"cabal-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.cabal$/i,\n          ,\n          false,\n          ,\n          /\\.cabal$/i,\n          /^Cabal$/i,\n        ],\n        [\n          \"cake-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /\\.cake$/i,\n          ,\n          false,\n          ,\n          /\\.cake$/i,\n          /^Cake$/i,\n        ],\n        [\"cakefile-icon\", [\"medium-red\", \"medium-red\"], /^Cakefile$/],\n        [\"cakephp-icon\", [\"medium-red\", \"medium-red\"], /\\.ctp$/i],\n        [\"ceylon-icon\", [\"medium-orange\", \"medium-orange\"], /\\.ceylon$/i],\n        [\n          \"chapel-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.chpl$/i,\n          ,\n          false,\n          ,\n          /\\.chapel$/i,\n          /^Chapel$|^chpl$/i,\n        ],\n        [\n          \"chrome-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.crx$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^Cr24/,\n        ],\n        [\n          \"chuck-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.ck$/i,\n          ,\n          false,\n          ,\n          /\\.chuck$/i,\n          /^ChucK$/i,\n        ],\n        [\n          \"cirru-icon\",\n          [\"medium-pink\", \"dark-pink\"],\n          /\\.cirru$/i,\n          ,\n          false,\n          ,\n          /\\.cirru$/i,\n          /^Cirru$/i,\n        ],\n        [\n          \"clarion-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.clw$/i,\n          ,\n          false,\n          ,\n          /\\.clarion$/i,\n          /^Clarion$/i,\n        ],\n        [\n          \"clean-icon\",\n          [\"dark-cyan\", \"dark-cyan\"],\n          /\\.icl$/i,\n          ,\n          false,\n          /^clean$/,\n          /\\.clean$/i,\n          /^clean$/i,\n        ],\n        [\"clean-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.dcl$/i],\n        [\"clean-icon\", [\"medium-blue\", \"medium-blue\"], /\\.abc$/i],\n        [\n          \"click-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /\\.click$/i,\n          ,\n          false,\n          ,\n          /\\.click$/i,\n          /^Click$|^Click!$/i,\n        ],\n        [\n          \"clips-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.clp$/i,\n          ,\n          false,\n          ,\n          /\\.clips$/i,\n          /^CLIPS$/i,\n        ],\n        [\n          \"clojure-icon\",\n          [\"medium-blue\", \"dark-blue\"],\n          /\\.clj$/i,\n          ,\n          false,\n          /^clojure$/,\n          /\\.clojure$/i,\n          /^cl[0o]jure$/i,\n        ],\n        [\"clojure-icon\", [\"medium-purple\", \"dark-purple\"], /\\.cl2$/i],\n        [\"clojure-icon\", [\"medium-green\", \"dark-green\"], /\\.cljc$/i],\n        [\"clojure-icon\", [\"medium-red\", \"dark-red\"], /\\.cljx$|\\.hic$/i],\n        [\"cljs-icon\", [\"medium-blue\", \"dark-blue\"], /\\.cljs(?:\\.hl|cm)?$/i],\n        [\n          \"cmake-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.cmake$/i,\n          ,\n          false,\n          /^cmake$/,\n          /\\.cmake$/i,\n          /^cmake$/i,\n        ],\n        [\"cmake-icon\", [\"medium-red\", \"medium-red\"], /^CMakeLists\\.txt$/],\n        [\n          \"coffee-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.coffee$/i,\n          ,\n          false,\n          /^coffee$/,\n          /\\.coffee$/i,\n          /^CoffeeScript$|^Coffee(?:-Script)?$/i,\n        ],\n        [\"coffee-icon\", [\"dark-maroon\", \"dark-maroon\"], /\\.cjsx$/i],\n        [\n          \"coffee-icon\",\n          [\"light-maroon\", \"light-maroon\"],\n          /\\.litcoffee$/i,\n          ,\n          false,\n          /^litcoffee$/,\n          /\\.litcoffee$/i,\n          /^CoffeeScript$|^litc[0o]ffee$/i,\n        ],\n        [\"coffee-icon\", [\"medium-blue\", \"medium-blue\"], /\\.iced$/i],\n        [\n          \"cf-icon\",\n          [\"light-cyan\", \"light-cyan\"],\n          /\\.cfc$/i,\n          ,\n          false,\n          ,\n          /\\.cfscript$/i,\n          /^ColdFusion$|^(?:CFC|CFScript)$/i,\n        ],\n        [\n          \"cf-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.cfml?$/i,\n          ,\n          false,\n          ,\n          /\\.cfml?$/i,\n          /^ColdFusion$|^(?:cfml?|ColdFusion\\s*HTML)$/i,\n        ],\n        [\"khronos-icon\", [\"medium-orange\", \"medium-orange\"], /\\.dae$/i],\n        [\n          \"cl-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.cl$/i,\n          ,\n          false,\n          /^(?:c?lisp|sbcl|[ec]cl)$/,\n          /\\.common-lisp$/i,\n          /^Common Lisp$|^c?lisp$/i,\n        ],\n        [\"cp-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.cp$/i],\n        [\"cp-icon\", [\"dark-red\", \"dark-red\"], /\\.cps$/i],\n        [\n          \"zip-icon\",\n          [null, null],\n          /\\.(?:zip|z|xz)$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^(?:\\x50\\x4B(?:\\x03\\x04|\\x05\\x06|\\x07|\\x08)|\\x1F[\\x9D\\xA0]|BZh|RNC[\\x01\\x02]|\\xD0\\xCF\\x11\\xE0)/,\n        ],\n        [\n          \"zip-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.rar$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^Rar!\\x1A\\x07\\x01?\\0/,\n        ],\n        [\n          \"zip-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.t?gz$|\\.tar$|\\.whl$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\x1F\\x8B/,\n        ],\n        [\n          \"zip-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.(?:lzo?|lzma|tlz|tar\\.lzma)$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^LZIP/,\n        ],\n        [\n          \"zip-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.7z$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^7z\\xBC\\xAF\\x27\\x1C/,\n        ],\n        [\"zip-icon\", [\"medium-red\", \"medium-red\"], /\\.apk$|\\.gem$/i],\n        [\"zip-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.bz2$/i],\n        [\n          \"zip-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.iso$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\x45\\x52\\x02\\0{3}|^\\x8B\\x45\\x52\\x02/,\n        ],\n        [\"zip-icon\", [\"medium-orange\", \"medium-orange\"], /\\.xpi$/i],\n        [\"zip-icon\", [\"medium-green\", \"medium-green\"], /\\.epub$/i],\n        [\"zip-icon\", [\"dark-pink\", \"dark-pink\"], /\\.jar$/i],\n        [\"zip-icon\", [\"medium-purple\", \"medium-purple\"], /\\.war$/i],\n        [\n          \"zip-icon\",\n          [\"dark-orange\", \"dark-orange\"],\n          /\\.xar$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^xar!/,\n        ],\n        [\"zip-icon\", [\"light-orange\", \"light-orange\"], /\\.egg$/i],\n        [\n          \"config-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /\\.(?:ini|desktop|directory|cfg|conf|prefs)$/i,\n          ,\n          false,\n          ,\n          /\\.ini$/i,\n          /^d[0o]sini$/i,\n        ],\n        [\n          \"config-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.properties$/i,\n          ,\n          false,\n          ,\n          /\\.java-properties$/i,\n        ],\n        [\"config-icon\", [\"medium-green\", \"medium-green\"], /\\.toml$|\\.opts$/i],\n        [\"config-icon\", [\"dark-red\", \"dark-red\"], /\\.ld$/i],\n        [\"config-icon\", [\"medium-red\", \"medium-red\"], /\\.lds$|\\.reek$/i],\n        [\"config-icon\", [\"dark-blue\", \"dark-blue\"], /\\.terminal$/i],\n        [\"config-icon\", [\"medium-orange\", \"medium-orange\"], /^ld\\.script$/i],\n        [\n          \"config-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.git[\\/\\\\](?:config|info[\\/\\\\]\\w+)$/,\n          ,\n          true,\n        ],\n        [\n          \"config-icon\",\n          [\"dark-orange\", \"dark-orange\"],\n          /^\\/(?:private\\/)?etc\\/(?:[^\\/]+\\/)*[^\\/]*\\.(?:cf|conf|ini)(?:\\.default)?$/i,\n          ,\n          true,\n        ],\n        [\n          \"config-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /^\\/(?:private\\/)?etc\\/(?:aliases|auto_(?:home|master)|ftpusers|group|gettytab|hosts(?:\\.equiv)?|manpaths|networks|paths|protocols|services|shells|sudoers|ttys)$/i,\n          ,\n          true,\n        ],\n        [\n          \"coq-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.coq$/i,\n          ,\n          false,\n          ,\n          /\\.coq$/i,\n          /^Coq$/i,\n        ],\n        [\n          \"creole-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.creole$/i,\n          ,\n          false,\n          ,\n          /\\.creole$/i,\n          /^Creole$/i,\n        ],\n        [\n          \"crystal-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.e?cr$/i,\n          ,\n          false,\n          /^crystal$/,\n          /\\.crystal$/i,\n          /^Crystal$/i,\n        ],\n        [\n          \"csound-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.orc$/i,\n          ,\n          false,\n          ,\n          /\\.csound$/i,\n          /^Csound$|^cs[0o]und[\\W_ \\t]?[0o]rc$/i,\n        ],\n        [\"csound-icon\", [\"dark-orange\", \"dark-orange\"], /\\.udo$/i],\n        [\n          \"csound-icon\",\n          [\"dark-maroon\", \"dark-maroon\"],\n          /\\.csd$/i,\n          ,\n          false,\n          ,\n          /\\.csound-document$/i,\n          /^Csound$|^cs[0o]und[\\W_ \\t]?csd$/i,\n        ],\n        [\n          \"csound-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.sco$/i,\n          ,\n          false,\n          ,\n          /\\.csound-score$/i,\n          /^Csound$|^cs[0o]und[\\W_ \\t]?sc[0o]$/i,\n        ],\n        [\n          \"css3-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.css$/i,\n          ,\n          false,\n          /^css$/,\n          /\\.css$/i,\n          /^css$/i,\n        ],\n        [\n          \"css3-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.less$/i,\n          ,\n          false,\n          /^less$/,\n          /\\.less$/i,\n          /^CSS$|^less$/i,\n        ],\n        [\n          \"cucumber-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.feature$/i,\n          ,\n          false,\n          ,\n          /(?:^|\\.)(?:gherkin\\.feature|cucumber\\.steps)(?:\\.|$)/i,\n          /^Cucumber$|^gherkin$/i,\n        ],\n        [\n          \"nvidia-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.cu$/i,\n          ,\n          false,\n          ,\n          /\\.cuda(?:-c\\+\\+)?$/i,\n          /^CUDA$/i,\n        ],\n        [\"nvidia-icon\", [\"dark-green\", \"dark-green\"], /\\.cuh$/i],\n        [\n          \"cython-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.pyx$/i,\n          ,\n          false,\n          ,\n          /\\.cython$/i,\n          /^Cython$|^pyrex$/i,\n        ],\n        [\"cython-icon\", [\"medium-blue\", \"medium-blue\"], /\\.pxd$/i],\n        [\"cython-icon\", [\"dark-blue\", \"dark-blue\"], /\\.pxi$/i],\n        [\n          \"dlang-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.di?$/i,\n          ,\n          false,\n          ,\n          /\\.d$/i,\n          /^D$/i,\n        ],\n        [\n          \"yang-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.dnh$/i,\n          ,\n          false,\n          ,\n          /\\.danmakufu$/i,\n          /^Danmakufu$/i,\n        ],\n        [\"darcs-icon\", [\"medium-green\", \"medium-green\"], /\\.d(?:arcs)?patch$/i],\n        [\n          \"dart-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.dart$/i,\n          ,\n          false,\n          /^dart$/,\n          /\\.dart$/i,\n          /^Dart$/i,\n        ],\n        [\n          \"dashboard-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.s[kl]im$/i,\n          ,\n          false,\n          /^slim$/,\n          /\\.slim$/i,\n          /^slim$/i,\n        ],\n        [\"dashboard-icon\", [\"medium-green\", \"medium-green\"], /\\.cpuprofile$/i],\n        [\n          \"database-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /\\.(?:h|geo|topo)?json$/i,\n        ],\n        [\"database-icon\", [\"light-red\", \"light-red\"], /\\.ya?ml$/i],\n        [\n          \"database-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.cson$|\\.ston$|^mime\\.types$/i,\n        ],\n        [\n          \"database-icon\",\n          [\"dark-yellow\", \"dark-yellow\"],\n          /\\.json5$/i,\n          ,\n          false,\n          /^json5$/,\n          /\\.json5$/i,\n          /^js[0o]n5$/i,\n        ],\n        [\"database-icon\", [\"medium-red\", \"medium-red\"], /\\.http$|\\.pot?$/i],\n        [\n          \"database-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.ndjson$|\\.pytb$/i,\n          ,\n          false,\n          ,\n          /\\.python\\.traceback$/i,\n        ],\n        [\n          \"database-icon\",\n          [\"light-blue\", \"light-blue\"],\n          /\\.fea$/i,\n          ,\n          false,\n          ,\n          /\\.opentype$/i,\n          /^afdk[0o]$/i,\n        ],\n        [\n          \"database-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.json\\.eex$|\\.edn$/i,\n        ],\n        [\n          \"database-icon\",\n          [\"dark-cyan\", \"dark-cyan\"],\n          /\\.proto$/i,\n          ,\n          false,\n          ,\n          /\\.protobuf$/i,\n          /^(?:protobuf|Protocol\\s*Buffers?)$/i,\n        ],\n        [\"database-icon\", [\"dark-blue\", \"dark-blue\"], /\\.pydeps$|\\.rviz$/i],\n        [\"database-icon\", [\"dark-purple\", \"dark-purple\"], /\\.eam\\.fs$/i],\n        [\"database-icon\", [\"medium-pink\", \"medium-pink\"], /\\.qml$/i],\n        [\"database-icon\", [\"dark-pink\", \"dark-pink\"], /\\.qbs$/i],\n        [\n          \"database-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.ttl$/i,\n          ,\n          false,\n          ,\n          /\\.turtle$/i,\n        ],\n        [\"database-icon\", [\"medium-blue\", \"medium-blue\"], /\\.syntax$/i],\n        [\n          \"database-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /[\\/\\\\](?:magic[\\/\\\\]Magdir|file[\\/\\\\]magic)[\\/\\\\][-.\\w]+$|lib[\\\\\\/]icons[\\\\\\/]\\.icondb\\.js$/i,\n          ,\n          true,\n        ],\n        [\"dbase-icon\", [\"medium-red\", \"medium-red\"], /\\.dbf$/i],\n        [\"debian-icon\", [\"medium-red\", \"medium-red\"], /\\.deb$/i],\n        [\"debian-icon\", [\"dark-cyan\", \"dark-cyan\"], /^control$/],\n        [\"debian-icon\", [\"medium-cyan\", \"medium-cyan\"], /^rules$/],\n        [\n          \"diff-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.diff$/i,\n          ,\n          false,\n          ,\n          /\\.diff$/i,\n          /^Diff$|^udiff$/i,\n        ],\n        [\"earth-icon\", [\"medium-blue\", \"medium-blue\"], /\\.zone$/i],\n        [\"earth-icon\", [\"medium-green\", \"medium-green\"], /\\.arpa$/i],\n        [\"earth-icon\", [\"dark-blue\", \"dark-blue\"], /^CNAME$/],\n        [\n          \"doxygen-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /^Doxyfile$/,\n          ,\n          false,\n          ,\n          /\\.doxygen$/i,\n          /^Doxyfile$/i,\n        ],\n        [\n          \"dyalog-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.dyalog$/i,\n          ,\n          false,\n          /^dyalog$/,\n        ],\n        [\"dylib-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.(?:dylib|bundle)$/i],\n        [\"e-icon\", [\"medium-green\", \"medium-green\"], /\\.E$/, , false, /^rune$/],\n        [\"eagle-icon\", [\"medium-red\", \"medium-red\"], /\\.sch$/i],\n        [\"eagle-icon\", [\"dark-red\", \"dark-red\"], /\\.brd$/i],\n        [\n          \"ec-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.ec$/i,\n          ,\n          false,\n          /^ec$/,\n          /\\.ec$/i,\n          /^ec$/i,\n        ],\n        [\"ec-icon\", [\"dark-purple\", \"dark-purple\"], /\\.eh$/i],\n        [\"ecere-icon\", [\"medium-blue\", \"medium-blue\"], /\\.epj$/i],\n        [\"eclipse-icon\", [\"dark-blue\", \"dark-blue\"], /\\.c?project$/],\n        [\"eclipse-icon\", [\"medium-red\", \"medium-red\"], /\\.classpath$/i],\n        [\n          \"editorconfig-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.editorconfig$/i,\n          ,\n          false,\n          ,\n          /\\.editorconfig$/i,\n          /^EditorConfig$/i,\n        ],\n        [\n          \"eiffel-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.e$/,\n          ,\n          false,\n          ,\n          /\\.eiffel$/i,\n          /^Eiffel$/i,\n        ],\n        [\n          \"elixir-icon\",\n          [\"dark-purple\", \"dark-purple\"],\n          /\\.ex$/i,\n          ,\n          false,\n          /^elixir$/,\n          /\\.elixir$/i,\n          /^elixir$/i,\n        ],\n        [\"elixir-icon\", [\"medium-purple\", \"medium-purple\"], /\\.(?:exs|eex)$/i],\n        [\"elixir-icon\", [\"light-purple\", \"light-purple\"], /mix\\.exs?$/i],\n        [\n          \"elm-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.elm$/i,\n          ,\n          false,\n          ,\n          /\\.elm$/i,\n          /^Elm$/i,\n        ],\n        [\n          \"emacs-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /(?:^|\\.)(?:el|_?emacs|spacemacs|emacs\\.desktop|abbrev[-_]defs)$/i,\n          ,\n          false,\n          /^emacs$/,\n          /\\.emacs\\.lisp$/i,\n          /^Emacs Lisp$|^elisp$/i,\n        ],\n        [\n          \"emacs-icon\",\n          [\"dark-purple\", \"dark-purple\"],\n          /(?:^|\\.)(?:elc|eld)$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^;ELC\\x17\\0{3}/,\n        ],\n        [\"at-icon\", [\"medium-red\", \"dark-red\"], /^(?:authors|owners)$/i],\n        [\n          \"em-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.emberscript$/i,\n          ,\n          false,\n          ,\n          /\\.ember(?:script)?$/i,\n          /^EmberScript$/i,\n        ],\n        [\n          \"mustache-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.em(?:blem)?$/i,\n          ,\n          false,\n          ,\n          /\\.emblem$/i,\n          /^Emblem$/i,\n        ],\n        [\n          \"eq-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.eq$/i,\n          ,\n          false,\n          ,\n          /\\.eq$/i,\n          /^EQ$/i,\n        ],\n        [\n          \"erlang-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.erl$/i,\n          ,\n          false,\n          /^escript$/,\n          /\\.erlang$/i,\n          /^Erlang$/i,\n        ],\n        [\"erlang-icon\", [\"dark-red\", \"dark-red\"], /\\.beam$/i],\n        [\"erlang-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.hrl$/i],\n        [\"erlang-icon\", [\"medium-green\", \"medium-green\"], /\\.xrl$/i],\n        [\"erlang-icon\", [\"dark-green\", \"dark-green\"], /\\.yrl$/i],\n        [\"erlang-icon\", [\"dark-maroon\", \"dark-maroon\"], /\\.app\\.src$/i],\n        [\n          \"factor-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.factor$/i,\n          ,\n          false,\n          ,\n          /\\.factor$/i,\n          /^Factor$/i,\n        ],\n        [\"factor-icon\", [\"dark-orange\", \"dark-orange\"], /\\.factor-rc$/i],\n        [\"factor-icon\", [\"medium-red\", \"medium-red\"], /\\.factor-boot-rc$/i],\n        [\n          \"fancy-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.fy$/i,\n          ,\n          false,\n          /^fancy$/,\n          /\\.fancy$/i,\n          /^fancy$/i,\n        ],\n        [\"fancy-icon\", [\"medium-blue\", \"medium-blue\"], /\\.fancypack$/i],\n        [\"fancy-icon\", [\"medium-green\", \"medium-green\"], /^Fakefile$/],\n        [\n          \"fantom-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.fan$/i,\n          ,\n          false,\n          ,\n          /\\.fan(?:tom)?$/i,\n          /^Fantom$/i,\n        ],\n        [\"fbx-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.fbx$/i],\n        [\"finder-icon\", [\"medium-blue\", \"medium-blue\"], /^Icon\\r$/],\n        [\"finder-icon\", [\"dark-blue\", \"dark-blue\"], /\\.rsrc$/i],\n        [\n          \"flow-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.(?:flowconfig|js\\.flow)$/i,\n        ],\n        [\"flux-icon\", [\"medium-blue\", \"medium-blue\"], /\\.fx$/i],\n        [\"flux-icon\", [\"dark-blue\", \"dark-blue\"], /\\.flux$/i],\n        [\n          \"font-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.woff2$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^wOF2/,\n        ],\n        [\n          \"font-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.woff$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^wOFF/,\n        ],\n        [\n          \"font-icon\",\n          [\"light-green\", \"light-green\"],\n          /\\.eot$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^.{34}LP/,\n        ],\n        [\n          \"font-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.ttc$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^ttcf/,\n        ],\n        [\n          \"font-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.ttf$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\0\\x01\\0{3}/,\n        ],\n        [\n          \"font-icon\",\n          [\"dark-yellow\", \"dark-yellow\"],\n          /\\.otf$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^OTTO.*\\0/,\n        ],\n        [\"font-icon\", [\"dark-red\", \"dark-red\"], /\\.pfb$/i],\n        [\"font-icon\", [\"medium-red\", \"medium-red\"], /\\.pfm$/i],\n        [\n          \"ff-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.pe$/i,\n          ,\n          false,\n          /^fontforge$/,\n          /\\.source\\.fontforge$/i,\n          /^FontForge$|^pfaedit$/i,\n        ],\n        [\n          \"ff-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.sfd$/i,\n          ,\n          false,\n          ,\n          /\\.text\\.sfd$/i,\n          /^FontForge$/i,\n        ],\n        [\n          \"fortran-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.f$/i,\n          ,\n          false,\n          ,\n          /\\.fortran\\.?(?:modern|punchcard)?$/i,\n          /^Fortran$/i,\n        ],\n        [\n          \"fortran-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.f90$/i,\n          ,\n          false,\n          ,\n          /\\.fortran\\.free$/i,\n          /^Fortran$/i,\n        ],\n        [\"fortran-icon\", [\"medium-red\", \"medium-red\"], /\\.f03$/i],\n        [\"fortran-icon\", [\"medium-blue\", \"medium-blue\"], /\\.f08$/i],\n        [\n          \"fortran-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.f77$/i,\n          ,\n          false,\n          ,\n          /\\.fortran\\.fixed$/i,\n          /^Fortran$/i,\n        ],\n        [\"fortran-icon\", [\"dark-pink\", \"dark-pink\"], /\\.f95$/i],\n        [\"fortran-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.for$/i],\n        [\"fortran-icon\", [\"dark-yellow\", \"dark-yellow\"], /\\.fpp$/i],\n        [\n          \"freemarker-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.ftl$/i,\n          ,\n          false,\n          ,\n          /\\.ftl$/i,\n          /^FreeMarker$|^ftl$/i,\n        ],\n        [\"frege-icon\", [\"dark-red\", \"dark-red\"], /\\.fr$/i],\n        [\n          \"fsharp-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.fs[xi]?$/i,\n          ,\n          false,\n          ,\n          /\\.fsharp$/i,\n          /^FSharp$|^f#$/i,\n        ],\n        [\"gml-icon\", [\"medium-green\", \"medium-green\"], /\\.gml$/i],\n        [\n          \"gams-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.gms$/i,\n          ,\n          false,\n          ,\n          /\\.gams(?:-lst)?$/i,\n          /^GAMS$/i,\n        ],\n        [\n          \"gap-icon\",\n          [\"medium-yellow\", \"dark-yellow\"],\n          /\\.gap$/i,\n          ,\n          false,\n          /^gap$/,\n          /\\.gap$/i,\n          /^gap$/i,\n        ],\n        [\"gap-icon\", [\"dark-blue\", \"dark-blue\"], /\\.gi$/i],\n        [\"gap-icon\", [\"medium-orange\", \"medium-orange\"], /\\.tst$/i],\n        [\n          \"gdb-icon\",\n          [\"medium-green\", \"dark-green\"],\n          /\\.gdb$/i,\n          ,\n          false,\n          /^gdb$/,\n          /\\.gdb$/i,\n          /^gdb$/i,\n        ],\n        [\"gdb-icon\", [\"medium-cyan\", \"dark-cyan\"], /gdbinit$/i],\n        [\n          \"godot-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.gd$/i,\n          ,\n          false,\n          ,\n          /\\.gdscript$/i,\n          /^GDScript$/i,\n        ],\n        [\n          \"gear-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^\\.htaccess$|\\.yardopts$/i,\n        ],\n        [\"gear-icon\", [\"medium-orange\", \"medium-orange\"], /^\\.htpasswd$/i],\n        [\"gear-icon\", [\"dark-green\", \"dark-green\"], /^\\.env\\.|\\.pairs$/i],\n        [\"gear-icon\", [\"dark-yellow\", \"dark-yellow\"], /^\\.lesshintrc$/i],\n        [\n          \"gear-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /^\\.csscomb\\.json$|\\.csslintrc$|\\.jsbeautifyrc$|\\.jshintrc$|\\.jscsrc$/i,\n        ],\n        [\n          \"gear-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.coffeelintignore$|\\.codoopts$/i,\n        ],\n        [\"gear-icon\", [\"medium-blue\", \"medium-blue\"], /\\.module$/i],\n        [\n          \"gear-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.arcconfig$|\\.python-version$/i,\n        ],\n        [\"gear-icon\", [\"dark-orange\", \"dark-orange\"], /\\.lintstagedrc$/i],\n        [\n          \"gears-icon\",\n          [\"dark-orange\", \"dark-orange\"],\n          /\\.dll$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^PMOCCMOC/,\n        ],\n        [\n          \"code-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.xml$|\\.config$|\\.4th$|\\.cocci$|\\.dyl$|\\.dylan$|\\.ecl$|\\.forth$|\\.launch$|\\.manifest$|\\.menu$|\\.srdf$|\\.st$|\\.ui$|\\.wsf$|\\.x3d$|\\.xaml$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^<\\?xml /,\n        ],\n        [\n          \"code-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.rdf$|\\.capnp$|\\.dotsettings$|\\.flex$|\\.fsh$|\\.fsproj$|\\.prw$|\\.xproj$/i,\n          ,\n          false,\n          ,\n          /\\.capnp$/i,\n        ],\n        [\"code-icon\", [\"medium-blue\", \"medium-blue\"], /^_service$/],\n        [\"code-icon\", [\"medium-red\", \"medium-red\"], /^configure\\.ac$|\\.ML$/],\n        [\"code-icon\", [\"medium-green\", \"medium-green\"], /^Settings\\.StyleCop$/],\n        [\n          \"code-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.abnf$|\\.ditaval$|\\.storyboard$|\\.xmi$|\\.yacc$/i,\n          ,\n          false,\n          /^abnf$/,\n          /\\.abnf$/i,\n          /^abnf$/i,\n        ],\n        [\n          \"code-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.aepx$|\\.dita$|\\.grace$|\\.lid$|\\.nproj$/i,\n        ],\n        [\n          \"code-icon\",\n          [\"dark-cyan\", \"dark-cyan\"],\n          /\\.agda$|\\.plist$|\\.wisp$|\\.xlf$|\\.xslt$/i,\n          ,\n          false,\n          ,\n          /\\.plist$/i,\n        ],\n        [\n          \"code-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.appxmanifest$|\\.befunge$|\\.fun$|\\.muf$|\\.xul$/i,\n        ],\n        [\n          \"code-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.ash$|\\.asn1?$|\\.lagda$|\\.lex$|\\.props$|\\.resx$|\\.smt2$|\\.vsh$|\\.xsl$|\\.yy$/i,\n          ,\n          false,\n          /^xsl$/,\n          /\\.xsl$/i,\n        ],\n        [\n          \"code-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.axml$|\\.bmx$|\\.brs$|\\.ccxml$|\\.clixml$|\\.fth$|\\.intr$|\\.mdpolicy$|\\.mtml$|\\.myt$|\\.xsd$/i,\n          ,\n          false,\n          /^brightscript$/,\n          /\\.brightscript$/i,\n        ],\n        [\n          \"code-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.bnf$|\\.cbl$|\\.cob$|\\.cobol$|\\.fxml$/i,\n          ,\n          false,\n          /^bnf$/,\n          /\\.bnf$/i,\n          /^bnf$/i,\n        ],\n        [\"code-icon\", [\"dark-maroon\", \"dark-maroon\"], /\\.ccp$|\\.cpy$|\\.mxml$/i],\n        [\n          \"code-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.ch$|\\.cw$|\\.ebnf$|\\.iml$|\\.jflex$|\\.m4$|\\.mask$|\\.mumps$|\\.prg$|\\.pt$|\\.rl$|\\.sml$|\\.targets$|\\.webidl$|\\.wsdl$|\\.xacro$|\\.xliff$/i,\n          ,\n          false,\n          /^ebnf$/,\n          /\\.ebnf$/i,\n        ],\n        [\"code-icon\", [\"dark-pink\", \"dark-pink\"], /\\.ct$|\\.zcml$/i],\n        [\n          \"code-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.cy$|\\.eclxml$|\\.ivy$|\\.sed$|\\.tml$|\\.y$/i,\n        ],\n        [\n          \"code-icon\",\n          [\"dark-purple\", \"dark-purple\"],\n          /\\.ditamap$|\\.frt$|\\.lp$|\\.omgrofl$|\\.osm$|\\.wxs$|\\.xib$/i,\n        ],\n        [\n          \"code-icon\",\n          [\"medium-pink\", \"medium-pink\"],\n          /\\.filters$|\\.lol$|\\.pig$/i,\n        ],\n        [\"code-icon\", [\"dark-orange\", \"dark-orange\"], /\\.grxml$|\\.urdf$/i],\n        [\"code-icon\", [\"medium-yellow\", \"medium-yellow\"], /\\.jelly$/i],\n        [\n          \"code-icon\",\n          [\"dark-yellow\", \"dark-yellow\"],\n          /\\.jsproj$|\\.ohm$|\\.sgml?$/i,\n          ,\n          false,\n          /^ohm$/,\n          /\\.ohm$/i,\n        ],\n        [\n          \"code-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.mq[45h]$/i,\n          ,\n          false,\n          ,\n          /(?:^|\\.)mq[45](?=\\.|$)/i,\n        ],\n        [\"code-icon\", [\"light-green\", \"light-green\"], /\\.odd$/i],\n        [\n          \"code-icon\",\n          [\"light-blue\", \"light-blue\"],\n          /\\.psc1$|\\.smt$/i,\n          ,\n          false,\n          /boolector|cvc4|mathsat5|opensmt|smtinterpol|smt-rat|stp|verit|yices2|z3/,\n          /\\.smt$/i,\n        ],\n        [\"code-icon\", [\"light-cyan\", \"light-cyan\"], /\\.scxml$/i],\n        [\"code-icon\", [\"light-maroon\", \"light-maroon\"], /\\.sig$|\\.wxl$/i],\n        [\"code-icon\", [\"light-orange\", \"light-orange\"], /\\.ux$|\\.wxi$/i],\n        [\"code-icon\", [\"light-purple\", \"light-purple\"], /\\.vxml$/i],\n        [\n          \"genshi-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.kid$/i,\n          ,\n          false,\n          ,\n          /\\.genshi$/i,\n          /^Genshi$|^xml\\+(?:genshi|kid)$/i,\n        ],\n        [\n          \"gentoo-icon\",\n          [\"dark-cyan\", \"dark-cyan\"],\n          /\\.ebuild$/i,\n          ,\n          false,\n          ,\n          /\\.ebuild$/i,\n          /^Gentoo$/i,\n        ],\n        [\"gentoo-icon\", [\"medium-blue\", \"medium-blue\"], /\\.eclass$/i],\n        [\n          \"git-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^\\.git|^\\.keep$|\\.mailmap$/i,\n          ,\n          false,\n          ,\n          /\\.git-(?:commit|config|rebase)$/i,\n          /^Git$/i,\n        ],\n        [\"git-commit-icon\", [\"medium-red\", \"medium-red\"], /^COMMIT_EDITMSG$/],\n        [\n          \"git-merge-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^MERGE_(?:HEAD|MODE|MSG)$/,\n        ],\n        [\"glade-icon\", [\"medium-green\", \"medium-green\"], /\\.glade$/i],\n        [\"pointwise-icon\", [\"medium-blue\", \"medium-blue\"], /\\.glf$/i],\n        [\"glyphs-icon\", [\"medium-green\", \"medium-green\"], /\\.glyphs$/i],\n        [\n          \"gn-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.gn$/i,\n          ,\n          false,\n          /^gn$/,\n          /\\.gn$/i,\n          /^gn$/i,\n        ],\n        [\"gn-icon\", [\"medium-blue\", \"medium-blue\"], /\\.gni$/i],\n        [\"gnu-icon\", [\"medium-red\", \"dark-red\"], /\\.(?:gnu|gplv[23])$/i],\n        [\n          \"graph-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.(?:gp|plo?t|gnuplot)$/i,\n          ,\n          false,\n          /^gnuplot$/,\n          /\\.gnuplot$/i,\n          /^Gnuplot$/i,\n        ],\n        [\n          \"go-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.go$/i,\n          ,\n          false,\n          ,\n          /\\.go(?:template)?$/i,\n          /^Go$/i,\n        ],\n        [\n          \"golo-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.golo$/i,\n          ,\n          false,\n          ,\n          /\\.golo$/i,\n          /^Golo$/i,\n        ],\n        [\n          \"gosu-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.gs$/i,\n          ,\n          false,\n          ,\n          /\\.gosu(?:\\.\\d+)?$/i,\n          /^Gosu$/i,\n        ],\n        [\"gosu-icon\", [\"medium-green\", \"medium-green\"], /\\.gst$/i],\n        [\"gosu-icon\", [\"dark-green\", \"dark-green\"], /\\.gsx$/i],\n        [\"gosu-icon\", [\"dark-blue\", \"dark-blue\"], /\\.vark$/i],\n        [\n          \"gradle-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.gradle$/i,\n          ,\n          false,\n          ,\n          /\\.gradle$/i,\n          /^Gradle$/i,\n        ],\n        [\"gradle-icon\", [\"dark-purple\", \"dark-purple\"], /gradlew$/i],\n        [\"gf-icon\", [\"medium-red\", \"medium-red\"], /\\.gf$/i],\n        [\n          \"graphql-icon\",\n          [\"medium-pink\", \"medium-pink\"],\n          /\\.graphql$/i,\n          ,\n          false,\n          ,\n          /\\.graphql$/i,\n          /^GraphQL$/i,\n        ],\n        [\"graphql-icon\", [\"medium-purple\", \"medium-purple\"], /\\.gql$/i],\n        [\n          \"graphviz-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.gv$/i,\n          ,\n          false,\n          ,\n          /\\.dot$/i,\n          /^Graphviz$/i,\n        ],\n        [\"graphviz-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.dot$/i],\n        [\n          \"groovy-icon\",\n          [\"light-blue\", \"light-blue\"],\n          /\\.(?:groovy|grt|gtpl|gsp|gvy)$/i,\n          ,\n          false,\n          /^groovy$/,\n          /\\.groovy$/i,\n          /^Groovy$|^gsp$/i,\n        ],\n        [\n          \"hack-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.hh$/i,\n          ,\n          false,\n          ,\n          /\\.hack$/i,\n          /^Hack$/i,\n        ],\n        [\n          \"haml-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /\\.haml$/i,\n          ,\n          false,\n          /^haml$/,\n          /\\.haml$/i,\n          /^haml$/i,\n        ],\n        [\n          \"haml-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.hamlc$/i,\n          ,\n          false,\n          /^hamlc$/,\n          /\\.hamlc$/i,\n          /^Haml$|^hamlc$/i,\n        ],\n        [\n          \"harbour-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.hb$/i,\n          ,\n          false,\n          ,\n          /\\.harbour$/i,\n          /^Harbour$/i,\n        ],\n        [\n          \"hashicorp-icon\",\n          [\"dark-purple\", \"dark-purple\"],\n          /\\.hcl$/i,\n          ,\n          false,\n          ,\n          /(?:^|\\.)(?:hcl|hashicorp)(?:\\.|$)/i,\n          /^Hashicorp Configuration Language$/i,\n        ],\n        [\n          \"haskell-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.hs$/i,\n          ,\n          false,\n          /^runhaskell$/,\n          /\\.source\\.haskell$/i,\n          /^Haskell$/i,\n        ],\n        [\n          \"haskell-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.hsc$/i,\n          ,\n          false,\n          ,\n          /\\.hsc2hs$/i,\n          /^Haskell$/i,\n        ],\n        [\n          \"haskell-icon\",\n          [\"dark-purple\", \"dark-purple\"],\n          /\\.c2hs$/i,\n          ,\n          false,\n          ,\n          /\\.c2hs$/i,\n          /^Haskell$|^C2hs(?:\\s*Haskell)?$/i,\n        ],\n        [\n          \"haskell-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.lhs$/i,\n          ,\n          false,\n          ,\n          /\\.latex\\.haskell$/i,\n          /^Haskell$|^(?:lhaskell|lhs|Literate\\s*Haskell)$/i,\n        ],\n        [\n          \"haxe-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.hx(?:[sm]l|)?$/,\n          ,\n          false,\n          ,\n          /(?:^|\\.)haxe(?:\\.\\d+)?$/i,\n          /^Haxe$/i,\n        ],\n        [\"heroku-icon\", [\"medium-purple\", \"medium-purple\"], /^Procfile$/],\n        [\"heroku-icon\", [\"light-purple\", \"light-purple\"], /\\.buildpacks$/i],\n        [\"heroku-icon\", [\"dark-purple\", \"dark-purple\"], /^\\.vendor_urls$/],\n        [\n          \"html5-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.x?html?$/i,\n          ,\n          false,\n          ,\n          /\\.html\\.basic$/i,\n          /^HTML$|^(?:xhtml|htm)$/i,\n        ],\n        [\n          \"html5-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.cshtml$|\\.latte$/i,\n          ,\n          false,\n          /^latte$/,\n          /\\.latte$/i,\n        ],\n        [\n          \"html5-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.ejs$|\\.kit$|\\.swig$/i,\n          ,\n          false,\n          /^swig$/,\n          /\\.swig$/i,\n        ],\n        [\n          \"html5-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.gohtml$|\\.phtml$/i,\n          ,\n          false,\n          /^gohtml$/,\n          /\\.gohtml$/i,\n          /^HTML$|^g[0o]html$/i,\n        ],\n        [\n          \"html5-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.html\\.eex$|\\.jsp$/i,\n          ,\n          false,\n          ,\n          /\\.jsp$/i,\n        ],\n        [\"html5-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.shtml$/i],\n        [\n          \"html5-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.scaml$/i,\n          ,\n          false,\n          /^scaml$/,\n          /\\.scaml$/i,\n          /^HTML$|^scaml$/i,\n        ],\n        [\n          \"html5-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.vash$/i,\n          ,\n          false,\n          /^vash$/,\n          /\\.vash$/i,\n          /^HTML$|^vash$/i,\n        ],\n        [\n          \"html5-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.dtml$/i,\n          ,\n          false,\n          /^dtml$/,\n          /\\.dtml$/i,\n          /^HTML$|^dtml$/i,\n        ],\n        [\n          \"hy-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.hy$/i,\n          ,\n          false,\n          ,\n          /\\.hy$/i,\n          /^Hy$|^hylang$/i,\n        ],\n        [\n          \"idl-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.dlm$/i,\n          ,\n          false,\n          ,\n          /\\.idl$/i,\n          /^IDL$/i,\n        ],\n        [\n          \"idris-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.idr$/i,\n          ,\n          false,\n          ,\n          /\\.(?:idris|ipkg)$/i,\n          /^Idris$/i,\n        ],\n        [\"idris-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.lidr$/i],\n        [\"igorpro-icon\", [\"dark-red\", \"dark-red\"], /\\.ipf$/i],\n        [\n          \"image-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.a?png$|\\.svgz$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^.PNG\\r\\n\\x1A\\n/,\n        ],\n        [\n          \"image-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /\\.gif$|\\.ora$|\\.sgi$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^GIF8[97]a/,\n        ],\n        [\n          \"image-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.jpg$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\xFF\\xD8\\xFF[\\xDB\\xE0\\xE1]|(?:JFIF|Exif)\\0|^\\xCF\\x84\\x01|^\\xFF\\xD8.+\\xFF\\xD9$/,\n        ],\n        [\n          \"image-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.ico$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\0{2}\\x01\\0/,\n        ],\n        [\n          \"image-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.webp$|\\.iff$|\\.lbm$|\\.liff$|\\.nrrd$|\\.pcx$|\\.vsdx?$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^RIFF.{4}WEBPVP8/,\n        ],\n        [\n          \"image-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.bmp$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^BM/,\n        ],\n        [\n          \"image-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.bpg$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^BPG\\xFB/,\n        ],\n        [\n          \"image-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.cin$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\x80\\x2A\\x5F\\xD7/,\n        ],\n        [\n          \"image-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.cd5$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^_CD5\\x10\\0/,\n        ],\n        [\"image-icon\", [\"light-yellow\", \"light-yellow\"], /\\.cpc$/i],\n        [\n          \"image-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.cr2$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^II\\*\\0\\x10\\0{3}CR/,\n        ],\n        [\n          \"image-icon\",\n          [\"medium-pink\", \"medium-pink\"],\n          /\\.dcm$|\\.mpo$|\\.pbm$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^.{128}DICM/,\n        ],\n        [\n          \"image-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.dds$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^DDS \\|\\0{3}/,\n        ],\n        [\n          \"image-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.djvu?$|\\.pxr$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^AT&TFORM/,\n        ],\n        [\n          \"image-icon\",\n          [\"dark-orange\", \"dark-orange\"],\n          /\\.dpx$|\\.raw$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^(?:SDPX|XPDS)/,\n        ],\n        [\"image-icon\", [\"light-blue\", \"light-blue\"], /\\.ecw$|\\.sct$/i],\n        [\n          \"image-icon\",\n          [\"dark-yellow\", \"dark-yellow\"],\n          /\\.exr$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^v\\/1\\x01/,\n        ],\n        [\n          \"image-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.fits?$|\\.fts$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^SIMPLE  =/,\n        ],\n        [\n          \"image-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.flif$|\\.hdp$|\\.heic$|\\.heif$|\\.jxr$|\\.wdp$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^FLIF/,\n        ],\n        [\n          \"image-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.hdr$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^#\\?RADIANCE\\n/,\n        ],\n        [\n          \"image-icon\",\n          [\"medium-pink\", \"medium-pink\"],\n          /\\.icns$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^icns/,\n        ],\n        [\n          \"image-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.(?:jp[f2xm]|j2c|mj2)$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\0{3}\\fjP {2}/,\n        ],\n        [\"image-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.jps$/i],\n        [\n          \"image-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.mng$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^.MNG\\r\\n\\x1A\\n/,\n        ],\n        [\"image-icon\", [\"light-red\", \"light-red\"], /\\.pgf$/i],\n        [\"image-icon\", [\"light-purple\", \"light-purple\"], /\\.pict$/i],\n        [\n          \"image-icon\",\n          [\"dark-orange\", \"dark-orange\"],\n          /\\.tga$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /TRUEVISION-XFILE\\.\\0$/,\n        ],\n        [\n          \"image-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.tiff?$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^II\\x2A\\0|^MM\\0\\x2A/,\n        ],\n        [\"image-icon\", [\"dark-maroon\", \"dark-maroon\"], /\\.wbm$/i],\n        [\n          \"inform7-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.ni$/i,\n          ,\n          false,\n          ,\n          /\\.inform-?7?$/i,\n          /^Inform 7$|^i7$/i,\n        ],\n        [\"inform7-icon\", [\"dark-blue\", \"dark-blue\"], /\\.i7x$/i],\n        [\n          \"inno-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.iss$/i,\n          ,\n          false,\n          ,\n          /\\.inno$/i,\n          /^Inno Setup$/i,\n        ],\n        [\n          \"io-icon\",\n          [\"dark-purple\", \"dark-purple\"],\n          /\\.io$/i,\n          ,\n          false,\n          /^io$/,\n          /^source\\.io$/i,\n          /^Io$/i,\n        ],\n        [\n          \"ioke-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.ik$/i,\n          ,\n          false,\n          /^ioke$/,\n        ],\n        [\n          \"isabelle-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.thy$/i,\n          ,\n          false,\n          ,\n          /\\.isabelle\\.theory$/i,\n          /^Isabelle$/i,\n        ],\n        [\"isabelle-icon\", [\"dark-blue\", \"dark-blue\"], /^ROOT$/],\n        [\n          \"j-icon\",\n          [\"light-blue\", \"light-blue\"],\n          /\\.ijs$/i,\n          ,\n          false,\n          /^jconsole$/,\n          /\\.j$/i,\n          /^J$/i,\n        ],\n        [\n          \"jade-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.jade$/i,\n          ,\n          false,\n          ,\n          /\\.jade$/i,\n          /^Jade$/i,\n        ],\n        [\"jake-icon\", [\"medium-maroon\", \"dark-maroon\"], /^Jakefile$/],\n        [\"jake-icon\", [\"medium-yellow\", \"dark-yellow\"], /\\.jake$/i],\n        [\n          \"java-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.java$/i,\n          ,\n          false,\n          ,\n          /\\.java$/i,\n          /^Java$/i,\n        ],\n        [\n          \"js-icon\",\n          [\"medium-yellow\", \"dark-yellow\"],\n          /\\.js$|\\.es6$|\\.es$/i,\n          ,\n          false,\n          /^(?:node|iojs)$/,\n          /\\.js$/i,\n          /^JavaScript$|^(?:js|node)$/i,\n        ],\n        [\"js-icon\", [\"medium-orange\", \"dark-orange\"], /\\._js$/i],\n        [\"js-icon\", [\"medium-maroon\", \"dark-maroon\"], /\\.jsb$|\\.dust$/i],\n        [\"js-icon\", [\"medium-blue\", \"dark-blue\"], /\\.jsm$|\\.mjs$|\\.xsjslib$/i],\n        [\"js-icon\", [\"medium-green\", \"dark-green\"], /\\.jss$/i],\n        [\"js-icon\", [\"medium-pink\", \"dark-pink\"], /\\.sjs$/i],\n        [\"js-icon\", [\"medium-red\", \"dark-red\"], /\\.ssjs$/i],\n        [\"js-icon\", [\"medium-purple\", \"dark-purple\"], /\\.xsjs$/i],\n        [\"jenkins-icon\", [\"medium-red\", \"dark-red\"], /^Jenkinsfile$/],\n        [\n          \"jinja-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.jinja$/i,\n          ,\n          false,\n          ,\n          /\\.jinja$/i,\n          /^Jinja$|^(?:django|htmldjango|html\\+django\\/jinja|html\\+jinja)$/i,\n        ],\n        [\"jinja-icon\", [\"medium-red\", \"medium-red\"], /\\.jinja2$/i],\n        [\"jsonld-icon\", [\"medium-blue\", \"medium-blue\"], /\\.jsonld$/i],\n        [\n          \"sql-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.jq$/i,\n          ,\n          false,\n          ,\n          /\\.jq$/i,\n          /^JSONiq$/i,\n        ],\n        [\n          \"jsx-icon\",\n          [\"medium-blue\", \"dark-blue\"],\n          /\\.jsx$/i,\n          ,\n          false,\n          ,\n          /\\.jsx$/i,\n          /^JSX$/i,\n        ],\n        [\n          \"julia-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.jl$/i,\n          ,\n          false,\n          ,\n          /\\.julia$/i,\n          /^Julia$/i,\n        ],\n        [\n          \"jupyter-icon\",\n          [\"dark-orange\", \"dark-orange\"],\n          /\\.ipynb$/i,\n          ,\n          false,\n          ,\n          /\\.ipynb$/i,\n          /^(?:ipynb|(?:Jupyter|IPython)\\s*Notebook)$/i,\n        ],\n        [\"jupyter-icon\", [\"dark-cyan\", \"dark-cyan\"], /^Notebook$/],\n        [\"keynote-icon\", [\"medium-blue\", \"medium-blue\"], /\\.keynote$/i],\n        [\"keynote-icon\", [\"dark-blue\", \"dark-blue\"], /\\.knt$/i],\n        [\n          \"kivy-icon\",\n          [\"dark-maroon\", \"dark-maroon\"],\n          /\\.kv$/i,\n          ,\n          false,\n          ,\n          /\\.kv$/i,\n          /^Kivy$/i,\n        ],\n        [\"earth-icon\", [\"medium-green\", \"medium-green\"], /\\.kml$/i],\n        [\n          \"kotlin-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.kt$/i,\n          ,\n          false,\n          /^kotlin$/,\n          /\\.kotlin$/i,\n          /^k[0o]tlin$/i,\n        ],\n        [\"kotlin-icon\", [\"medium-blue\", \"medium-blue\"], /\\.ktm$/i],\n        [\"kotlin-icon\", [\"medium-orange\", \"medium-orange\"], /\\.kts$/i],\n        [\n          \"krl-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.krl$/i,\n          ,\n          false,\n          ,\n          /\\.krl$/i,\n          /^KRL$/i,\n        ],\n        [\"labview-icon\", [\"dark-blue\", \"dark-blue\"], /\\.lvproj$/i],\n        [\n          \"laravel-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.blade\\.php$/i,\n          ,\n          false,\n          ,\n          /\\.php\\.blade$/i,\n          /^Laravel$/i,\n        ],\n        [\n          \"lasso-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.lasso$|\\.las$/i,\n          ,\n          false,\n          ,\n          /\\.lasso$/i,\n          /^Lasso$|^lass[0o]script$/i,\n        ],\n        [\"lasso-icon\", [\"medium-blue\", \"medium-blue\"], /\\.lasso8$/i],\n        [\"lasso-icon\", [\"medium-purple\", \"medium-purple\"], /\\.lasso9$/i],\n        [\"lasso-icon\", [\"medium-red\", \"medium-red\"], /\\.ldml$/i],\n        [\n          \"lean-icon\",\n          [\"dark-purple\", \"dark-purple\"],\n          /\\.lean$/i,\n          ,\n          false,\n          /^lean$/,\n          /\\.lean$/i,\n          /^lean$/i,\n        ],\n        [\"lean-icon\", [\"dark-red\", \"dark-red\"], /\\.hlean$/i],\n        [\"lfe-icon\", [\"dark-red\", \"dark-red\"], /\\.lfe$/i],\n        [\"lightwave-icon\", [\"medium-red\", \"medium-red\"], /\\.lwo$/i],\n        [\"lightwave-icon\", [\"medium-blue\", \"medium-blue\"], /\\.lws$/i],\n        [\n          \"lisp-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.lsp$/i,\n          ,\n          false,\n          /^newlisp$/,\n          /\\.newlisp$/i,\n          /^Lisp$|^newlisp$/i,\n        ],\n        [\n          \"lisp-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.lisp$/i,\n          ,\n          false,\n          /^lisp$/,\n          /\\.lisp$/i,\n          /^lisp$/i,\n        ],\n        [\n          \"lisp-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.l$|\\.nl$/i,\n          ,\n          false,\n          /picolisp|pil/,\n        ],\n        [\"lisp-icon\", [\"medium-blue\", \"medium-blue\"], /\\.ny$|\\.sexp$/i],\n        [\"lisp-icon\", [\"medium-purple\", \"medium-purple\"], /\\.podsl$/i],\n        [\n          \"ls-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.ls$/i,\n          ,\n          false,\n          ,\n          /\\.livescript$/i,\n          /^LiveScript$|^(?:ls|live-script)$/i,\n        ],\n        [\"ls-icon\", [\"dark-blue\", \"dark-blue\"], /\\._ls$/i],\n        [\"ls-icon\", [\"medium-green\", \"medium-green\"], /^Slakefile$/],\n        [\n          \"llvm-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.ll$/i,\n          ,\n          false,\n          /^llvm$/,\n          /\\.llvm$/i,\n          /^llvm$/i,\n        ],\n        [\"llvm-icon\", [\"medium-yellow\", \"dark-yellow\"], /\\.clang-format$/i],\n        [\n          \"mobile-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.xm$/i,\n          ,\n          false,\n          /^logos$/,\n          /\\.logos$/i,\n          /^l[0o]g[0o]s$/i,\n        ],\n        [\"mobile-icon\", [\"dark-red\", \"dark-red\"], /\\.xi$/i],\n        [\n          \"logtalk-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.(?:logtalk|lgt)$/i,\n          ,\n          false,\n          ,\n          /\\.logtalk$/i,\n          /^Logtalk$/i,\n        ],\n        [\"lookml-icon\", [\"medium-purple\", \"medium-purple\"], /\\.lookml$/i],\n        [\n          \"lsl-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.lsl$/i,\n          ,\n          false,\n          /^lsl$/,\n          /\\.lsl$/i,\n          /^lsl$/i,\n        ],\n        [\"lsl-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.lslp$/i],\n        [\n          \"lua-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.lua$/i,\n          ,\n          false,\n          /^lua$/,\n          /\\.lua$/i,\n          /^lua$/i,\n        ],\n        [\"lua-icon\", [\"dark-blue\", \"dark-blue\"], /\\.pd_lua$/i],\n        [\"lua-icon\", [\"dark-purple\", \"dark-purple\"], /\\.rbxs$/i],\n        [\"lua-icon\", [\"dark-red\", \"dark-red\"], /\\.wlua$/i],\n        [\n          \"checklist-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /^Makefile|^makefile$/,\n          ,\n          false,\n          /^make$/,\n          /\\.makefile$/i,\n          /^Makefile$|^(?:bsdmake|make|mf)$/i,\n        ],\n        [\n          \"checklist-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /\\.(?:mk|mak|make)$|^mkfile$/i,\n        ],\n        [\n          \"checklist-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^BSDmakefile$|\\.am$/i,\n        ],\n        [\"checklist-icon\", [\"medium-green\", \"medium-green\"], /^GNUmakefile$/i],\n        [\"checklist-icon\", [\"medium-blue\", \"medium-blue\"], /^Kbuild$/],\n        [\"checklist-icon\", [\"dark-blue\", \"dark-blue\"], /\\.bb$/i],\n        [\"checklist-icon\", [\"dark-blue\", \"dark-blue\"], /^DEPS$/],\n        [\"checklist-icon\", [\"medium-blue\", \"medium-blue\"], /\\.mms$/i],\n        [\"checklist-icon\", [\"light-blue\", \"light-blue\"], /\\.mmk$/i],\n        [\"checklist-icon\", [\"dark-purple\", \"dark-purple\"], /\\.pri$/i],\n        [\n          \"mako-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.mak?o$/i,\n          ,\n          false,\n          ,\n          /\\.mako$/i,\n          /^Mako$/i,\n        ],\n        [\n          \"manpage-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.(?:1(?:[bcmsx]|has|in)?|[24568]|3(?:avl|bsm|3c|in|m|qt|x)?|7(?:d|fs|i|ipp|m|p)?|9[efps]?|chem|eqn|groff|man|mandoc|mdoc|me|mom|n|nroff|pic|tmac|tmac-u|tr|troff)$/i,\n          ,\n          false,\n          /man|mandoc|(?:[gnt]|dit)roff/i,\n          /\\.[gt]?roff$/i,\n          /^Manual Page$|^(?:[gtn]?roff|manpage)$/i,\n          /^\\.TH[ \\t]+(?:\\S+)|^'\\\\\" [tre]+(?=\\s|$)/,\n        ],\n        [\n          \"manpage-icon\",\n          [\"dark-maroon\", \"dark-maroon\"],\n          /\\.(?:rnh|rno|roff|run|runoff)$/i,\n          ,\n          false,\n          /^runoff$/,\n          /\\.runoff$/i,\n          /^Manual Page$|^run[0o]ff$/i,\n        ],\n        [\n          \"mapbox-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.mss$/i,\n          ,\n          false,\n          ,\n          /\\.mss$/i,\n          /^Mapbox$|^Carto(?:CSS)?$/i,\n        ],\n        [\n          \"markdown-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.(?:md|mdown|markdown|mkd|mkdown|mkdn|rmd|ron)$/i,\n          ,\n          false,\n          ,\n          /\\.gfm$/i,\n          /^Markdown$/i,\n        ],\n        [\n          \"mathematica-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.mathematica$|\\.nbp$/i,\n          ,\n          false,\n          ,\n          /\\.mathematica$/i,\n          /^Mathematica$|^mma$/i,\n        ],\n        [\"mathematica-icon\", [\"medium-red\", \"medium-red\"], /\\.cdf$/i],\n        [\"mathematica-icon\", [\"medium-orange\", \"medium-orange\"], /\\.ma$/i],\n        [\"mathematica-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.mt$/i],\n        [\"mathematica-icon\", [\"dark-orange\", \"dark-orange\"], /\\.nb$/i],\n        [\"mathematica-icon\", [\"medium-yellow\", \"medium-yellow\"], /\\.wl$/i],\n        [\"mathematica-icon\", [\"dark-yellow\", \"dark-yellow\"], /\\.wlt$/i],\n        [\n          \"matlab-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /\\.matlab$/i,\n          ,\n          false,\n          ,\n          /\\.(?:matlab|octave)$/i,\n          /^MATLAB$|^[0o]ctave$/i,\n        ],\n        [\"max-icon\", [\"dark-purple\", \"dark-purple\"], /\\.maxpat$/i],\n        [\"max-icon\", [\"medium-red\", \"medium-red\"], /\\.maxhelp$/i],\n        [\"max-icon\", [\"medium-blue\", \"medium-blue\"], /\\.maxproj$/i],\n        [\"max-icon\", [\"medium-purple\", \"medium-purple\"], /\\.mxt$/i],\n        [\"max-icon\", [\"medium-green\", \"medium-green\"], /\\.pat$/i],\n        [\n          \"maxscript-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.ms$/i,\n          ,\n          false,\n          ,\n          /\\.maxscript$/i,\n          /^MAXScript$/i,\n        ],\n        [\"maxscript-icon\", [\"dark-purple\", \"dark-purple\"], /\\.mcr$/i],\n        [\"maxscript-icon\", [\"medium-red\", \"medium-red\"], /\\.mce$/i],\n        [\"maxscript-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.max$/i],\n        [\"maxscript-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.3ds$/i],\n        [\"maya-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.mb$/i],\n        [\"maya-icon\", [\"dark-blue\", \"dark-blue\"], /\\.mel$/i],\n        [\"maya-icon\", [\"dark-purple\", \"dark-purple\"], /\\.mcf[ip]$/i],\n        [\n          \"mediawiki-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /\\.mediawiki$/i,\n          ,\n          false,\n          /^mediawiki$/,\n          /\\.mediawiki$/i,\n          /^mediawiki$/i,\n        ],\n        [\"mediawiki-icon\", [\"medium-orange\", \"medium-orange\"], /\\.wiki$/i],\n        [\n          \"bullhorn-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /^\\.mention-bot$/i,\n        ],\n        [\n          \"mercury-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.moo$/i,\n          ,\n          false,\n          /^mmi$/,\n          /\\.mercury$/i,\n          /^Mercury$/i,\n        ],\n        [\"metal-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.metal$/i],\n        [\"access-icon\", [\"dark-maroon\", \"dark-maroon\"], /\\.accda$/i],\n        [\"access-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.accdb$/i],\n        [\"access-icon\", [\"medium-green\", \"medium-green\"], /\\.accde$/i],\n        [\"access-icon\", [\"medium-red\", \"medium-red\"], /\\.accdr$/i],\n        [\"access-icon\", [\"dark-red\", \"dark-red\"], /\\.accdt$/i],\n        [\"access-icon\", [\"light-maroon\", \"light-maroon\"], /\\.adn$|\\.laccdb$/i],\n        [\"access-icon\", [\"dark-purple\", \"dark-purple\"], /\\.mdw$/i],\n        [\"excel-icon\", [\"dark-orange\", \"dark-orange\"], /\\.xls$/i],\n        [\"excel-icon\", [\"dark-green\", \"dark-green\"], /\\.xlsx$/i],\n        [\"excel-icon\", [\"medium-green\", \"medium-green\"], /\\.xlsm$/i],\n        [\"excel-icon\", [\"medium-red\", \"medium-red\"], /\\.xlsb$/i],\n        [\"excel-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.xlt$/i],\n        [\"onenote-icon\", [\"dark-purple\", \"dark-purple\"], /\\.one$/i],\n        [\"powerpoint-icon\", [\"dark-red\", \"dark-red\"], /\\.pps$/i],\n        [\"powerpoint-icon\", [\"medium-orange\", \"medium-orange\"], /\\.ppsx$/i],\n        [\"powerpoint-icon\", [\"dark-orange\", \"dark-orange\"], /\\.ppt$/i],\n        [\"powerpoint-icon\", [\"medium-red\", \"medium-red\"], /\\.pptx$/i],\n        [\"powerpoint-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.potm$/i],\n        [\"powerpoint-icon\", [\"dark-green\", \"dark-green\"], /\\.mpp$/i],\n        [\"word-icon\", [\"medium-blue\", \"medium-blue\"], /\\.doc$/i],\n        [\"word-icon\", [\"dark-blue\", \"dark-blue\"], /\\.docx$/i],\n        [\"word-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.docm$/i],\n        [\"word-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.docxml$/i],\n        [\"word-icon\", [\"dark-maroon\", \"dark-maroon\"], /\\.dotm$/i],\n        [\"word-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.dotx$/i],\n        [\"word-icon\", [\"medium-orange\", \"medium-orange\"], /\\.wri$/i],\n        [\n          \"minecraft-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /^mcmod\\.info$/i,\n          ,\n          false,\n          ,\n          /\\.forge-config$/i,\n          /^Minecraft$/i,\n        ],\n        [\n          \"mirah-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.dr?uby$/g,\n          ,\n          false,\n          /^mirah$/,\n          /\\.mirah$/i,\n          /^mirah$/i,\n        ],\n        [\"mirah-icon\", [\"light-blue\", \"light-blue\"], /\\.mir(?:ah)?$/g],\n        [\n          \"model-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.obj$/i,\n          ,\n          false,\n          ,\n          /\\.wavefront\\.obj$/i,\n        ],\n        [\n          \"model-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.mtl$/i,\n          ,\n          false,\n          ,\n          /\\.wavefront\\.mtl$/i,\n        ],\n        [\"model-icon\", [\"dark-green\", \"dark-green\"], /\\.stl$/i],\n        [\"model-icon\", [\"medium-orange\", \"medium-orange\"], /\\.u3d$/i],\n        [\n          \"circle-icon\",\n          [\"light-red\", \"light-red\"],\n          /\\.mo$/i,\n          ,\n          false,\n          ,\n          /\\.modelica(?:script)?$/i,\n          /^Modelica$/i,\n        ],\n        [\n          \"modula2-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.mod$/i,\n          ,\n          false,\n          ,\n          /(?:^|\\.)modula-?2(?:\\.|$)/i,\n          /^Modula-2$/i,\n        ],\n        [\"modula2-icon\", [\"medium-green\", \"medium-green\"], /\\.def$/i],\n        [\"modula2-icon\", [\"medium-red\", \"medium-red\"], /\\.m2$/i],\n        [\n          \"monkey-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.monkey$/i,\n          ,\n          false,\n          ,\n          /\\.monkey$/i,\n          /^Monkey$/i,\n        ],\n        [\n          \"moon-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /\\.moon$/i,\n          ,\n          false,\n          /^moon$/,\n          /\\.moon$/i,\n          /^MoonScript$/i,\n        ],\n        [\n          \"mruby-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.mrb$/i,\n          ,\n          false,\n          /^mruby$/,\n        ],\n        [\"msql-icon\", [\"medium-purple\", \"medium-purple\"], /\\.dsql$/i],\n        [\"mupad-icon\", [\"medium-red\", \"medium-red\"], /\\.mu$/i],\n        [\"music-icon\", [\"medium-orange\", \"medium-orange\"], /\\.chord$/i],\n        [\n          \"music-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.midi?$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^MThd/,\n        ],\n        [\n          \"music-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.ly$/i,\n          ,\n          false,\n          ,\n          /\\.(?:At)?lilypond-/i,\n          /^Lily\\s*Pond$/i,\n        ],\n        [\"music-icon\", [\"dark-green\", \"dark-green\"], /\\.ily$/i],\n        [\"music-icon\", [\"dark-red\", \"dark-red\"], /\\.pd$/i],\n        [\n          \"mustache-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.(?:hbs|handlebars|mustache)$/i,\n          ,\n          false,\n          ,\n          /(?:^|\\.)(?:mustache|handlebars)(?:\\.|$)/i,\n          /^Mustache$|^(?:hbs|htmlbars|handlebars)$/i,\n        ],\n        [\n          \"nant-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.build$/i,\n          ,\n          false,\n          ,\n          /\\.nant-build$/i,\n          /^NAnt$/i,\n        ],\n        [\n          \"earth-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.ncl$/i,\n          ,\n          false,\n          ,\n          /\\.ncl$/i,\n          /^NCAR Command Language \\(NCL\\)$/i,\n        ],\n        [\n          \"neko-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.neko$/i,\n          ,\n          false,\n          /^neko$/,\n          /\\.neko$/i,\n          /^nek[0o]$/i,\n        ],\n        [\"amx-icon\", [\"medium-blue\", \"medium-blue\"], /\\.axs$/i],\n        [\"amx-icon\", [\"dark-blue\", \"dark-blue\"], /\\.axi$/i],\n        [\"netlogo-icon\", [\"medium-red\", \"medium-red\"], /\\.nlogo$/i],\n        [\n          \"nginx-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.nginxconf$/i,\n          ,\n          false,\n          ,\n          /\\.nginx$/i,\n          /^NGINX$|^nginx[\\W_ \\t]?c[0o]nfigurati[0o]n[\\W_ \\t]?file$/i,\n        ],\n        [\"nib-icon\", [\"dark-orange\", \"dark-orange\"], /\\.nib$/i],\n        [\n          \"nimrod-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.nim(?:rod)?$/i,\n          ,\n          false,\n          ,\n          /\\.nim$/i,\n          /^Nimrod$/i,\n        ],\n        [\n          \"shuriken-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.ninja$/i,\n          ,\n          false,\n          /^ninja$/,\n          /\\.ninja$/i,\n          /^ninja$/i,\n        ],\n        [\n          \"nit-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.nit$/i,\n          ,\n          false,\n          ,\n          /\\.nit$/i,\n          /^Nit$/i,\n        ],\n        [\n          \"nix-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.nix$/i,\n          ,\n          false,\n          ,\n          /\\.nix$/i,\n          /^Nix$|^nix[0o]s$/i,\n        ],\n        [\n          \"nmap-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.nse$/i,\n          ,\n          false,\n          ,\n          /\\.nmap$/i,\n          /^Nmap$/i,\n        ],\n        [\"node-icon\", [\"medium-green\", \"medium-green\"], /\\.njs$|\\.nvmrc$/i],\n        [\"node-icon\", [\"dark-green\", \"dark-green\"], /\\.node-version$/i],\n        [\n          \"nsis-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.nsi$/i,\n          ,\n          false,\n          /^nsis$/,\n          /\\.nsis$/i,\n          /^nsis$/i,\n        ],\n        [\"nsis-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.nsh$/i],\n        [\n          \"recycle-icon\",\n          [\"light-green\", \"light-green\"],\n          /\\.nu$/i,\n          ,\n          false,\n          /^nush$/,\n          /\\.nu$/i,\n          /^Nu$|^nush$/i,\n        ],\n        [\"recycle-icon\", [\"dark-green\", \"dark-green\"], /^Nukefile$/],\n        [\"nuget-icon\", [\"medium-blue\", \"medium-blue\"], /\\.nuspec$/i],\n        [\"nuget-icon\", [\"dark-purple\", \"dark-purple\"], /\\.pkgproj$/i],\n        [\"numpy-icon\", [\"dark-blue\", \"dark-blue\"], /\\.numpy$/i],\n        [\"numpy-icon\", [\"medium-blue\", \"medium-blue\"], /\\.numpyw$/i],\n        [\"numpy-icon\", [\"medium-orange\", \"medium-orange\"], /\\.numsc$/i],\n        [\"nunjucks-icon\", [\"dark-green\", \"dark-green\"], /\\.(?:nunjucks|njk)$/i],\n        [\n          \"objc-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.mm?$/i,\n          ,\n          false,\n          ,\n          /\\.objc(?:pp)?$/i,\n          /^Objective-C$|^(?:Obj-?C|ObjectiveC)(?:\\+\\+)?$/i,\n        ],\n        [\"objc-icon\", [\"dark-red\", \"dark-red\"], /\\.pch$/i],\n        [\"objc-icon\", [\"dark-green\", \"dark-green\"], /\\.x$/i],\n        [\n          \"objj-icon\",\n          [\"dark-orange\", \"dark-orange\"],\n          /\\.j$/i,\n          ,\n          false,\n          ,\n          /\\.objj$/i,\n          /^Objective-J$|^(?:Obj-?J|ObjectiveJ)$/i,\n        ],\n        [\"objj-icon\", [\"dark-red\", \"dark-red\"], /\\.sj$/i],\n        [\n          \"ocaml-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.ml$/i,\n          ,\n          false,\n          /ocaml(?:run|script)?/,\n          /\\.ocaml$/i,\n          /^OCaml$/i,\n        ],\n        [\"ocaml-icon\", [\"dark-orange\", \"dark-orange\"], /\\.mli$/i],\n        [\"ocaml-icon\", [\"medium-red\", \"medium-red\"], /\\.eliom$/i],\n        [\"ocaml-icon\", [\"dark-red\", \"dark-red\"], /\\.eliomi$/i],\n        [\"ocaml-icon\", [\"medium-green\", \"medium-green\"], /\\.ml4$/i],\n        [\n          \"ocaml-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.mll$/i,\n          ,\n          false,\n          /^ocamllex$/,\n          /\\.ocamllex$/i,\n          /^OCaml$|^[0o]camllex$/i,\n        ],\n        [\n          \"ocaml-icon\",\n          [\"dark-yellow\", \"dark-yellow\"],\n          /\\.mly$/i,\n          ,\n          false,\n          /^menhir$/,\n          /\\.menhir$/i,\n          /^OCaml$|^menhir$/i,\n        ],\n        [\n          \"ooc-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.ooc$/i,\n          ,\n          false,\n          ,\n          /\\.ooc$/i,\n          /^OOC$/i,\n        ],\n        [\n          \"opa-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.opa$/i,\n          ,\n          false,\n          ,\n          /\\.opa$/i,\n          /^Opa$/i,\n        ],\n        [\n          \"opencl-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.opencl$/i,\n          ,\n          false,\n          ,\n          /\\.opencl$/i,\n          /^OpenCL$/i,\n        ],\n        [\n          \"progress-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.p$/i,\n          ,\n          false,\n          ,\n          /\\.abl$/i,\n          /^OpenEdge ABL$|^(?:progress|openedge|abl)$/i,\n        ],\n        [\"openoffice-icon\", [\"medium-blue\", \"medium-blue\"], /\\.odt$/i],\n        [\"openoffice-icon\", [\"dark-blue\", \"dark-blue\"], /\\.ott$/i],\n        [\"openoffice-icon\", [\"dark-purple\", \"dark-purple\"], /\\.fodt$/i],\n        [\"openoffice-icon\", [\"medium-green\", \"medium-green\"], /\\.ods$/i],\n        [\"openoffice-icon\", [\"dark-green\", \"dark-green\"], /\\.ots$/i],\n        [\"openoffice-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.fods$/i],\n        [\"openoffice-icon\", [\"medium-purple\", \"medium-purple\"], /\\.odp$/i],\n        [\"openoffice-icon\", [\"dark-pink\", \"dark-pink\"], /\\.otp$/i],\n        [\"openoffice-icon\", [\"medium-pink\", \"medium-pink\"], /\\.fodp$/i],\n        [\"openoffice-icon\", [\"medium-red\", \"medium-red\"], /\\.odg$/i],\n        [\"openoffice-icon\", [\"dark-red\", \"dark-red\"], /\\.otg$/i],\n        [\"openoffice-icon\", [\"dark-orange\", \"dark-orange\"], /\\.fodg$/i],\n        [\"openoffice-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.odf$/i],\n        [\"openoffice-icon\", [\"light-pink\", \"light-pink\"], /\\.odb$/i],\n        [\n          \"scad-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.scad$/i,\n          ,\n          false,\n          ,\n          /\\.scad$/i,\n          /^OpenSCAD$/i,\n        ],\n        [\"scad-icon\", [\"medium-yellow\", \"medium-yellow\"], /\\.jscad$/i],\n        [\"org-icon\", [\"dark-green\", \"dark-green\"], /\\.org$/i],\n        [\n          \"osx-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.dmg$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\x78\\x01\\x73\\x0D\\x62\\x62\\x60/,\n        ],\n        [\n          \"ox-icon\",\n          [\"medium-cyan\", \"dark-cyan\"],\n          /\\.ox$/i,\n          ,\n          false,\n          ,\n          /\\.ox$/i,\n          /^Ox$/i,\n        ],\n        [\"ox-icon\", [\"medium-green\", \"dark-green\"], /\\.oxh$/i],\n        [\"ox-icon\", [\"medium-blue\", \"dark-blue\"], /\\.oxo$/i],\n        [\n          \"oxygene-icon\",\n          [\"medium-cyan\", \"dark-cyan\"],\n          /\\.oxygene$/i,\n          ,\n          false,\n          ,\n          /\\.oxygene$/i,\n          /^Oxygene$/i,\n        ],\n        [\n          \"oz-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /\\.oz$/i,\n          ,\n          false,\n          ,\n          /\\.oz$/i,\n          /^Oz$/i,\n        ],\n        [\"pan-icon\", [\"medium-red\", \"medium-red\"], /\\.pan$/i],\n        [\n          \"papyrus-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.psc$/i,\n          ,\n          false,\n          ,\n          /(?:^|\\.)(?:papyrus\\.skyrim|compiled-?papyrus|papyrus-assembly)(?:\\.|$)/i,\n          /^Papyrus$/i,\n        ],\n        [\n          \"parrot-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.parrot$/i,\n          ,\n          false,\n          /^parrot$/,\n        ],\n        [\n          \"parrot-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.pasm$/i,\n          ,\n          false,\n          ,\n          /\\.parrot\\.pasm$/i,\n          /^Parrot$|^pasm$/i,\n        ],\n        [\n          \"parrot-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.pir$/i,\n          ,\n          false,\n          ,\n          /\\.parrot\\.pir$/i,\n          /^Parrot$|^pir$/i,\n        ],\n        [\n          \"pascal-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.pas(?:cal)?$/i,\n          ,\n          false,\n          /pascal|instantfpc/,\n          /\\.pascal$/i,\n          /^Pascal$/i,\n        ],\n        [\"pascal-icon\", [\"medium-blue\", \"medium-blue\"], /\\.dfm$/i],\n        [\"pascal-icon\", [\"dark-blue\", \"dark-blue\"], /\\.dpr$/i],\n        [\"pascal-icon\", [\"dark-purple\", \"dark-purple\"], /\\.lpr$/i],\n        [\"patch-icon\", [\"medium-green\", \"medium-green\"], /\\.patch$/i],\n        [\n          \"pawn-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.pwn$/i,\n          ,\n          false,\n          ,\n          /\\.pwn$/i,\n          /^PAWN$/i,\n        ],\n        [\n          \"pdf-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.pdf$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^%PDF/,\n        ],\n        [\n          \"perl-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.p(?:er)?l$|\\.t$/i,\n          ,\n          false,\n          /^perl$/,\n          /\\.perl$/i,\n          /^perl$/i,\n        ],\n        [\"perl-icon\", [\"dark-purple\", \"dark-purple\"], /\\.ph$/i],\n        [\"perl-icon\", [\"medium-purple\", \"medium-purple\"], /\\.plx$/i],\n        [\"perl-icon\", [\"dark-blue\", \"dark-blue\"], /\\.pm$/i],\n        [\"perl-icon\", [\"medium-red\", \"medium-red\"], /\\.(?:psgi|xs)$/i],\n        [\n          \"perl6-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.pl6$/i,\n          ,\n          false,\n          /^perl6$/,\n          /(?:^|\\.)perl6(?:fe)?(?=\\.|$)/,\n          /^(?:pl6|Perl\\s*6)$/i,\n        ],\n        [\"perl6-icon\", [\"light-blue\", \"light-blue\"], /\\.[tp]6$|\\.6pl$/i],\n        [\"perl6-icon\", [\"dark-pink\", \"dark-pink\"], /\\.(?:pm6|p6m)$/i],\n        [\"perl6-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.6pm$/i],\n        [\"perl6-icon\", [\"dark-purple\", \"dark-purple\"], /\\.nqp$/i],\n        [\"perl6-icon\", [\"medium-blue\", \"medium-blue\"], /\\.p6l$/i],\n        [\"perl6-icon\", [\"dark-green\", \"dark-green\"], /\\.pod6$/i],\n        [\"perl6-icon\", [\"medium-green\", \"medium-green\"], /^Rexfile$/],\n        [\n          \"phalcon-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.volt$/i,\n          ,\n          false,\n          ,\n          /\\.volt$/i,\n          /^Phalcon$/i,\n        ],\n        [\n          \"php-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.php(?:[st\\d]|_cs)?$/i,\n          ,\n          false,\n          /^php$/,\n          /\\.php$/i,\n          /^PHP$/i,\n          /^<\\?php/,\n        ],\n        [\"php-icon\", [\"dark-green\", \"dark-green\"], /^Phakefile/],\n        [\"pickle-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.pkl$/i],\n        [\n          \"pike-icon\",\n          [\"dark-cyan\", \"dark-cyan\"],\n          /\\.pike$/i,\n          ,\n          false,\n          /^pike$/,\n        ],\n        [\"pike-icon\", [\"medium-blue\", \"medium-blue\"], /\\.pmod$/i],\n        [\n          \"sql-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.(?:pls|pck|pks|plb|plsql|pkb)$/i,\n          ,\n          false,\n          ,\n          /\\.plsql(?:\\.oracle)?(?:\\.|$)/i,\n          /^PLSQL$/i,\n        ],\n        [\"pod-icon\", [\"dark-blue\", \"dark-blue\"], /\\.pod$/i],\n        [\n          \"pogo-icon\",\n          [\"medium-orange\", \"dark-orange\"],\n          /\\.pogo$/i,\n          ,\n          false,\n          ,\n          /\\.pogoscript$/i,\n          /^PogoScript$/i,\n        ],\n        [\n          \"pony-icon\",\n          [\"light-maroon\", \"light-maroon\"],\n          /\\.pony$/i,\n          ,\n          false,\n          ,\n          /\\.pony$/i,\n          /^Pony$/i,\n        ],\n        [\n          \"postcss-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.p(?:ost)?css$/i,\n          ,\n          false,\n          /^postcss$/,\n          /\\.postcss$/i,\n          /^p[0o]stcss$/i,\n        ],\n        [\n          \"postcss-icon\",\n          [\"dark-pink\", \"dark-pink\"],\n          /\\.sss$/i,\n          ,\n          false,\n          /^sugarss$/,\n          /\\.sugarss$/i,\n          /^PostCSS$|^sugarss$/i,\n        ],\n        [\"postcss-icon\", [\"medium-orange\", \"dark-orange\"], /\\.postcssrc$/i],\n        [\n          \"postscript-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.ps$/i,\n          ,\n          false,\n          ,\n          /\\.postscript$/i,\n          /^PostScript$|^p[0o]stscr$/i,\n          /^%!PS/,\n        ],\n        [\"postscript-icon\", [\"medium-orange\", \"medium-orange\"], /\\.eps$/i],\n        [\"postscript-icon\", [\"dark-blue\", \"dark-blue\"], /\\.pfa$/i],\n        [\"postscript-icon\", [\"medium-green\", \"medium-green\"], /\\.afm$/i],\n        [\"povray-icon\", [\"dark-blue\", \"dark-blue\"], /\\.pov$/i],\n        [\"powerbuilder-icon\", [\"medium-blue\", \"medium-blue\"], /\\.pbl$|\\.sra$/i],\n        [\"powerbuilder-icon\", [\"dark-blue\", \"dark-blue\"], /\\.pbt$/i],\n        [\"powerbuilder-icon\", [\"medium-red\", \"medium-red\"], /\\.srw$/i],\n        [\"powerbuilder-icon\", [\"medium-orange\", \"medium-orange\"], /\\.sru$/i],\n        [\"powerbuilder-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.srp$/i],\n        [\"powerbuilder-icon\", [\"medium-purple\", \"medium-purple\"], /\\.srj$/i],\n        [\n          \"powershell-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.ps1$/i,\n          ,\n          false,\n          ,\n          /\\.powershell$/i,\n          /^PowerShell$|^p[0o]sh$/i,\n        ],\n        [\"powershell-icon\", [\"dark-blue\", \"dark-blue\"], /\\.psd1$/i],\n        [\"powershell-icon\", [\"medium-purple\", \"medium-purple\"], /\\.psm1$/i],\n        [\"powershell-icon\", [\"dark-purple\", \"dark-purple\"], /\\.ps1xml$/i],\n        [\"print-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.ppd$/i],\n        [\n          \"processing-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.pde$/i,\n          ,\n          false,\n          ,\n          /\\.processing$/i,\n          /^Processing$/i,\n        ],\n        [\n          \"prolog-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.pro$/i,\n          ,\n          false,\n          /^swipl$/,\n          /\\.prolog$/i,\n          /^Prolog$/i,\n        ],\n        [\"prolog-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.prolog$/i],\n        [\n          \"prolog-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.yap$/i,\n          ,\n          false,\n          /^yap$/,\n        ],\n        [\n          \"propeller-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.spin$/i,\n          ,\n          false,\n          ,\n          /\\.spin$/i,\n          /^Propeller Spin$/i,\n        ],\n        [\n          \"pug-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.pug$/i,\n          ,\n          false,\n          ,\n          /\\.pug$/i,\n          /^Pug$/i,\n        ],\n        [\n          \"puppet-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.pp$/i,\n          ,\n          false,\n          /^puppet$/,\n          /\\.puppet$/i,\n          /^puppet$/i,\n        ],\n        [\"puppet-icon\", [\"dark-blue\", \"dark-blue\"], /Modulefile$/i],\n        [\n          \"purebasic-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.pb$/i,\n          ,\n          false,\n          /^purebasic$/,\n          /\\.purebasic$/i,\n          /^purebasic$/i,\n        ],\n        [\"purebasic-icon\", [\"dark-orange\", \"dark-orange\"], /\\.pbi$/i],\n        [\n          \"purescript-icon\",\n          [\"dark-purple\", \"dark-purple\"],\n          /\\.purs$/i,\n          ,\n          false,\n          ,\n          /\\.purescript$/i,\n          /^PureScript$/i,\n        ],\n        [\n          \"python-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.py$|\\.bzl$|\\.py3$|\\.?(?:pypirc|pythonrc|python-venv)$/i,\n          ,\n          false,\n          /python[\\d.]*/,\n          /\\.python$/i,\n          /^Python$|^rusth[0o]n$/i,\n        ],\n        [\"python-icon\", [\"medium-blue\", \"medium-blue\"], /\\.ipy$/i],\n        [\n          \"python-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.isolate$|\\.gypi$|\\.pyt$/i,\n        ],\n        [\n          \"python-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.pep$|\\.pyde$/i,\n          ,\n          false,\n          /^pep8$/,\n          /\\.pep8$/i,\n          /^Python$|^pep8$/i,\n        ],\n        [\"python-icon\", [\"medium-green\", \"medium-green\"], /\\.gyp$/i],\n        [\"python-icon\", [\"dark-purple\", \"dark-purple\"], /\\.pyp$/i],\n        [\"python-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.pyw$/i],\n        [\"python-icon\", [\"dark-pink\", \"dark-pink\"], /\\.tac$/i],\n        [\"python-icon\", [\"dark-red\", \"dark-red\"], /\\.wsgi$/i],\n        [\"python-icon\", [\"medium-yellow\", \"dark-yellow\"], /\\.xpy$/i],\n        [\n          \"python-icon\",\n          [\"medium-pink\", \"medium-pink\"],\n          /\\.rpy$/i,\n          ,\n          false,\n          ,\n          /\\.renpy$/i,\n          /^Python$|^Ren'?Py$/i,\n        ],\n        [\n          \"python-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /^(?:BUCK|BUILD|SConstruct|SConscript)$/,\n        ],\n        [\n          \"python-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /^(?:Snakefile|WATCHLISTS)$/,\n        ],\n        [\"python-icon\", [\"dark-maroon\", \"dark-maroon\"], /^wscript$/],\n        [\n          \"r-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.(?:r|Rprofile|rsx|rd)$/i,\n          ,\n          false,\n          /^Rscript$/,\n          /\\.r$/i,\n          /^R$|^(?:Rscript|splus|Rlang)$/i,\n        ],\n        [\n          \"racket-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.rkt$/i,\n          ,\n          false,\n          /^racket$/,\n          /\\.racket$/i,\n          /^racket$/i,\n        ],\n        [\"racket-icon\", [\"medium-blue\", \"medium-blue\"], /\\.rktd$/i],\n        [\"racket-icon\", [\"light-red\", \"light-red\"], /\\.rktl$/i],\n        [\n          \"racket-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.scrbl$/i,\n          ,\n          false,\n          /^scribble$/,\n          /\\.scribble$/i,\n          /^Racket$|^scribble$/i,\n        ],\n        [\n          \"raml-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.raml$/i,\n          ,\n          false,\n          ,\n          /\\.raml$/i,\n          /^RAML$/i,\n        ],\n        [\n          \"rascal-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /\\.rsc$/i,\n          ,\n          false,\n          ,\n          /\\.rascal$/i,\n          /^Rascal$/i,\n        ],\n        [\n          \"rdoc-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.rdoc$/i,\n          ,\n          false,\n          ,\n          /\\.rdoc$/i,\n          /^RDoc$/i,\n        ],\n        [\"xojo-icon\", [\"medium-green\", \"medium-green\"], /\\.rbbas$/i],\n        [\"xojo-icon\", [\"dark-green\", \"dark-green\"], /\\.rbfrm$/i],\n        [\"xojo-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.rbmnu$/i],\n        [\"xojo-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.rbres$/i],\n        [\"xojo-icon\", [\"medium-blue\", \"medium-blue\"], /\\.rbtbar$/i],\n        [\"xojo-icon\", [\"dark-blue\", \"dark-blue\"], /\\.rbuistate$/i],\n        [\n          \"reason-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.re$/i,\n          ,\n          false,\n          /^reason$/,\n          /\\.reason$/i,\n          /^reas[0o]n$/i,\n        ],\n        [\"reason-icon\", [\"medium-orange\", \"medium-orange\"], /\\.rei$/i],\n        [\n          \"rebol-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.reb(?:ol)?$/i,\n          ,\n          false,\n          /^rebol$/,\n          /\\.rebol$/i,\n          /^reb[0o]l$/i,\n        ],\n        [\"rebol-icon\", [\"dark-red\", \"dark-red\"], /\\.r2$/i],\n        [\"rebol-icon\", [\"dark-blue\", \"dark-blue\"], /\\.r3$/i],\n        [\n          \"red-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.red$/i,\n          ,\n          false,\n          ,\n          /\\.red$/i,\n          /^Red$|^red\\/?system$/i,\n        ],\n        [\"red-icon\", [\"light-red\", \"light-red\"], /\\.reds$/i],\n        [\"red-hat-icon\", [\"medium-red\", \"medium-red\"], /\\.rpm$/i],\n        [\"red-hat-icon\", [\"dark-red\", \"dark-red\"], /\\.spec$/i],\n        [\n          \"regex-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.regexp?$/i,\n          ,\n          false,\n          ,\n          /(?:\\.|^)regexp?(?:\\.|$)/i,\n          /^RegExp$/i,\n        ],\n        [\"android-icon\", [\"dark-maroon\", \"dark-maroon\"], /\\.rsh$/i],\n        [\n          \"rst-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.re?st(?:\\.txt)?$/i,\n          ,\n          false,\n          ,\n          /\\.restructuredtext$/i,\n          /^reStructuredText$|^re?st$/i,\n        ],\n        [\n          \"rexx-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.rexx?$/i,\n          ,\n          false,\n          /rexx|regina/i,\n          /\\.rexx$/i,\n          /^REXX$/i,\n        ],\n        [\"rexx-icon\", [\"medium-blue\", \"medium-blue\"], /\\.pprx$/i],\n        [\n          \"riot-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.tag$/i,\n          ,\n          false,\n          ,\n          /\\.riot$/i,\n          /^RiotJS$/i,\n        ],\n        [\"robot-icon\", [\"medium-purple\", \"medium-purple\"], /\\.robot$/i],\n        [\"clojure-icon\", [\"medium-red\", \"medium-red\"], /\\.rg$/i],\n        [\"rss-icon\", [\"medium-orange\", \"medium-orange\"], /\\.rss$/i],\n        [\n          \"ruby-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.(?:rb|ru|ruby|erb|gemspec|god|mspec|pluginspec|podspec|rabl|rake|opal)$|^\\.?(?:irbrc|gemrc|pryrc|rspec|ruby-(?:gemset|version))$/i,\n          ,\n          false,\n          /(?:mac|j)?ruby|rake|rbx/,\n          /\\.ruby$/i,\n          /^Ruby$|^(?:rbx?|rake|jruby|macruby)$/i,\n        ],\n        [\n          \"ruby-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^(?:Appraisals|(?:Rake|Gem|[bB]uild|Berks|Cap|Danger|Deliver|Fast|Guard|Jar|Maven|Pod|Puppet|Snap)file(?:\\.lock)?)$|^rails$/,\n        ],\n        [\n          \"ruby-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.(?:jbuilder|rbuild|rb[wx]|builder)$/i,\n        ],\n        [\"ruby-icon\", [\"dark-yellow\", \"dark-yellow\"], /\\.watchr$/i],\n        [\n          \"rust-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.rs$/i,\n          ,\n          false,\n          /^rust$/,\n          /\\.rust$/i,\n          /^rust$/i,\n        ],\n        [\"rust-icon\", [\"light-maroon\", \"light-maroon\"], /\\.rlib$/i],\n        [\n          \"sage-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.sage$/i,\n          ,\n          false,\n          /^sage$/,\n          /\\.sage$/i,\n          /^sage$/i,\n        ],\n        [\"sage-icon\", [\"dark-blue\", \"dark-blue\"], /\\.sagews$/i],\n        [\n          \"saltstack-icon\",\n          [\"medium-blue\", \"dark-blue\"],\n          /\\.sls$/i,\n          ,\n          false,\n          ,\n          /\\.salt$/i,\n          /^SaltStack$|^Salt(?:State)?$/i,\n        ],\n        [\n          \"sas-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.sas$/i,\n          ,\n          false,\n          ,\n          /\\.sas$/i,\n          /^SAS$/i,\n        ],\n        [\n          \"sass-icon\",\n          [\"light-pink\", \"light-pink\"],\n          /\\.scss$/i,\n          ,\n          false,\n          /^scss$/,\n          /\\.scss$/i,\n          /^Sass$|^scss$/i,\n        ],\n        [\n          \"sass-icon\",\n          [\"dark-pink\", \"dark-pink\"],\n          /\\.sass$/i,\n          ,\n          false,\n          /^sass$/,\n          /\\.sass$/i,\n          /^sass$/i,\n        ],\n        [\"sbt-icon\", [\"dark-purple\", \"dark-purple\"], /\\.sbt$/i],\n        [\n          \"scala-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.(?:sc|scala)$/i,\n          ,\n          false,\n          /^scala$/,\n          /\\.scala$/i,\n          /^Scala$/i,\n        ],\n        [\n          \"scheme-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.scm$/i,\n          ,\n          false,\n          /guile|bigloo|chicken/,\n          /\\.scheme$/i,\n          /^Scheme$/i,\n        ],\n        [\"scheme-icon\", [\"medium-blue\", \"medium-blue\"], /\\.sld$/i],\n        [\"scheme-icon\", [\"medium-purple\", \"medium-purple\"], /\\.sps$/i],\n        [\n          \"scilab-icon\",\n          [\"dark-purple\", \"dark-purple\"],\n          /\\.sci$/i,\n          ,\n          false,\n          /^scilab$/,\n          /\\.scilab$/i,\n          /^scilab$/i,\n        ],\n        [\"scilab-icon\", [\"dark-blue\", \"dark-blue\"], /\\.sce$/i],\n        [\"scilab-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.tst$/i],\n        [\"secret-icon\", [null, null], /\\.secret$/i],\n        [\n          \"self-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.self$/i,\n          ,\n          false,\n          ,\n          /\\.self$/i,\n          /^Self$/i,\n        ],\n        [\n          \"graph-icon\",\n          [\"light-red\", \"light-red\"],\n          /\\.csv$/i,\n          ,\n          false,\n          ,\n          /(?:^|\\.)csv(?:\\.semicolon)?(?:\\.|$)/i,\n        ],\n        [\"graph-icon\", [\"light-green\", \"light-green\"], /\\.(?:tab|tsv)$/i],\n        [\"graph-icon\", [\"medium-green\", \"medium-green\"], /\\.dif$/i],\n        [\"graph-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.slk$/i],\n        [\"sf-icon\", [\"light-orange\", \"light-orange\"], /\\.sfproj$/i],\n        [\n          \"terminal-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.(?:sh|rc|bats|bash|tool|install|command)$/i,\n          ,\n          false,\n          /bash|sh|zsh|rc/,\n          /\\.shell$/i,\n          /^(?:sh|shell|Shell-?Script|Bash)$/i,\n        ],\n        [\n          \"terminal-icon\",\n          [\"dark-purple\", \"dark-purple\"],\n          /^(?:\\.?bash(?:rc|[-_]?(?:profile|login|logout|history|prompt))|_osc|config|install-sh|PKGBUILD)$/i,\n        ],\n        [\"terminal-icon\", [\"dark-yellow\", \"dark-yellow\"], /\\.ksh$/i],\n        [\n          \"terminal-icon\",\n          [\"medium-yellow\", \"dark-yellow\"],\n          /\\.sh-session$/i,\n          ,\n          false,\n          ,\n          /\\.shell-session$/i,\n          /^(?:Bash|Shell|Sh)[-\\s]*(?:Session|Console)$/i,\n        ],\n        [\n          \"terminal-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.zsh(?:-theme|_history)?$|^\\.?(?:antigen|zpreztorc|zlogin|zlogout|zprofile|zshenv|zshrc)$|\\.tmux$/i,\n        ],\n        [\n          \"terminal-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.fish$|^\\.fishrc$|\\.tcsh$/i,\n          ,\n          false,\n          /^fish$/,\n          /\\.fish$/i,\n          /^fish$/i,\n        ],\n        [\"terminal-icon\", [\"medium-red\", \"medium-red\"], /\\.inputrc$/i],\n        [\n          \"terminal-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /^(?:configure|config\\.(?:guess|rpath|status|sub)|depcomp|libtool|compile)$/,\n        ],\n        [\n          \"terminal-icon\",\n          [\"dark-purple\", \"dark-purple\"],\n          /^\\/(?:private\\/)?etc\\/(?:[^\\/]+\\/)*(?:profile$|nanorc$|rc\\.|csh\\.)/i,\n          ,\n          true,\n        ],\n        [\"terminal-icon\", [\"medium-yellow\", \"medium-yellow\"], /\\.csh$/i],\n        [\"shen-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.shen$/i],\n        [\"shopify-icon\", [\"medium-green\", \"medium-green\"], /\\.liquid$/i],\n        [\"sigils-icon\", [\"dark-red\", \"dark-red\"], /\\.sigils$/i],\n        [\n          \"silverstripe-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.ss$/i,\n          ,\n          false,\n          ,\n          /(?:^|\\.)ss(?:template)?(?:\\.|$)/i,\n          /^SilverStripe$/i,\n        ],\n        [\"sketch-icon\", [\"medium-orange\", \"medium-orange\"], /\\.sketch$/i],\n        [\n          \"slash-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.sl$/i,\n          ,\n          false,\n          ,\n          /\\.slash$/i,\n          /^Slash$/i,\n        ],\n        [\n          \"android-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.smali$/i,\n          ,\n          false,\n          ,\n          /\\.smali$/i,\n          /^Smali$/i,\n        ],\n        [\n          \"smarty-icon\",\n          [\"medium-yellow\", \"dark-yellow\"],\n          /\\.tpl$/i,\n          ,\n          false,\n          ,\n          /\\.smarty$/i,\n          /^Smarty$/i,\n        ],\n        [\"snyk-icon\", [\"dark-purple\", \"dark-purple\"], /\\.snyk$/i],\n        [\n          \"clojure-icon\",\n          [\"medium-yellow\", \"dark-yellow\"],\n          /\\.(?:sma|sp)$/i,\n          ,\n          false,\n          ,\n          /\\.sp$/i,\n          /^SourcePawn$|^s[0o]urcem[0o]d$/i,\n        ],\n        [\n          \"sparql-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.sparql$/i,\n          ,\n          false,\n          ,\n          /\\.rq$/i,\n          /^SPARQL$/i,\n        ],\n        [\"sparql-icon\", [\"dark-blue\", \"dark-blue\"], /\\.rq$/i],\n        [\n          \"sqf-icon\",\n          [\"dark-maroon\", \"dark-maroon\"],\n          /\\.sqf$/i,\n          ,\n          false,\n          /^sqf$/,\n          /\\.sqf$/i,\n          /^sqf$/i,\n        ],\n        [\"sqf-icon\", [\"dark-red\", \"dark-red\"], /\\.hqf$/i],\n        [\n          \"sql-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.(?:my)?sql$/i,\n          ,\n          false,\n          /^sql$/,\n          /\\.sql$/i,\n          /^sql$/i,\n        ],\n        [\"sql-icon\", [\"medium-blue\", \"medium-blue\"], /\\.ddl$/i],\n        [\"sql-icon\", [\"medium-green\", \"medium-green\"], /\\.udf$/i],\n        [\"sql-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.viw$/i],\n        [\"sql-icon\", [\"dark-blue\", \"dark-blue\"], /\\.prc$/i],\n        [\"sql-icon\", [\"medium-purple\", \"medium-purple\"], /\\.db2$/i],\n        [\"sqlite-icon\", [\"medium-blue\", \"medium-blue\"], /\\.sqlite$/i],\n        [\"sqlite-icon\", [\"dark-blue\", \"dark-blue\"], /\\.sqlite3$/i],\n        [\"sqlite-icon\", [\"medium-purple\", \"medium-purple\"], /\\.db$/i],\n        [\"sqlite-icon\", [\"dark-purple\", \"dark-purple\"], /\\.db3$/i],\n        [\n          \"squirrel-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.nut$/i,\n          ,\n          false,\n          ,\n          /\\.nut$/i,\n          /^Squirrel$/i,\n        ],\n        [\"key-icon\", [\"medium-yellow\", \"medium-yellow\"], /\\.pub$/i],\n        [\"key-icon\", [\"medium-orange\", \"medium-orange\"], /\\.pem$/i],\n        [\"key-icon\", [\"medium-blue\", \"medium-blue\"], /\\.key$|\\.crt$/i],\n        [\"key-icon\", [\"medium-purple\", \"medium-purple\"], /\\.der$/i],\n        [\"key-icon\", [\"medium-red\", \"medium-red\"], /^id_rsa/],\n        [\n          \"key-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.glyphs\\d*License$|^git-credential-osxkeychain$/i,\n        ],\n        [\"key-icon\", [\"dark-green\", \"dark-green\"], /^(?:master\\.)?passwd$/i],\n        [\n          \"stan-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.stan$/i,\n          ,\n          false,\n          ,\n          /\\.stan$/i,\n          /^Stan$/i,\n        ],\n        [\n          \"stata-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.do$/i,\n          ,\n          false,\n          /^stata$/,\n          /\\.stata$/i,\n          /^stata$/i,\n        ],\n        [\"stata-icon\", [\"dark-blue\", \"dark-blue\"], /\\.ado$/i],\n        [\"stata-icon\", [\"light-blue\", \"light-blue\"], /\\.doh$/i],\n        [\"stata-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.ihlp$/i],\n        [\n          \"stata-icon\",\n          [\"dark-cyan\", \"dark-cyan\"],\n          /\\.mata$/i,\n          ,\n          false,\n          /^mata$/,\n          /\\.mata$/i,\n          /^Stata$|^mata$/i,\n        ],\n        [\"stata-icon\", [\"light-cyan\", \"light-cyan\"], /\\.matah$/i],\n        [\"stata-icon\", [\"medium-purple\", \"medium-purple\"], /\\.sthlp$/i],\n        [\"storyist-icon\", [\"medium-blue\", \"medium-blue\"], /\\.story$/i],\n        [\n          \"strings-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.strings$/i,\n          ,\n          false,\n          ,\n          /\\.strings$/i,\n          /^Strings$/i,\n        ],\n        [\n          \"stylus-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.styl$/i,\n          ,\n          false,\n          ,\n          /\\.stylus$/i,\n          /^Stylus$/i,\n        ],\n        [\n          \"sublime-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.(?:stTheme|sublime[-_](?:build|commands|completions|keymap|macro|menu|mousemap|project|settings|theme|workspace|metrics|session|snippet))$/i,\n        ],\n        [\"sublime-icon\", [\"dark-orange\", \"dark-orange\"], /\\.sublime-syntax$/i],\n        [\n          \"scd-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.scd$/i,\n          ,\n          false,\n          /sclang|scsynth/,\n          /\\.supercollider$/i,\n          /^SuperCollider$/i,\n        ],\n        [\n          \"svg-icon\",\n          [\"dark-yellow\", \"dark-yellow\"],\n          /\\.svg$/i,\n          ,\n          false,\n          ,\n          /\\.svg$/i,\n          /^SVG$/i,\n        ],\n        [\n          \"swift-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.swift$/i,\n          ,\n          false,\n          ,\n          /\\.swift$/i,\n          /^Swift$/i,\n        ],\n        [\"sysverilog-icon\", [\"medium-blue\", \"dark-blue\"], /\\.sv$/i],\n        [\"sysverilog-icon\", [\"medium-green\", \"dark-green\"], /\\.svh$/i],\n        [\"sysverilog-icon\", [\"medium-cyan\", \"dark-cyan\"], /\\.vh$/i],\n        [\"tag-icon\", [\"medium-blue\", \"medium-blue\"], /\\.?c?tags$/i],\n        [\"tag-icon\", [\"medium-red\", \"medium-red\"], /\\.gemtags/i],\n        [\n          \"tcl-icon\",\n          [\"dark-orange\", \"dark-orange\"],\n          /\\.tcl$/i,\n          ,\n          false,\n          /tclsh|wish/,\n          /\\.tcl$/i,\n          /^Tcl$/i,\n        ],\n        [\"tcl-icon\", [\"medium-orange\", \"medium-orange\"], /\\.adp$/i],\n        [\"tcl-icon\", [\"medium-red\", \"medium-red\"], /\\.tm$/i],\n        [\n          \"coffee-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.tea$/i,\n          ,\n          false,\n          ,\n          /\\.tea$/i,\n          /^Tea$/i,\n        ],\n        [\"tt-icon\", [\"medium-blue\", \"medium-blue\"], /\\.tt2?$/i],\n        [\"tt-icon\", [\"medium-purple\", \"medium-purple\"], /\\.tt3$/i],\n        [\"tern-icon\", [\"medium-blue\", \"medium-blue\"], /\\.tern-project$/i],\n        [\n          \"terraform-icon\",\n          [\"dark-purple\", \"dark-purple\"],\n          /\\.tf(?:vars)?$/i,\n          ,\n          false,\n          ,\n          /\\.terra(?:form)?$/i,\n          /^Terraform$/i,\n        ],\n        [\n          \"tex-icon\",\n          [\"medium-blue\", \"dark-blue\"],\n          /\\.tex$|\\.ltx$|\\.lbx$/i,\n          ,\n          false,\n          ,\n          /(?:^|\\.)latex(?:\\.|$)/i,\n          /^TeX$|^latex$/i,\n        ],\n        [\"tex-icon\", [\"medium-green\", \"dark-green\"], /\\.aux$|\\.ins$/i],\n        [\n          \"tex-icon\",\n          [\"medium-red\", \"dark-red\"],\n          /\\.sty$|\\.texi$/i,\n          ,\n          false,\n          ,\n          /(?:^|\\.)tex(?:\\.|$)/i,\n          /^TeX$/i,\n        ],\n        [\"tex-icon\", [\"medium-maroon\", \"dark-maroon\"], /\\.dtx$/i],\n        [\n          \"tex-icon\",\n          [\"medium-orange\", \"dark-orange\"],\n          /\\.cls$|\\.mkiv$|\\.mkvi$|\\.mkii$/i,\n        ],\n        [\n          \"text-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.te?xt$|\\.irclog$|\\.uot$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\xEF\\xBB\\xBF|^\\xFF\\xFE/,\n        ],\n        [\n          \"text-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.log$|^Terminal[-_\\s]Saved[-_\\s]Output$|\\.brf$/i,\n        ],\n        [\n          \"text-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.git[\\/\\\\]description$/,\n          ,\n          true,\n        ],\n        [\n          \"text-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.err$|\\.no$|^(?:bug-report|fdl|for-release|tests)$/i,\n        ],\n        [\"text-icon\", [\"dark-red\", \"dark-red\"], /\\.rtf$|\\.uof$/i],\n        [\"text-icon\", [\"dark-blue\", \"dark-blue\"], /\\.i?nfo$/i],\n        [\"text-icon\", [\"dark-purple\", \"dark-purple\"], /\\.abt$|\\.sub$/i],\n        [\"text-icon\", [\"dark-orange\", \"dark-orange\"], /\\.ans$/i],\n        [\"text-icon\", [\"medium-yellow\", \"medium-yellow\"], /\\.etx$/i],\n        [\"text-icon\", [\"medium-orange\", \"medium-orange\"], /\\.msg$/i],\n        [\"text-icon\", [\"medium-purple\", \"medium-purple\"], /\\.srt$|\\.uop$/i],\n        [\"text-icon\", [\"medium-cyan\", \"medium-cyan\"], /\\.(?:utxt|utf8)$/i],\n        [\n          \"text-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.weechatlog$|\\.uos$/i,\n        ],\n        [\n          \"textile-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.textile$/i,\n          ,\n          false,\n          ,\n          /\\.textile$/i,\n          /^Textile$/i,\n        ],\n        [\"textmate-icon\", [\"dark-green\", \"dark-green\"], /\\.tmcg$/i],\n        [\"textmate-icon\", [\"dark-purple\", \"dark-purple\"], /\\.tmLanguage$/i],\n        [\"textmate-icon\", [\"medium-blue\", \"medium-blue\"], /\\.tmCommand$/i],\n        [\"textmate-icon\", [\"dark-blue\", \"dark-blue\"], /\\.tmPreferences$/i],\n        [\"textmate-icon\", [\"dark-orange\", \"dark-orange\"], /\\.tmSnippet$/i],\n        [\"textmate-icon\", [\"medium-pink\", \"medium-pink\"], /\\.tmTheme$/i],\n        [\"textmate-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.tmMacro$/i],\n        [\n          \"textmate-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.yaml-tmlanguage$/i,\n        ],\n        [\n          \"textmate-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.JSON-tmLanguage$/i,\n        ],\n        [\"thor-icon\", [\"medium-orange\", \"medium-orange\"], /\\.thor$/i],\n        [\"thor-icon\", [\"dark-orange\", \"dark-orange\"], /^Thorfile$/i],\n        [\n          \"tsx-icon\",\n          [\"light-blue\", \"light-blue\"],\n          /\\.tsx$/i,\n          ,\n          false,\n          ,\n          /\\.tsx$/i,\n          /^TSX$/i,\n        ],\n        [\n          \"turing-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.tu$/i,\n          ,\n          false,\n          ,\n          /\\.turing$/i,\n          /^Turing$/i,\n        ],\n        [\n          \"twig-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.twig$/i,\n          ,\n          false,\n          ,\n          /\\.twig$/i,\n          /^Twig$/i,\n        ],\n        [\n          \"txl-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.txl$/i,\n          ,\n          false,\n          ,\n          /\\.txl$/i,\n          /^TXL$/i,\n        ],\n        [\n          \"ts-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.ts$/i,\n          ,\n          false,\n          ,\n          /\\.ts$/i,\n          /^(?:ts|Type[-\\s]*Script)$/i,\n        ],\n        [\n          \"unity3d-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.anim$/i,\n          ,\n          false,\n          /^shaderlab$/,\n          /\\.shaderlab$/i,\n          /^Unity3D$|^shaderlab$/i,\n        ],\n        [\"unity3d-icon\", [\"dark-green\", \"dark-green\"], /\\.asset$/i],\n        [\"unity3d-icon\", [\"medium-red\", \"medium-red\"], /\\.mat$/i],\n        [\"unity3d-icon\", [\"dark-red\", \"dark-red\"], /\\.meta$/i],\n        [\"unity3d-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.prefab$/i],\n        [\"unity3d-icon\", [\"medium-blue\", \"medium-blue\"], /\\.unity$/i],\n        [\"unity3d-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.unityproj$/i],\n        [\"uno-icon\", [\"dark-blue\", \"dark-blue\"], /\\.uno$/i],\n        [\n          \"unreal-icon\",\n          [null, null],\n          /\\.uc$/i,\n          ,\n          false,\n          ,\n          /\\.uc$/i,\n          /^UnrealScript$/i,\n        ],\n        [\"link-icon\", [\"dark-blue\", \"dark-blue\"], /\\.url$/i],\n        [\n          \"urweb-icon\",\n          [\"medium-maroon\", \"medium-maroon\"],\n          /\\.ur$/i,\n          ,\n          false,\n          ,\n          /\\.ur$/i,\n          /^UrWeb$|^Ur(?:\\/Web)?$/i,\n        ],\n        [\"urweb-icon\", [\"dark-blue\", \"dark-blue\"], /\\.urs$/i],\n        [\"vagrant-icon\", [\"medium-cyan\", \"medium-cyan\"], /^Vagrantfile$/i],\n        [\n          \"gnome-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.vala$/i,\n          ,\n          false,\n          /^vala$/,\n          /\\.vala$/i,\n          /^vala$/i,\n        ],\n        [\"gnome-icon\", [\"dark-purple\", \"dark-purple\"], /\\.vapi$/i],\n        [\n          \"varnish-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.vcl$/i,\n          ,\n          false,\n          ,\n          /(?:^|\\.)(?:varnish|vcl)(?:\\.|$)/i,\n          /^VCL$/i,\n        ],\n        [\n          \"verilog-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.v$/i,\n          ,\n          false,\n          /^verilog$/,\n          /\\.verilog$/i,\n          /^veril[0o]g$/i,\n        ],\n        [\"verilog-icon\", [\"medium-red\", \"medium-red\"], /\\.veo$/i],\n        [\n          \"vhdl-icon\",\n          [\"dark-green\", \"dark-green\"],\n          /\\.vhdl$/i,\n          ,\n          false,\n          /^vhdl$/,\n          /\\.vhdl$/i,\n          /^vhdl$/i,\n        ],\n        [\"vhdl-icon\", [\"medium-green\", \"medium-green\"], /\\.vhd$/i],\n        [\"vhdl-icon\", [\"dark-blue\", \"dark-blue\"], /\\.vhf$/i],\n        [\"vhdl-icon\", [\"medium-blue\", \"medium-blue\"], /\\.vhi$/i],\n        [\"vhdl-icon\", [\"dark-purple\", \"dark-purple\"], /\\.vho$/i],\n        [\"vhdl-icon\", [\"medium-purple\", \"medium-purple\"], /\\.vhs$/i],\n        [\"vhdl-icon\", [\"dark-red\", \"dark-red\"], /\\.vht$/i],\n        [\"vhdl-icon\", [\"dark-orange\", \"dark-orange\"], /\\.vhw$/i],\n        [\n          \"video-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.3gpp?$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^.{4}ftyp3g/,\n        ],\n        [\n          \"video-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.(?:mp4|m4v|h264)$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^.{4}ftyp/,\n        ],\n        [\n          \"video-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.avi$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^MLVI/,\n        ],\n        [\n          \"video-icon\",\n          [\"medium-cyan\", \"medium-cyan\"],\n          /\\.mov$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^.{4}moov/,\n        ],\n        [\n          \"video-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.mkv$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\x1AEß£\\x93B\\x82\\x88matroska/,\n        ],\n        [\n          \"video-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.flv$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^FLV\\x01/,\n        ],\n        [\n          \"video-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /\\.webm$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\x1A\\x45\\xDF\\xA3/,\n        ],\n        [\n          \"video-icon\",\n          [\"medium-red\", \"medium-red\"],\n          /\\.mpe?g$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^\\0{2}\\x01[\\xB3\\xBA]/,\n        ],\n        [\n          \"video-icon\",\n          [\"dark-purple\", \"dark-purple\"],\n          /\\.(?:asf|wmv)$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^0&²u\\x8EfÏ\\x11¦Ù\\0ª\\0bÎl/,\n        ],\n        [\n          \"video-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.(?:ogm|og[gv])$/i,\n          ,\n          false,\n          ,\n          ,\n          ,\n          /^OggS/,\n        ],\n        [\n          \"vim-icon\",\n          [\"medium-green\", \"medium-green\"],\n          /\\.(?:vim|n?vimrc)$/i,\n          ,\n          false,\n          /Vim?/i,\n          /\\.viml$/i,\n          /^(?:VimL?|NVim|Vim\\s*Script)$/i,\n        ],\n        [\"vim-icon\", [\"dark-green\", \"dark-green\"], /^[gn_]?vim(?:rc|info)$/i],\n        [\n          \"vs-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.(?:vba?|fr[mx]|bas)$/i,\n          ,\n          false,\n          ,\n          /\\.vbnet$/i,\n          /^Visual Studio$|^vb\\.?net$/i,\n        ],\n        [\"vs-icon\", [\"medium-red\", \"medium-red\"], /\\.vbhtml$/i],\n        [\"vs-icon\", [\"medium-green\", \"medium-green\"], /\\.vbs$/i],\n        [\"vs-icon\", [\"dark-blue\", \"dark-blue\"], /\\.csproj$/i],\n        [\"vs-icon\", [\"dark-red\", \"dark-red\"], /\\.vbproj$/i],\n        [\"vs-icon\", [\"dark-purple\", \"dark-purple\"], /\\.vcx?proj$/i],\n        [\"vs-icon\", [\"dark-green\", \"dark-green\"], /\\.vssettings$/i],\n        [\"vs-icon\", [\"medium-maroon\", \"medium-maroon\"], /\\.builds$/i],\n        [\"vs-icon\", [\"medium-orange\", \"medium-orange\"], /\\.sln$/i],\n        [\n          \"vue-icon\",\n          [\"light-green\", \"light-green\"],\n          /\\.vue$/i,\n          ,\n          false,\n          ,\n          /\\.vue$/i,\n          /^Vue$/i,\n        ],\n        [\"owl-icon\", [\"dark-blue\", \"dark-blue\"], /\\.owl$/i],\n        [\n          \"windows-icon\",\n          [\"medium-purple\", \"medium-purple\"],\n          /\\.bat$|\\.cmd$/i,\n          ,\n          false,\n          ,\n          /(?:^|\\.)(?:bat|dosbatch)(?:\\.|$)/i,\n          /^(?:bat|(?:DOS|Win)?Batch)$/i,\n        ],\n        [\"windows-icon\", [null, null], /\\.(?:exe|com|msi)$/i],\n        [\"windows-icon\", [\"medium-blue\", \"medium-blue\"], /\\.reg$/i],\n        [\n          \"x10-icon\",\n          [\"light-maroon\", \"light-maroon\"],\n          /\\.x10$/i,\n          ,\n          false,\n          ,\n          /\\.x10$/i,\n          /^X10$|^xten$/i,\n        ],\n        [\n          \"x11-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.X(?:authority|clients|initrc|profile|resources|session-errors|screensaver)$/i,\n        ],\n        [\"xmos-icon\", [\"medium-orange\", \"medium-orange\"], /\\.xc$/i],\n        [\n          \"appstore-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\.(?:pbxproj|pbxuser|mode\\dv\\3|xcplugindata|xcrequiredplugins)$/i,\n        ],\n        [\"xojo-icon\", [\"medium-green\", \"medium-green\"], /\\.xojo_code$/i],\n        [\"xojo-icon\", [\"medium-blue\", \"medium-blue\"], /\\.xojo_menu$/i],\n        [\"xojo-icon\", [\"medium-red\", \"medium-red\"], /\\.xojo_report$/i],\n        [\"xojo-icon\", [\"dark-green\", \"dark-green\"], /\\.xojo_script$/i],\n        [\"xojo-icon\", [\"dark-purple\", \"dark-purple\"], /\\.xojo_toolbar$/i],\n        [\"xojo-icon\", [\"dark-cyan\", \"dark-cyan\"], /\\.xojo_window$/i],\n        [\"xpages-icon\", [\"medium-blue\", \"medium-blue\"], /\\.xsp-config$/i],\n        [\"xpages-icon\", [\"dark-blue\", \"dark-blue\"], /\\.xsp\\.metadata$/i],\n        [\"xmos-icon\", [\"dark-blue\", \"dark-blue\"], /\\.xpl$/i],\n        [\"xmos-icon\", [\"medium-purple\", \"medium-purple\"], /\\.xproc$/i],\n        [\n          \"sql-icon\",\n          [\"dark-red\", \"dark-red\"],\n          /\\.(?:xquery|xq|xql|xqm|xqy)$/i,\n          ,\n          false,\n          ,\n          /\\.xq$/i,\n          /^XQuery$/i,\n        ],\n        [\n          \"xtend-icon\",\n          [\"dark-purple\", \"dark-purple\"],\n          /\\.xtend$/i,\n          ,\n          false,\n          ,\n          /\\.xtend$/i,\n          /^Xtend$/i,\n        ],\n        [\n          \"yang-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /\\.yang$/i,\n          ,\n          false,\n          ,\n          /\\.yang$/i,\n          /^YANG$/i,\n        ],\n        [\"zbrush-icon\", [\"dark-purple\", \"dark-purple\"], /\\.zpr$/i],\n        [\"zephir-icon\", [\"medium-pink\", \"medium-pink\"], /\\.zep$/i],\n        [\n          \"zimpl-icon\",\n          [\"medium-orange\", \"medium-orange\"],\n          /\\.(?:zimpl|zmpl|zpl)$/i,\n        ],\n        [\"apple-icon\", [\"medium-blue\", \"medium-blue\"], /^com\\.apple\\./, 0.5],\n        [\"apache-icon\", [\"medium-red\", \"medium-red\"], /^httpd\\.conf/i, 0],\n        [\"checklist-icon\", [\"medium-yellow\", \"medium-yellow\"], /TODO/, 0],\n        [\"config-icon\", [null, null], /config|settings|option|pref/i, 0],\n        [\n          \"doge-icon\",\n          [\"medium-yellow\", \"medium-yellow\"],\n          /\\.djs$/i,\n          0,\n          false,\n          ,\n          /\\.dogescript$/i,\n          /^Dogescript$/i,\n        ],\n        [\"gear-icon\", [null, null], /^\\./, 0],\n        [\n          \"book-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /\\b(?:changelog|copying(?:v?\\d)?|install|read[-_]?me)\\b|^licen[sc]es?[-._]/i,\n          0,\n        ],\n        [\n          \"book-icon\",\n          [\"dark-blue\", \"dark-blue\"],\n          /^news(?:[-_.]?[-\\d]+)?$/i,\n          0,\n        ],\n        [\n          \"v8-icon\",\n          [\"medium-blue\", \"medium-blue\"],\n          /^(?:[dv]8|v8[-_.][^.]*|mksnapshot|mkpeephole)$/i,\n          0,\n        ],\n      ],\n      [\n        [\n          69,\n          147,\n          152,\n          154,\n          169,\n          192,\n          195,\n          196,\n          197,\n          198,\n          204,\n          217,\n          239,\n          244,\n          249,\n          251,\n          253,\n          258,\n          287,\n          292,\n          293,\n          303,\n          304,\n          309,\n          331,\n          333,\n          336,\n          343,\n          347,\n          353,\n          362,\n          380,\n          395,\n          398,\n          416,\n          420,\n          421,\n          422,\n          424,\n          431,\n          434,\n          448,\n          451,\n          465,\n          467,\n          468,\n          471,\n          480,\n          481,\n          482,\n          485,\n          486,\n          487,\n          525,\n          526,\n          529,\n          534,\n          555,\n          565,\n          570,\n          571,\n          572,\n          578,\n          580,\n          584,\n          586,\n          590,\n          601,\n          602,\n          626,\n          629,\n          658,\n          669,\n          670,\n          681,\n          688,\n          694,\n          696,\n          709,\n          714,\n          715,\n          745,\n          748,\n          755,\n          760,\n          769,\n          772,\n          778,\n          779,\n          798,\n          800,\n          803,\n          805,\n          808,\n          811,\n          822,\n          823,\n          826,\n          836,\n          838,\n          848,\n          854,\n          858,\n          860,\n          864,\n          865,\n          867,\n          868,\n          871,\n          881,\n          886,\n          903,\n          905,\n          924,\n          928,\n          936,\n          944,\n          987,\n          1000,\n          1003,\n          1005,\n          1023,\n        ],\n        [\n          42,\n          57,\n          69,\n          105,\n          120,\n          121,\n          124,\n          126,\n          129,\n          143,\n          145,\n          147,\n          149,\n          151,\n          152,\n          154,\n          156,\n          157,\n          158,\n          166,\n          167,\n          169,\n          174,\n          192,\n          194,\n          195,\n          196,\n          197,\n          198,\n          204,\n          206,\n          210,\n          211,\n          213,\n          215,\n          216,\n          217,\n          223,\n          224,\n          225,\n          229,\n          230,\n          234,\n          236,\n          237,\n          238,\n          239,\n          242,\n          243,\n          244,\n          249,\n          251,\n          253,\n          255,\n          256,\n          258,\n          275,\n          285,\n          286,\n          287,\n          288,\n          290,\n          291,\n          292,\n          293,\n          294,\n          295,\n          297,\n          300,\n          301,\n          303,\n          304,\n          309,\n          312,\n          314,\n          326,\n          330,\n          336,\n          341,\n          342,\n          343,\n          346,\n          347,\n          350,\n          351,\n          352,\n          353,\n          359,\n          362,\n          365,\n          380,\n          381,\n          382,\n          383,\n          386,\n          390,\n          392,\n          394,\n          395,\n          398,\n          400,\n          416,\n          422,\n          439,\n          440,\n          442,\n          448,\n          451,\n          452,\n          453,\n          454,\n          458,\n          461,\n          463,\n          465,\n          466,\n          467,\n          468,\n          469,\n          470,\n          471,\n          472,\n          473,\n          474,\n          475,\n          479,\n          482,\n          485,\n          486,\n          487,\n          488,\n          489,\n          490,\n          522,\n          524,\n          525,\n          527,\n          529,\n          530,\n          533,\n          534,\n          543,\n          546,\n          547,\n          548,\n          549,\n          553,\n          555,\n          558,\n          560,\n          561,\n          565,\n          570,\n          571,\n          575,\n          578,\n          580,\n          582,\n          584,\n          586,\n          590,\n          600,\n          601,\n          602,\n          603,\n          604,\n          605,\n          612,\n          618,\n          626,\n          629,\n          657,\n          658,\n          664,\n          665,\n          668,\n          669,\n          675,\n          678,\n          679,\n          680,\n          681,\n          685,\n          687,\n          688,\n          689,\n          690,\n          691,\n          694,\n          696,\n          704,\n          707,\n          709,\n          714,\n          715,\n          716,\n          717,\n          718,\n          719,\n          734,\n          738,\n          741,\n          742,\n          744,\n          746,\n          747,\n          748,\n          753,\n          755,\n          760,\n          768,\n          769,\n          774,\n          776,\n          777,\n          778,\n          779,\n          781,\n          792,\n          797,\n          798,\n          801,\n          802,\n          803,\n          805,\n          807,\n          808,\n          811,\n          818,\n          822,\n          823,\n          826,\n          827,\n          828,\n          829,\n          836,\n          838,\n          841,\n          845,\n          847,\n          848,\n          850,\n          854,\n          858,\n          860,\n          862,\n          863,\n          864,\n          865,\n          867,\n          868,\n          871,\n          875,\n          881,\n          884,\n          886,\n          894,\n          896,\n          897,\n          898,\n          900,\n          901,\n          903,\n          905,\n          915,\n          923,\n          924,\n          928,\n          932,\n          933,\n          936,\n          937,\n          938,\n          944,\n          947,\n          951,\n          952,\n          954,\n          970,\n          982,\n          983,\n          984,\n          985,\n          986,\n          987,\n          995,\n          997,\n          1000,\n          1002,\n          1003,\n          1005,\n          1023,\n          1025,\n          1034,\n          1036,\n          1039,\n          1053,\n          1054,\n          1055,\n          1063,\n        ],\n        [41, 150, 282, 283, 284, 321, 889, 959],\n        [\n          42,\n          57,\n          69,\n          105,\n          120,\n          121,\n          124,\n          126,\n          129,\n          143,\n          145,\n          147,\n          149,\n          151,\n          152,\n          154,\n          156,\n          157,\n          158,\n          166,\n          167,\n          169,\n          174,\n          192,\n          194,\n          195,\n          196,\n          197,\n          198,\n          204,\n          206,\n          210,\n          211,\n          213,\n          215,\n          216,\n          217,\n          223,\n          224,\n          225,\n          229,\n          230,\n          234,\n          236,\n          237,\n          238,\n          239,\n          242,\n          243,\n          244,\n          249,\n          251,\n          253,\n          255,\n          256,\n          258,\n          275,\n          276,\n          285,\n          286,\n          287,\n          288,\n          290,\n          291,\n          292,\n          293,\n          294,\n          295,\n          297,\n          300,\n          301,\n          303,\n          304,\n          309,\n          311,\n          312,\n          314,\n          319,\n          326,\n          330,\n          336,\n          341,\n          342,\n          343,\n          346,\n          347,\n          350,\n          351,\n          352,\n          353,\n          359,\n          362,\n          365,\n          380,\n          381,\n          382,\n          383,\n          386,\n          390,\n          392,\n          394,\n          395,\n          398,\n          400,\n          412,\n          416,\n          418,\n          420,\n          421,\n          422,\n          424,\n          431,\n          432,\n          434,\n          439,\n          440,\n          442,\n          448,\n          451,\n          452,\n          453,\n          454,\n          458,\n          461,\n          463,\n          465,\n          466,\n          467,\n          468,\n          469,\n          470,\n          471,\n          472,\n          473,\n          474,\n          475,\n          479,\n          480,\n          481,\n          482,\n          483,\n          485,\n          486,\n          487,\n          488,\n          489,\n          490,\n          522,\n          524,\n          525,\n          527,\n          529,\n          530,\n          533,\n          534,\n          543,\n          546,\n          547,\n          548,\n          549,\n          553,\n          555,\n          558,\n          560,\n          561,\n          565,\n          570,\n          571,\n          575,\n          578,\n          580,\n          582,\n          584,\n          586,\n          590,\n          600,\n          601,\n          602,\n          603,\n          604,\n          605,\n          612,\n          618,\n          626,\n          629,\n          657,\n          658,\n          660,\n          661,\n          664,\n          665,\n          668,\n          669,\n          675,\n          678,\n          679,\n          680,\n          681,\n          685,\n          687,\n          688,\n          689,\n          690,\n          691,\n          694,\n          696,\n          704,\n          707,\n          709,\n          714,\n          715,\n          716,\n          717,\n          718,\n          719,\n          734,\n          738,\n          741,\n          742,\n          744,\n          746,\n          747,\n          748,\n          753,\n          755,\n          760,\n          768,\n          769,\n          774,\n          776,\n          777,\n          778,\n          779,\n          781,\n          792,\n          797,\n          798,\n          801,\n          802,\n          803,\n          805,\n          807,\n          808,\n          811,\n          818,\n          822,\n          823,\n          826,\n          827,\n          828,\n          829,\n          836,\n          838,\n          841,\n          845,\n          847,\n          848,\n          850,\n          854,\n          858,\n          860,\n          862,\n          863,\n          864,\n          865,\n          867,\n          868,\n          871,\n          875,\n          876,\n          881,\n          884,\n          886,\n          894,\n          896,\n          897,\n          898,\n          900,\n          901,\n          903,\n          905,\n          915,\n          923,\n          924,\n          928,\n          932,\n          933,\n          936,\n          937,\n          938,\n          944,\n          947,\n          951,\n          952,\n          954,\n          970,\n          982,\n          983,\n          984,\n          985,\n          986,\n          987,\n          995,\n          997,\n          1000,\n          1002,\n          1003,\n          1005,\n          1023,\n          1025,\n          1034,\n          1036,\n          1039,\n          1053,\n          1054,\n          1055,\n          1063,\n        ],\n        [\n          106,\n          138,\n          178,\n          179,\n          180,\n          181,\n          182,\n          183,\n          184,\n          185,\n          186,\n          188,\n          189,\n          235,\n          261,\n          262,\n          263,\n          264,\n          265,\n          268,\n          273,\n          348,\n          372,\n          373,\n          374,\n          375,\n          376,\n          377,\n          410,\n          411,\n          493,\n          494,\n          495,\n          496,\n          497,\n          498,\n          499,\n          500,\n          501,\n          503,\n          504,\n          505,\n          506,\n          507,\n          509,\n          510,\n          511,\n          512,\n          513,\n          514,\n          516,\n          519,\n          520,\n          601,\n          674,\n          737,\n          754,\n          769,\n          781,\n          957,\n          1013,\n          1014,\n          1015,\n          1016,\n          1017,\n          1018,\n          1019,\n          1020,\n          1021,\n          1022,\n        ],\n      ],\n    ],\n  ];\n\n  /* ---------------------------------------------------------------------------\n   * FileIcons\n   * ------------------------------------------------------------------------- */\n\n  /**\n   * Create FileIcons instance\n   *\n   * @param {Array}   icondb - Icons database\n   * @class\n   * @constructor\n   */\n\n  var FileIcons = function (icondb) {\n    this.db = new IconTables(icondb);\n  };\n\n  /**\n   * Get icon class name of the provided filename. If not found, default to text icon.\n   *\n   * @param {string} name - file name\n   * @return {string}\n   * @public\n   */\n\n  FileIcons.prototype.getClass = function (name) {\n    var match = this.db.matchName(name);\n    return match ? match.getClass() : null;\n  };\n\n  /**\n   * Get icon class name of the provided filename with color. If not found, default to text icon.\n   *\n   * @param {string} name - file name\n   * @return {string}\n   * @public\n   */\n\n  FileIcons.prototype.getClassWithColor = function (name, isTree) {\n    var match = this.db.matchName(name);\n    return match ? match.getClass(0) : getGenericTreeIcons(isTree);\n  };\n\n  const getGenericTreeIcons = (isTree) => {\n    return isTree\n      ? isTree.isOpen\n        ? \"folder-open-icon\"\n        : \"folder-closed-icon\"\n      : \"generic-file-icon\";\n  };\n\n  return new FileIcons(icondb);\n};\n\nexport default fileIcons();\n"
  },
  {
    "path": "content/src/scripts/utils/searchBarWorker.js",
    "content": "export default () => {\n  self.addEventListener(\"message\", (e) => {\n    if (!e) return;\n    let searchTerms = e.data.searchTerms;\n    let URLDetails = e.data.URLDetails;\n    let query = e.data.query;\n\n    const max = (a, b) => {\n      return a > b ? a : b;\n    };\n\n    const fzyIsLower = (s) => {\n      return s.toLowerCase() === s;\n    };\n\n    const fzyIsUpper = (s) => {\n      return s.toUpperCase() === s;\n    };\n\n    const fzyPreComputeBonus = (haystack) => {\n      const SCORE_MATCH_SLASH = 0.9;\n      const SCORE_MATCH_WORD = 0.8;\n      const SCORE_MATCH_CAPITAL = 0.7;\n      const SCORE_MATCH_DOT = 0.6;\n\n      let m = haystack.length;\n      let match_bonus = new Array(m);\n\n      let last_ch = \"/\";\n      for (let i = 0; i < m; i++) {\n        let ch = haystack[i];\n\n        if (last_ch === \"/\") {\n          match_bonus[i] = SCORE_MATCH_SLASH;\n        } else if (last_ch === \"-\" || last_ch === \"_\" || last_ch === \" \") {\n          match_bonus[i] = SCORE_MATCH_WORD;\n        } else if (last_ch === \".\") {\n          match_bonus[i] = SCORE_MATCH_DOT;\n        } else if (fzyIsLower(last_ch) && fzyIsUpper(ch)) {\n          match_bonus[i] = SCORE_MATCH_CAPITAL;\n        } else {\n          match_bonus[i] = 0;\n        }\n\n        last_ch = ch;\n      }\n\n      return match_bonus;\n    };\n\n    const fzyCompute = (needle, haystack, D, M) => {\n      const SCORE_MIN = -Infinity;\n      const SCORE_GAP_LEADING = -0.005;\n      const SCORE_GAP_TRAILING = -0.005;\n      const SCORE_GAP_INNER = -0.01;\n      const SCORE_MATCH_CONSECUTIVE = 1.0;\n\n      let n = needle.length;\n      let m = haystack.length;\n\n      let lower_needle = needle.toLowerCase();\n      let lower_haystack = haystack.toLowerCase();\n\n      let match_bonus = fzyPreComputeBonus(haystack);\n\n      for (let i = 0; i < n; i++) {\n        D[i] = new Array(m);\n        M[i] = new Array(m);\n\n        let prev_score = SCORE_MIN;\n        let gap_score = i === n - 1 ? SCORE_GAP_TRAILING : SCORE_GAP_INNER;\n\n        for (let j = 0; j < m; j++) {\n          if (lower_needle[i] === lower_haystack[j]) {\n            let score = SCORE_MIN;\n            if (!i) {\n              score = j * SCORE_GAP_LEADING + match_bonus[j];\n            } else if (j) {\n              /* i > 0 && j > 0*/\n              score = max(\n                M[i - 1][j - 1] + match_bonus[j],\n                D[i - 1][j - 1] + SCORE_MATCH_CONSECUTIVE\n              );\n            }\n            D[i][j] = score;\n            M[i][j] = prev_score = max(score, prev_score + gap_score);\n          } else {\n            D[i][j] = SCORE_MIN;\n            M[i][j] = prev_score = prev_score + gap_score;\n          }\n        }\n      }\n    };\n\n    const fzyScore = (needle, haystack) => {\n      const SCORE_MIN = -Infinity;\n      const SCORE_MAX = Infinity;\n\n      let n = needle.length;\n      let m = haystack.length;\n\n      if (!n || !m) return SCORE_MIN;\n\n      if (n === m) {\n        return SCORE_MAX;\n      }\n\n      if (m > 1024) {\n        return SCORE_MIN;\n      }\n\n      let D = new Array(n);\n      let M = new Array(n);\n\n      fzyCompute(needle, haystack, D, M);\n\n      return M[n - 1][m - 1];\n    };\n\n    const topNElements = (arr, n) => {\n      if (arr.length <= n) {\n        arr.sort((a, b) => fzyScore(query, b) - fzyScore(query, a));\n        return arr;\n      }\n      const fzyScores = arr.map((x) => fzyScore(query, x));\n      const result = [];\n      for (let i = 0; i < n; i++) {\n        let largestScoreIdx = -1;\n        for (let j = 0; j < fzyScores.length; j++) {\n          if (fzyScores[j]) {\n            if (largestScoreIdx === -1) {\n              largestScoreIdx = j;\n              continue;\n            }\n            if (fzyScores[j] > fzyScores[largestScoreIdx]) {\n              largestScoreIdx = j;\n            }\n          }\n        }\n        result.push(arr[largestScoreIdx]);\n        fzyScores[largestScoreIdx] = null;\n      }\n      return result;\n    };\n\n    const getSearchResults = (searchTerms, URLDetails, query) => {\n      if (\n        searchTerms &&\n        searchTerms[URLDetails.dirFormatted] &&\n        searchTerms[URLDetails.dirFormatted][URLDetails.branchName]\n      ) {\n        const reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g,\n          reHasRegExpChar = RegExp(reRegExpChar.source);\n        const escapeRegExp = (string) =>\n          reHasRegExpChar.test(string)\n            ? string.replace(reRegExpChar, \"\\\\$&\")\n            : string;\n        const regex = new RegExp(\n          query.split(\"\").map(escapeRegExp).join(\".*\"),\n          \"i\"\n        );\n        let resultArray = searchTerms[URLDetails.dirFormatted][\n          URLDetails.branchName\n        ].filter((ele) => ele.match(regex));\n        return topNElements(resultArray, 25);\n      }\n      return [];\n    };\n\n    postMessage(getSearchResults(searchTerms, URLDetails, query));\n  });\n};\n"
  },
  {
    "path": "content/src/scripts/utils/styling.js",
    "content": "export const applyOpenedPageStyling = (width) => {\n  if (document.querySelector(\"nav.super-sidebar\")) {\n    document.querySelector(\".content-wrapper\").style.paddingLeft = width + \"px\";\n    document.querySelector('[data-testid=\"top-bar\"]').style.paddingLeft =\n      24 + width + \"px\";\n    const sidebar = document.querySelector(\"nav.super-sidebar\");\n    if (extractE(window.getComputedStyle(sidebar).transform)) {\n      // sidebar.style.transform = `translateX(0px)`;\n    } else {\n      sidebar.style.transform = `translateX(${width + \"px\"})`;\n    }\n  } else {\n    document.querySelector(\"header\").style.left = width + \"px\";\n    document.querySelector(\"body\").style.marginLeft = width + \"px\";\n    document.querySelector(\"body\").style.overflowX = \"auto\";\n    if (document.querySelector(\".nav-sidebar\")) {\n      document.querySelector(\".nav-sidebar\").style.left = width + \"px\";\n    }\n  }\n};\n\nexport const applyClosedPageStyling = () => {\n  if (document.querySelector(\"nav.super-sidebar\")) {\n    document.querySelector(\".content-wrapper\").style.paddingLeft = 0 + \"px\";\n    document.querySelector('[data-testid=\"top-bar\"]').style.paddingLeft =\n      24 + \"px\";\n    const sidebar = document.querySelector(\"nav.super-sidebar\");\n    if (extractE(window.getComputedStyle(sidebar).transform) > 0) {\n      sidebar.style.transform = `translateX(0px)`;\n    }\n  } else {\n    document.querySelector(\"header\").style.left = \"0\";\n    document.querySelector(\"body\").style.marginLeft = \"0\";\n    if (document.querySelector(\".nav-sidebar\")) {\n      document.querySelector(\".nav-sidebar\").style.left = \"0\";\n    }\n  }\n};\n\nfunction extractE(transformValue) {\n  // Check if the provided transform value is in matrix format\n  if (transformValue && transformValue.startsWith(\"matrix\")) {\n    // Extract the matrix values\n    var matrixRegex =\n      /matrix\\((-?\\d*\\.?\\d+), (-?\\d*\\.?\\d+), (-?\\d*\\.?\\d+), (-?\\d*\\.?\\d+), (-?\\d*\\.?\\d+), (-?\\d*\\.?\\d+)\\)/;\n    var match = matrixRegex.exec(transformValue);\n\n    // If the regex matched successfully\n    if (match) {\n      // Return the 'e' value (horizontal translation)\n      return parseFloat(match[5]);\n    }\n  }\n\n  // If the transform value is not in matrix format or if extraction fails, return null\n  return null;\n}\n"
  },
  {
    "path": "content/src/scripts/utils/themeList.js",
    "content": "import { browserKey } from \"./browser\";\n\nexport const switchTheme = () => {\n  const domain = location.origin;\n  let themeList = JSON.parse(localStorage.getItem(\"spantree-themelist\")) || {};\n\n  if (domain in themeList) {\n    const alteredValue = !themeList[domain];\n    themeList[domain] = alteredValue;\n    if (document.getElementById(\"spantree-theme\") === null) {\n      insertCSS(!alteredValue);\n    } else {\n      document.getElementById(\"spantree-theme\").disabled = !alteredValue;\n    }\n  } else {\n    themeList[domain] = true;\n    if (document.getElementById(\"spantree-theme\") === null) {\n      insertCSS(false);\n    } else {\n      document.getElementById(\"spantree-theme\").disabled = false;\n    }\n  }\n\n  localStorage.setItem(\"spantree-themelist\", JSON.stringify(themeList));\n};\n\nconst insertCSS = (isDisabled) => {\n  // Insert CSS into Head\n  const darkGitlab = document.createElement(\"link\");\n  darkGitlab.id = \"spantree-theme\";\n  darkGitlab.disabled = isDisabled;\n  darkGitlab.rel = \"stylesheet\";\n  darkGitlab.type = \"text/css\";\n  darkGitlab.href = `${browserKey()}-extension://${chrome.i18n.getMessage(\n    \"@@extension_id\"\n  )}/libs/gitlab-dark.css`;\n  document.querySelector(\"head\").appendChild(darkGitlab);\n};\n"
  },
  {
    "path": "content/src/scripts/utils/throttle.js",
    "content": "export function throttle(func, wait, options) {\n  let context, args, result;\n  let timeout = null;\n  let previous = 0;\n  if (!options) options = {};\n  let later = function () {\n    previous = options.leading === false ? 0 : Date.now();\n    timeout = null;\n    result = func.apply(context, args);\n    if (!timeout) context = args = null;\n  };\n  return function () {\n    let now = Date.now();\n    if (!previous && options.leading === false) previous = now;\n    let remaining = wait - (now - previous);\n    context = this;\n    args = arguments;\n    if (remaining <= 0 || remaining > wait) {\n      if (timeout) {\n        clearTimeout(timeout);\n        timeout = null;\n      }\n      previous = now;\n      result = func.apply(context, args);\n      if (!timeout) context = args = null;\n    } else if (!timeout && options.trailing !== false) {\n      timeout = setTimeout(later, remaining);\n    }\n    return result;\n  };\n}\n"
  },
  {
    "path": "content/src/scripts/utils/url.js",
    "content": "export const fetchURLDetails = () => {\n  const pathName = window.location.pathname;\n  const pathNameSplit = pathName\n    .split(\"/\")\n    .filter((pathSub) => pathSub.length !== 0);\n  let dir = [];\n  let branchName = \"master\";\n  if (document.querySelector(\".dropdown-toggle-text\"))\n    branchName = document.querySelector(\".dropdown-toggle-text\").innerText;\n  if (document.querySelector(\".ref-selector\"))\n    branchName = document.querySelector(\".ref-selector\").innerText;\n  let branchNameSplit = branchName\n    .split(\"/\")\n    .filter((pathSub) => pathSub.length !== 0);\n  let branchFound = false;\n  let findingBranch = false;\n  let baseRemovedURLItems = [];\n  for (let i = 0; i < pathNameSplit.length; i++) {\n    if (findingBranch) {\n      if (!branchFound) {\n        i += branchNameSplit.length;\n        branchFound = true;\n      }\n      baseRemovedURLItems.push(pathNameSplit[i]);\n    } else {\n      if (pathNameSplit[i] === \"-\") {\n        i++;\n        findingBranch = true;\n      } else if (\n        pathNameSplit[i] === \"blob\" ||\n        pathNameSplit[i] === \"tree\" ||\n        pathNameSplit[i] === \"blame\" ||\n        pathNameSplit[i] === \"commits\" ||\n        pathNameSplit[i] === \"find_file\"\n      ) {\n        findingBranch = true;\n      } else {\n        dir.push(pathNameSplit[i]);\n      }\n    }\n  }\n  const dirFormatted = dir.join(\"/\");\n  const baseRemovedURL = baseRemovedURLItems.join(\"/\");\n\n  const projectId = document.body.getAttribute(\"data-project-id\");\n\n  return {\n    dir,\n    dirFormatted: dirFormatted,\n    dirURLParam: encodeURIComponent(dir.join(\"/\")),\n    branchName,\n    branchNameURL: encodeURIComponent(branchName),\n    baseRemovedURL: baseRemovedURL,\n    projectId,\n  };\n};\n"
  },
  {
    "path": "content/src/scripts/utils/useEventListener.js",
    "content": "import { useRef, useEffect } from \"react\";\n\nfunction useEventListener(eventName, handler, element = window) {\n  const savedHandler = useRef();\n\n  useEffect(() => {\n    savedHandler.current = handler;\n  }, [handler]);\n\n  useEffect(() => {\n    const isSupported = element && element.addEventListener;\n    if (!isSupported) return;\n\n    const eventListener = (event) => savedHandler.current(event);\n    element.addEventListener(eventName, eventListener);\n\n    return () => {\n      element.removeEventListener(eventName, eventListener);\n    };\n  }, [eventName, element]);\n}\n\nexport default useEventListener;\n"
  },
  {
    "path": "content/webpack.config.js",
    "content": "const path = require(\"path\");\n\nmodule.exports = {\n  mode: process.env.NODE_ENV === \"production\" ? \"production\" : \"development\",\n  devtool: \"cheap-module-source-map\",\n\n  entry: [\"./content/src/scripts/index.js\"],\n\n  output: {\n    filename: \"content.js\",\n    path: path.join(__dirname, \"../\", \"build\"),\n    publicPath: \"/\",\n  },\n\n  resolve: {\n    extensions: [\".js\", \".jsx\", \".json\", \".css\", \".svg\"],\n    modules: [\"node_modules\"],\n  },\n\n  module: {\n    rules: [\n      { test: /\\.css$/, use: [\"style-loader\", \"css-loader\"] },\n      {\n        test: /\\.(jsx|js)?$/,\n        exclude: /(node_modules)/,\n        include: path.join(__dirname, \"src\"),\n        use: {\n          loader: \"babel-loader\",\n          options: {\n            presets: [\"es2015\", \"react\"],\n          },\n        },\n      },\n    ],\n  },\n};\n"
  },
  {
    "path": "event/axios.js",
    "content": "import axios from \"axios\";\n\nconst options = {\n  baseURL: `${window.location.origin}/api/v4/projects/`,\n};\n\nconst inst = axios.create(options);\n\nexport default inst;\n"
  },
  {
    "path": "event/src/actions/API/index.js",
    "content": "import axiosOriginal from \"axios\";\n\nimport * as types from \"../../types/API\";\nimport store from \"../../../../content/src/scripts\";\nimport axios from \"../../../axios\";\n\nexport const getInitialTree = (id, params, reducerDetails) => {\n  let url = `${id}/repository/tree`;\n  url += \"?per_page=10000\";\n  for (let param in params) {\n    url += `&${param}=${params[param]}`;\n  }\n  axios\n    .get(url)\n    .then((res) => {\n      store.dispatch({\n        type: types.FETCH_TREE,\n        payload: res.data,\n        reducerDetails,\n      });\n    })\n    .catch((_err) => {});\n};\n\nexport const openDir = (id, path, params, reducerDetails) => {\n  store.dispatch({\n    type: types.OPEN_DIR,\n    payload: path,\n    reducerDetails,\n  });\n  let url = `${id}/repository/tree`;\n  url += \"?per_page=10000\";\n  for (let param in params) {\n    url += `&${param}=${params[param]}`;\n  }\n  axios\n    .get(url)\n    .then((res) => {\n      store.dispatch({\n        type: types.UPDATE_TREE,\n        payload: res.data,\n        reducerDetails,\n      });\n    })\n    .catch((_err) => {});\n};\n\nexport const closeDir = (path, reducerDetails) => {\n  store.dispatch({\n    type: types.CLOSE_DIR,\n    payload: path,\n    reducerDetails,\n  });\n};\n\nexport const getSearchTerms = (reducerDetails) => {\n  let url = `${window.location.origin}/${reducerDetails.repoName}/`;\n  if (!reducerDetails.compatibilityMode) {\n    url += \"-/\";\n  }\n  url += `files/${reducerDetails.branchName}?format=json`;\n\n  axiosOriginal\n    .get(url)\n    .then((res) => {\n      store.dispatch({\n        type: types.FETCH_SEARCH_TERMS,\n        payload: res.data,\n        reducerDetails,\n      });\n    })\n    .catch((_err) => {});\n};\n"
  },
  {
    "path": "event/src/actions/UI/index.js",
    "content": "import * as types from \"../../types/UI\";\nimport store from \"../../../../content/src/scripts\";\n\nexport const togglePinned = () => {\n  store.dispatch({\n    type: types.TOGGLE_PINNED,\n  });\n};\n\nexport const toggleOpened = (reducerDetails) => {\n  store.dispatch({\n    type: types.TOGGLE_OPENED,\n    reducerDetails,\n  });\n};\n\nexport const setWidth = (width) => {\n  store.dispatch({\n    type: types.SET_WIDTH,\n    payload: width,\n  });\n};\n\nexport const setClicked = (clicked) => {\n  store.dispatch({\n    type: types.SET_CLICKED,\n    payload: clicked,\n  });\n};\n\nexport const optionsChanged = (options) => {\n  store.dispatch({\n    type: types.OPTIONS_CHANGED,\n    payload: options,\n  });\n};\n"
  },
  {
    "path": "event/src/index.js",
    "content": "import thunk from \"redux-thunk\";\nimport { createStore } from \"redux\";\nimport { TabIdentifier } from \"chrome-tab-identifier\";\nimport rootReducer from \"./reducers\";\n\nconst tabIdentifier = new TabIdentifier();\n\nimport { wrapStore, applyMiddleware } from \"@eduardoac-skimlinks/webext-redux\";\n\nconst store = createStore(rootReducer);\n\nwrapStore(applyMiddleware(store, thunk));\n"
  },
  {
    "path": "event/src/reducers/API/searchTerms.js",
    "content": "import { FETCH_SEARCH_TERMS } from \"../../types/API\";\n\nconst initialState = {};\n\nexport default (state = initialState, action) => {\n  switch (action.type) {\n    case FETCH_SEARCH_TERMS:\n      return {\n        ...state,\n        [action.reducerDetails.repoName]: {\n          ...state[action.reducerDetails.repoName],\n          [action.reducerDetails.branchName]: action.payload,\n        },\n      };\n    default:\n      return state;\n  }\n};\n"
  },
  {
    "path": "event/src/reducers/API/tree.js",
    "content": "import produce from \"immer\";\n\nimport { FETCH_TREE, OPEN_DIR, CLOSE_DIR, UPDATE_TREE } from \"../../types/API\";\n\nconst initialState = {};\n\nexport default (state = initialState, action) => {\n  switch (action.type) {\n    case FETCH_TREE:\n      return {\n        ...state,\n        [action.reducerDetails.tabId]: action.payload\n          .map((node) => {\n            return {\n              name: node.name,\n              path: node.path\n                .split(\"/\")\n                .filter((pathSub) => pathSub.length !== 0),\n              isTree:\n                node.type === \"tree\"\n                  ? {\n                      isOpen: false,\n                    }\n                  : false,\n              children: node.type === \"tree\" ? {} : undefined,\n            };\n          })\n          .reduce((map, obj) => {\n            map[obj.name] = obj;\n            return map;\n          }, {}),\n      };\n    case OPEN_DIR:\n      let objectPath = [action.reducerDetails.tabId];\n      for (let i = 0; i < action.payload.length; i++) {\n        objectPath.push(action.payload[i]);\n        if (i !== action.payload.length - 1) {\n          objectPath.push(\"children\");\n        }\n      }\n      objectPath = [...objectPath, \"isTree\", \"isOpen\"];\n      let propName = objectPath.pop();\n\n      let nextState = produce(state, (draft) => {\n        draft = objectPath.reduce((it, prop) => it[prop], draft);\n        draft[propName] = true;\n      });\n      return nextState;\n    case UPDATE_TREE:\n      objectPath = [action.reducerDetails.tabId];\n      for (let i = 0; i < action.reducerDetails.path.length; i++) {\n        objectPath.push(action.reducerDetails.path[i]);\n        if (i !== action.reducerDetails.path.length - 1) {\n          objectPath.push(\"children\");\n        }\n      }\n\n      propName = objectPath.pop();\n\n      const children = action.payload\n        .map((node) => {\n          return {\n            name: node.name,\n            path: node.path\n              .split(\"/\")\n              .filter((pathSub) => pathSub.length !== 0),\n            isTree:\n              node.type === \"tree\"\n                ? {\n                    isOpen: false,\n                  }\n                : false,\n            children: node.type === \"tree\" ? {} : undefined,\n          };\n        })\n        .reduce((map, obj) => {\n          map[obj.name] = obj;\n          return map;\n        }, {});\n\n      nextState = produce(state, (draft) => {\n        draft = objectPath.reduce((it, prop) => it[prop], draft);\n        if (Object.keys(draft[propName][\"children\"]) <= 0) {\n          draft[propName][\"children\"] = children;\n        }\n      });\n      return nextState;\n    case CLOSE_DIR:\n      objectPath = [action.reducerDetails.tabId];\n      for (let i = 0; i < action.payload.length; i++) {\n        objectPath.push(action.payload[i]);\n        if (i !== action.payload.length - 1) {\n          objectPath.push(\"children\");\n        }\n      }\n\n      propName = objectPath.pop();\n      nextState = produce(state, (draft) => {\n        draft = objectPath.reduce((it, prop) => it[prop], draft);\n        draft[propName][\"isTree\"][\"isOpen\"] = false;\n        // draft[propName][\"children\"] = {};\n      });\n      return nextState;\n\n    default:\n      return state;\n  }\n};\n"
  },
  {
    "path": "event/src/reducers/UI/clicked.js",
    "content": "import { SET_CLICKED } from \"../../types/UI\";\n\nconst initialState = false;\n\nexport default (state = initialState, action) => {\n  switch (action.type) {\n    case SET_CLICKED:\n      return action.payload;\n    default:\n      return state;\n  }\n};\n"
  },
  {
    "path": "event/src/reducers/UI/opened.js",
    "content": "import { TOGGLE_OPENED } from \"../../types/UI\";\n\nconst initialState = {};\n\nexport default (state = initialState, action) => {\n  switch (action.type) {\n    case TOGGLE_OPENED:\n      return {\n        ...state,\n        [action.reducerDetails.tabId]:\n          action.reducerDetails.tabId in state\n            ? !state[action.reducerDetails.tabId]\n            : true,\n      };\n    default:\n      return state;\n  }\n};\n"
  },
  {
    "path": "event/src/reducers/UI/options.js",
    "content": "import { OPTIONS_CHANGED } from \"../../types/UI\";\n\nexport const intitialState = {\n  data: {},\n  version: 0,\n};\n\nexport default (state = intitialState, action) => {\n  switch (action.type) {\n    case OPTIONS_CHANGED: {\n      const newData = {\n        data: action.payload,\n        version: !isNaN(state.version) ? state.version + 1 : 0,\n      };\n      return newData;\n    }\n    default:\n      return state;\n  }\n};\n"
  },
  {
    "path": "event/src/reducers/UI/pinned.js",
    "content": "import { TOGGLE_PINNED } from \"../../types/UI\";\n\nconst initialState = false;\n\nexport default (state = initialState, action) => {\n  switch (action.type) {\n    case TOGGLE_PINNED:\n      return !state;\n    default:\n      return state;\n  }\n};\n"
  },
  {
    "path": "event/src/reducers/UI/width.js",
    "content": "import { SET_WIDTH } from \"../../types/UI\";\n\nconst initialWidth = 250;\n\nexport default (state = initialWidth, action) => {\n  switch (action.type) {\n    case SET_WIDTH:\n      return action.payload;\n    default:\n      return state;\n  }\n};\n"
  },
  {
    "path": "event/src/reducers/index.js",
    "content": "import { combineReducers } from \"redux\";\n\nimport opened from \"./UI/opened\";\nimport pinned from \"./UI/pinned\";\nimport width from \"./UI/width\";\nimport clicked from \"./UI/clicked\";\nimport options from \"./UI/options\";\nimport tree from \"./API/tree\";\nimport searchTerms from \"./API/searchTerms\";\n\nexport default combineReducers({\n  opened,\n  pinned,\n  width,\n  clicked,\n  options,\n  tree,\n  searchTerms,\n});\n"
  },
  {
    "path": "event/src/types/API.js",
    "content": "export const FETCH_TREE = \"FETCH_TREE\";\nexport const UPDATE_TREE = \"UPDATE_TREE\";\n\nexport const OPEN_DIR = \"OPEN_DIR\";\nexport const CLOSE_DIR = \"CLOSE_DIR\";\n\nexport const FETCH_SEARCH_TERMS = \"FETCH_SEARCH_TERMS\";\n"
  },
  {
    "path": "event/src/types/UI.js",
    "content": "export const TOGGLE_PINNED = \"TOGGLE_PINNED\";\nexport const TOGGLE_OPENED = \"TOGGLE_OPENED\";\n\nexport const SET_WIDTH = \"SET_WIDTH\";\n\nexport const SET_CLICKED = \"SET_CLICKED\";\n\nexport const OPTIONS_CHANGED = \"OPTIONS_CHANGED\";\n"
  },
  {
    "path": "event/webpack.config.js",
    "content": "const path = require(\"path\");\n\nmodule.exports = {\n  mode: process.env.NODE_ENV === \"production\" ? \"production\" : \"development\",\n  devtool: \"cheap-module-source-map\",\n\n  entry: [\"./event/src/index.js\"],\n\n  output: {\n    filename: \"event.js\",\n    path: path.join(__dirname, \"../\", \"build\"),\n  },\n\n  resolve: {\n    extensions: [\".js\", \".json\"],\n    modules: [\"node_modules\"],\n  },\n\n  module: {\n    rules: [\n      {\n        test: /\\.(js)?$/,\n        exclude: /(node_modules)/,\n        include: path.join(__dirname, \"src\"),\n        use: {\n          loader: \"babel-loader\",\n          options: {\n            presets: [\"es2015\", \"react\"],\n          },\n        },\n      },\n    ],\n  },\n};\n"
  },
  {
    "path": "gulpfile.babel.js",
    "content": "import gulp from \"gulp\";\nimport webpack from \"webpack\";\nimport rimraf from \"rimraf\";\nimport log from \"fancy-log\";\nimport PluginError from \"plugin-error\";\nimport rename from \"gulp-rename\";\n\nimport popupWebpackConfig from \"./popup/webpack.config\";\nimport eventWebpackConfig from \"./event/webpack.config\";\nimport contentWebpackConfig from \"./content/webpack.config\";\n\nconst popupJs = (cb) => {\n  webpack(popupWebpackConfig, (err, stats) => {\n    if (err) throw new PluginError(\"webpack\", err);\n\n    log(\"[webpack]\", stats.toString());\n\n    cb();\n  });\n};\n\nconst eventJs = (cb) => {\n  webpack(eventWebpackConfig, (err, stats) => {\n    if (err) throw new PluginError(\"webpack\", err);\n\n    log(\"[webpack]\", stats.toString());\n\n    cb();\n  });\n};\n\nconst contentJs = (cb) => {\n  webpack(contentWebpackConfig, (err, stats) => {\n    if (err) throw new PluginError(\"webpack\", err);\n\n    log(\"[webpack]\", stats.toString());\n\n    cb();\n  });\n};\n\nconst popupHtml = () => {\n  return gulp\n    .src(\"popup/src/index.html\")\n    .pipe(rename(\"popup.html\"))\n    .pipe(gulp.dest(\"./build\"));\n};\n\nconst copyManifest = () => {\n  return gulp.src(\"manifest.json\").pipe(gulp.dest(\"./build\"));\n};\n\nconst clean = (cb) => {\n  rimraf(\"./build\", cb);\n};\n\nconst copyLibs = () => {\n  return gulp\n    .src(\"./content/src/scripts/libs/**/*\")\n    .pipe(gulp.dest(\"./build/libs\"));\n};\n\nconst copyIcons = () => {\n  return gulp.src(\"./icons/**/*\").pipe(gulp.dest(\"./build/icons\"));\n};\n\nconst build = gulp.series(\n  clean,\n  gulp.parallel(\n    copyLibs,\n    copyIcons,\n    copyManifest,\n    popupJs,\n    popupHtml,\n    eventJs,\n    contentJs\n  )\n);\n\ngulp.task(\"watch\", () =>\n  gulp.watch(\n    [\"popup/**/*\", \"content/**/*\", \"event/**/*\", \"manifest.json\"],\n    build\n  )\n);\n\ngulp.task(\"default\", build);\n"
  },
  {
    "path": "license",
    "content": "MIT License\n\nCopyright (c) 2021 Taveesh Anand\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n"
  },
  {
    "path": "manifest.json",
    "content": "{\n  \"manifest_version\": 3,\n  \"name\": \"SpanTree\",\n  \"description\": \"Tree for Gitlab\",\n  \"version\": \"0.0.5.2\",\n  \"background\": {\n    \"service_worker\": \"event.js\"\n  },\n  \"host_permissions\": [\n    \"<all_urls>\"\n  ],\n  \"action\": {\n    \"default_title\": \"SpanTree\",\n    \"default_popup\": \"popup.html\"\n  },\n  \"web_accessible_resources\": [\n    {\n      \"resources\": [\n        \"*.png\",\n        \"*.woff2\",\n        \"*.svg\",\n        \"*.css\"\n      ],\n      \"matches\": [\n        \"<all_urls>\"\n      ]\n    }\n  ],\n  \"content_scripts\": [\n    {\n      \"matches\": [\n        \"<all_urls>\"\n      ],\n      \"css\": [],\n      \"js\": [\n        \"content.js\"\n      ]\n    },\n    {\n      \"run_at\": \"document_start\",\n      \"matches\": [\n        \"<all_urls>\"\n      ],\n      \"css\": [],\n      \"js\": [\n        \"libs/contentDark.js\"\n      ]\n    }\n  ],\n  \"icons\": {\n    \"16\": \"icons/icon16.png\",\n    \"48\": \"icons/icon48.png\",\n    \"64\": \"icons/icon64.png\",\n    \"128\": \"icons/icon128.png\"\n  }\n}"
  },
  {
    "path": "package.json",
    "content": "{\n  \"name\": \"span-tree\",\n  \"version\": \"0.0.1\",\n  \"description\": \"Tree for Gitlab\",\n  \"scripts\": {\n    \"start\": \"gulp && gulp watch\",\n    \"export\": \"NODE_ENV=production npm start\"\n  },\n  \"author\": \"Taveesh Anand\",\n  \"dependencies\": {\n    \"@eduardoac-skimlinks/webext-redux\": \"^3.0.1-release-candidate\",\n    \"axios\": \"^0.21.1\",\n    \"chrome-tab-identifier\": \"0.0.1\",\n    \"fzy.js\": \"^0.4.1\",\n    \"immer\": \"^9.0.2\",\n    \"react\": \"^16.13.0\",\n    \"react-dom\": \"^16.13.0\",\n    \"react-redux\": \"^7.2.0\",\n    \"redux\": \"^4.0.5\",\n    \"redux-thunk\": \"^2.3.0\",\n    \"style-loader\": \"^1.1.3\"\n  },\n  \"devDependencies\": {\n    \"babel-core\": \"^6.24.1\",\n    \"babel-loader\": \"^7.0.0\",\n    \"babel-minify-webpack-plugin\": \"^0.3.1\",\n    \"babel-plugin-transform-es2015-destructuring\": \"^6.23.0\",\n    \"babel-plugin-transform-object-rest-spread\": \"^6.26.0\",\n    \"babel-preset-es2015\": \"^6.24.1\",\n    \"babel-preset-react\": \"^6.24.1\",\n    \"css-loader\": \"^5.2.5\",\n    \"fancy-log\": \"^2.0.0\",\n    \"file-loader\": \"^6.0.0\",\n    \"gulp\": \"^4.0.2\",\n    \"gulp-rename\": \"^2.0.0\",\n    \"plugin-error\": \"^2.0.0\",\n    \"rimraf\": \"^2.7.1\",\n    \"webpack\": \"^5.37.1\"\n  }\n}"
  },
  {
    "path": "popup/src/index.html",
    "content": "<!DOCTYPE html>\n<html class=\"no-js\" lang=\"\">\n  <head>\n    <meta charset=\"utf-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge,chrome=1\" />\n    <title>RCR Example</title>\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n  </head>\n  <body>\n    <div id=\"app\"></div>\n\n    <script src=\"popup.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "popup/src/scripts/components/app/App.jsx",
    "content": "import React from \"react\";\nimport { connect } from \"react-redux\";\n\nimport Options from \"../options\";\n\nimport \"./styles.css\";\n\nconst optionList = [\n  {\n    name: \"Compatibility Mode\",\n    keyName: \"compatibility-mode\",\n    type: \"CheckBox\",\n    defaultVal: true,\n  },\n  {\n    name: \"Auto Theme\",\n    keyName: \"auto-theme\",\n    type: \"CheckBox\",\n    defaultVal: false,\n  },\n];\n\nconst App = ({ dispatch, options }) => {\n  return (\n    <div className=\"spantree-popup\">\n      <div className=\"spantree-options-heading\">SpanTree Options</div>\n      <Options\n        options={options.data}\n        optionList={optionList}\n        changeOptions={(newOptions) => {\n          dispatch({\n            type: \"OPTIONS_CHANGED\",\n            payload: newOptions,\n          });\n        }}\n      />\n    </div>\n  );\n};\n\nconst mapStateToProps = (state) => {\n  return {\n    options: state.options,\n  };\n};\n\nexport default connect(mapStateToProps)(App);\n"
  },
  {
    "path": "popup/src/scripts/components/app/styles.css",
    "content": "body {\n  margin: 0;\n}\n\n.spantree-popup {\n  font-family: Arial, Helvetica, sans-serif;\n  width: 200px;\n  padding: 0;\n  margin: 0;\n}\n\n.spantree-options-heading {\n  background-color: rgb(77, 61, 146);\n  font-size: 20px;\n  font-weight: bold;\n  padding: 8px;\n  color: white;\n  display: flex;\n  justify-content: center;\n  user-select: none;\n}\n\n.spantree-options {\n  display: flex;\n  flex-direction: column;\n  justify-content: space-around;\n}\n"
  },
  {
    "path": "popup/src/scripts/components/options/index.js",
    "content": "export { default } from \"./options\";\n"
  },
  {
    "path": "popup/src/scripts/components/options/options.jsx",
    "content": "import React from \"react\";\n\nimport \"./styles.css\";\n\nfunction Option({ id, value, label, type, handleChange }) {\n  switch (type) {\n    case \"CheckBox\":\n      return (\n        <label className=\"option\">\n          <div className=\"option-name\">{label}</div>\n          <input\n            type=\"checkbox\"\n            value={label}\n            checked={value}\n            onChange={() => handleChange(id, !value)}\n          />\n        </label>\n      );\n    default:\n      return null;\n  }\n}\n\nfunction Options({ options, optionList, changeOptions }) {\n  const handleChangeOptions = (key, value) => {\n    changeOptions({\n      ...options,\n      [key]: value,\n    });\n  };\n\n  return optionList.map((option) => (\n    <Option\n      id={option.keyName}\n      value={\n        option.keyName in options ? options[option.keyName] : option.defaultVal\n      }\n      label={option.name}\n      type={option.type}\n      handleChange={handleChangeOptions}\n    />\n  ));\n}\n\nexport default Options;\n"
  },
  {
    "path": "popup/src/scripts/components/options/styles.css",
    "content": ".option {\n  display: flex;\n  flex-direction: row;\n  justify-content: space-between;\n  margin: 8px;\n}\n\n.option:hover {\n  cursor: pointer;\n}\n\n.option input:hover {\n  cursor: pointer;\n}\n.option-name {\n  font-size: 14px;\n  user-select: none;\n}\n"
  },
  {
    "path": "popup/src/scripts/index.js",
    "content": "import React from \"react\";\nimport { render } from \"react-dom\";\n\nimport App from \"./components/app/App\";\n\nimport { Store } from \"@eduardoac-skimlinks/webext-redux\";\nimport { Provider } from \"react-redux\";\n\nconst proxyStore = new Store();\n\nproxyStore.ready().then(() => {\n  render(\n    <Provider store={proxyStore}>\n      <App />\n    </Provider>,\n    document.getElementById(\"app\")\n  );\n});\n\nexport default proxyStore;\n"
  },
  {
    "path": "popup/webpack.config.js",
    "content": "const path = require(\"path\");\n\nmodule.exports = {\n  mode: process.env.NODE_ENV === \"production\" ? \"production\" : \"development\",\n  devtool: \"cheap-module-source-map\",\n\n  entry: [\"./popup/src/scripts/index.js\"],\n\n  output: {\n    filename: \"popup.js\",\n    path: path.join(__dirname, \"../\", \"build\"),\n    publicPath: \"/\",\n  },\n\n  resolve: {\n    extensions: [\".js\", \".jsx\", \".css\", \".json\"],\n    modules: [\"node_modules\"],\n  },\n\n  module: {\n    rules: [\n      { test: /\\.css$/, use: [\"style-loader\", \"css-loader\"] },\n      {\n        test: /\\.(jsx|js)?$/,\n        exclude: /(node_modules)/,\n        include: path.join(__dirname, \"src\"),\n        use: {\n          loader: \"babel-loader\",\n          options: {\n            presets: [\"es2015\", \"react\"],\n          },\n        },\n      },\n    ],\n  },\n};\n"
  }
]