Initial commit
							
								
								
									
										24
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,24 @@ | |||||||
|  | # Logs | ||||||
|  | logs | ||||||
|  | *.log | ||||||
|  | npm-debug.log* | ||||||
|  | yarn-debug.log* | ||||||
|  | yarn-error.log* | ||||||
|  | pnpm-debug.log* | ||||||
|  | lerna-debug.log* | ||||||
|  |  | ||||||
|  | node_modules | ||||||
|  | dist | ||||||
|  | dist-ssr | ||||||
|  | *.local | ||||||
|  |  | ||||||
|  | # Editor directories and files | ||||||
|  | .vscode/* | ||||||
|  | !.vscode/extensions.json | ||||||
|  | .idea | ||||||
|  | .DS_Store | ||||||
|  | *.suo | ||||||
|  | *.ntvs* | ||||||
|  | *.njsproj | ||||||
|  | *.sln | ||||||
|  | *.sw? | ||||||
							
								
								
									
										93
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,93 @@ | |||||||
|  | # Project Mycelium Website | ||||||
|  |  | ||||||
|  | A multi-page website for Project Mycelium built with React, Vite, TypeScript, and Tailwind CSS. | ||||||
|  |  | ||||||
|  | ## Tech Stack | ||||||
|  |  | ||||||
|  | - **Framework**: React 19 | ||||||
|  | - **Build Tool**: Vite 7 | ||||||
|  | - **Language**: TypeScript | ||||||
|  | - **Styling**: Tailwind CSS 4 | ||||||
|  | - **Routing**: React Router DOM 7 | ||||||
|  | - **Animations**: Framer Motion 11 | ||||||
|  |  | ||||||
|  | ## Project Structure | ||||||
|  |  | ||||||
|  | ``` | ||||||
|  | src/ | ||||||
|  | ├── components/          # Shared components | ||||||
|  | │   ├── AnimatedSection.tsx | ||||||
|  | │   ├── Button.tsx | ||||||
|  | │   ├── CircleBackground.tsx | ||||||
|  | │   ├── Container.tsx | ||||||
|  | │   ├── Header.tsx | ||||||
|  | │   ├── Layout.tsx | ||||||
|  | │   └── Logo.tsx | ||||||
|  | ├── pages/              # Page-specific components | ||||||
|  | │   ├── home/           # Home page blocks | ||||||
|  | │   ├── cloud/          # Cloud page blocks | ||||||
|  | │   ├── network/        # Network page blocks | ||||||
|  | │   │   ├── animations/ # SVG animations | ||||||
|  | │   │   ├── Hero.tsx | ||||||
|  | │   │   ├── About.tsx | ||||||
|  | │   │   ├── Features.tsx | ||||||
|  | │   │   ├── PrimaryFeatures.tsx | ||||||
|  | │   │   ├── SecondaryFeatures.tsx | ||||||
|  | │   │   ├── CallToAction.tsx | ||||||
|  | │   │   └── NetworkPage.tsx | ||||||
|  | │   └── agents/         # Agents page blocks | ||||||
|  | ├── styles/ | ||||||
|  | │   └── tailwind.css    # Tailwind configuration | ||||||
|  | └── App.tsx            # Main app with routing | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | ## Pages | ||||||
|  |  | ||||||
|  | - **Home** (`/`) - Main landing page with placeholder content | ||||||
|  | - **Cloud** (`/cloud`) - Mycelium Cloud information (placeholder) | ||||||
|  | - **Network** (`/network`) - Full Network page with: | ||||||
|  |   - Hero section | ||||||
|  |   - Our Mission (About) | ||||||
|  |   - Core Components (Features with animations) | ||||||
|  |   - How It Works | ||||||
|  |   - Roadmap | ||||||
|  |   - Call to Action | ||||||
|  | - **Agents** (`/agents`) - Mycelium Agents information (placeholder) | ||||||
|  |  | ||||||
|  | ## Development | ||||||
|  |  | ||||||
|  | Install dependencies: | ||||||
|  | ```bash | ||||||
|  | npm install | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Run development server: | ||||||
|  | ```bash | ||||||
|  | npm run dev | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Build for production: | ||||||
|  | ```bash | ||||||
|  | npm run build | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Preview production build: | ||||||
|  | ```bash | ||||||
|  | npm run preview | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | ## Styling | ||||||
|  |  | ||||||
|  | The project follows the same styling conventions as the source Mycelium website: | ||||||
|  | - **Font**: Inter (Google Fonts) | ||||||
|  | - **Colors**: Custom gray scale and cyan accent | ||||||
|  | - **Animations**: Framer Motion with reduced motion support | ||||||
|  | - **Design**: Tailwind CSS with custom theme extensions | ||||||
|  |  | ||||||
|  | ## Migration Notes | ||||||
|  |  | ||||||
|  | This website consolidates multiple one-pager sites into a single multi-page application. The Network page contains fully migrated content from the original www_mycelium_net repository, including: | ||||||
|  | - All animated SVG components | ||||||
|  | - Responsive layouts | ||||||
|  | - Hover effects and transitions | ||||||
|  | - Accessibility features | ||||||
							
								
								
									
										23
									
								
								eslint.config.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,23 @@ | |||||||
|  | import js from '@eslint/js' | ||||||
|  | import globals from 'globals' | ||||||
|  | import reactHooks from 'eslint-plugin-react-hooks' | ||||||
|  | import reactRefresh from 'eslint-plugin-react-refresh' | ||||||
|  | import tseslint from 'typescript-eslint' | ||||||
|  | import { defineConfig, globalIgnores } from 'eslint/config' | ||||||
|  |  | ||||||
|  | export default defineConfig([ | ||||||
|  |   globalIgnores(['dist']), | ||||||
|  |   { | ||||||
|  |     files: ['**/*.{ts,tsx}'], | ||||||
|  |     extends: [ | ||||||
|  |       js.configs.recommended, | ||||||
|  |       tseslint.configs.recommended, | ||||||
|  |       reactHooks.configs['recommended-latest'], | ||||||
|  |       reactRefresh.configs.vite, | ||||||
|  |     ], | ||||||
|  |     languageOptions: { | ||||||
|  |       ecmaVersion: 2020, | ||||||
|  |       globals: globals.browser, | ||||||
|  |     }, | ||||||
|  |   }, | ||||||
|  | ]) | ||||||
							
								
								
									
										22
									
								
								index.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,22 @@ | |||||||
|  | <!doctype html> | ||||||
|  | <html lang="en"> | ||||||
|  |   <head> | ||||||
|  |     <meta charset="UTF-8" /> | ||||||
|  |     <link rel="icon" type="image/x-icon" href="/favicon.ico" /> | ||||||
|  |     <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | ||||||
|  |     <title>Mycelium - Unleash the Power of Decentralized Networks</title> | ||||||
|  |     <meta name="description" content="Discover Mycelium, an end-to-end encrypted IPv6 overlay network. The future of secure, efficient, and scalable networking." /> | ||||||
|  |     <link rel="preconnect" href="https://fonts.googleapis.com" /> | ||||||
|  |     <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin /> | ||||||
|  |     <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet" /> | ||||||
|  |     <style> | ||||||
|  |       :root { | ||||||
|  |         --font-inter: 'Inter', sans-serif; | ||||||
|  |       } | ||||||
|  |     </style> | ||||||
|  |   </head> | ||||||
|  |   <body> | ||||||
|  |     <div id="root"></div> | ||||||
|  |     <script type="module" src="/src/main.tsx"></script> | ||||||
|  |   </body> | ||||||
|  | </html> | ||||||
							
								
								
									
										4350
									
								
								package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										42
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,42 @@ | |||||||
|  | { | ||||||
|  |   "name": "www_try", | ||||||
|  |   "private": true, | ||||||
|  |   "version": "0.0.0", | ||||||
|  |   "type": "module", | ||||||
|  |   "scripts": { | ||||||
|  |     "dev": "vite", | ||||||
|  |     "build": "tsc -b && vite build", | ||||||
|  |     "lint": "eslint .", | ||||||
|  |     "preview": "vite preview" | ||||||
|  |   }, | ||||||
|  |   "dependencies": { | ||||||
|  |     "react": "^19.1.1", | ||||||
|  |     "react-dom": "^19.1.1", | ||||||
|  |     "react-router-dom": "^7.1.3", | ||||||
|  |     "framer-motion": "^11.18.0", | ||||||
|  |     "clsx": "^2.1.1", | ||||||
|  |     "react-type-animation": "^3.2.0", | ||||||
|  |     "react-countup": "^6.5.3", | ||||||
|  |     "react-icons": "^5.5.0", | ||||||
|  |     "cobe": "^0.6.4" | ||||||
|  |   }, | ||||||
|  |   "devDependencies": { | ||||||
|  |     "@eslint/js": "^9.36.0", | ||||||
|  |     "@tailwindcss/forms": "^0.5.9", | ||||||
|  |     "@tailwindcss/postcss": "^4.1.7", | ||||||
|  |     "@types/node": "^24.6.0", | ||||||
|  |     "@types/react": "^19.1.16", | ||||||
|  |     "@types/react-dom": "^19.1.9", | ||||||
|  |     "@vitejs/plugin-react": "^5.0.4", | ||||||
|  |     "autoprefixer": "^10.4.20", | ||||||
|  |     "eslint": "^9.36.0", | ||||||
|  |     "eslint-plugin-react-hooks": "^5.2.0", | ||||||
|  |     "eslint-plugin-react-refresh": "^0.4.22", | ||||||
|  |     "globals": "^16.4.0", | ||||||
|  |     "postcss": "^8.5.1", | ||||||
|  |     "tailwindcss": "^4.1.7", | ||||||
|  |     "typescript": "~5.9.3", | ||||||
|  |     "typescript-eslint": "^8.45.0", | ||||||
|  |     "vite": "^7.1.7" | ||||||
|  |   } | ||||||
|  | } | ||||||
							
								
								
									
										5
									
								
								postcss.config.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,5 @@ | |||||||
|  | export default { | ||||||
|  |   plugins: { | ||||||
|  |     '@tailwindcss/postcss': {}, | ||||||
|  |   }, | ||||||
|  | } | ||||||
							
								
								
									
										
											BIN
										
									
								
								public/favicon.ico
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 15 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/8c0e4489-1721-49e0-a475-509daf745c1c.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.0 MiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/Screenshot 2025-09-13 at 15.58.46.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 303 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/a718fb45-791b-429f-9927-668e6fa8c73b.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 992 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/benefits.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.9 MiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/branding.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 223 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/calendar.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 65 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/calk.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 111 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/candy.gif
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 4.8 MiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/code.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 316 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/cube.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 190 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/data.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 327 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/datasets.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 140 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/deployment.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 26 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/docs.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 181 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/dummy.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 704 KiB | 
							
								
								
									
										36
									
								
								public/images/efficiency.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,36 @@ | |||||||
|  | <?xml version="1.0" encoding="UTF-8"?> | ||||||
|  | <svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 50 50"> | ||||||
|  |   <defs> | ||||||
|  |     <style> | ||||||
|  |       .cls-1 { | ||||||
|  |         fill: #000; | ||||||
|  |       } | ||||||
|  |  | ||||||
|  |       .cls-1, .cls-2, .cls-3 { | ||||||
|  |         stroke-width: 0px; | ||||||
|  |       } | ||||||
|  |  | ||||||
|  |       .cls-2 { | ||||||
|  |         fill: #a6a6a6; | ||||||
|  |       } | ||||||
|  |  | ||||||
|  |       .cls-3 { | ||||||
|  |         fill: none; | ||||||
|  |       } | ||||||
|  |  | ||||||
|  |       .cls-4 { | ||||||
|  |         clip-path: url(#clippath); | ||||||
|  |       } | ||||||
|  |     </style> | ||||||
|  |     <clipPath id="clippath"> | ||||||
|  |       <rect class="cls-3" x="9.6" y="9.5" width="31.2" height="31.2"/> | ||||||
|  |     </clipPath> | ||||||
|  |   </defs> | ||||||
|  |   <g class="cls-4"> | ||||||
|  |     <path class="cls-2" d="M40.5,25c0,1-.1,2-.3,3-.1.5-.2,1-.4,1.5-.1.5-.3,1-.5,1.4-.4.9-.9,1.8-1.4,2.7-.6.8-1.2,1.6-1.9,2.3-1.1,1.1-2.3,2-3.6,2.7-.4.2-.9.5-1.4.6-.5.2-.9.4-1.4.5-.5.1-1,.3-1.5.4-2,.4-4,.4-6,0-1-.2-2-.5-2.9-.9-1.4-.6-2.7-1.4-3.9-2.3-.4-.3-.8-.7-1.1-1-1.1-1.1-2-2.3-2.7-3.6-.2-.4-.5-.9-.6-1.4-.2-.5-.4-.9-.5-1.4-.4-1.5-.7-3-.7-4.5,0-1,.1-2,.3-3,.1-.5.2-1,.4-1.5.6-1.9,1.6-3.8,2.8-5.3.3-.4.7-.8,1-1.1.4-.4.7-.7,1.1-1,.4-.3.8-.6,1.2-.9,2.5-1.7,5.5-2.6,8.6-2.6,1,0,2,.1,3,.3.5.1,1,.2,1.5.4.5.1,1,.3,1.4.5.9.4,1.8.9,2.7,1.4.8.6,1.6,1.2,2.3,1.9.4.4.7.7,1,1.1.3.4.6.8.9,1.2,1.7,2.5,2.6,5.5,2.6,8.6Z"/> | ||||||
|  |   </g> | ||||||
|  |   <path class="cls-1" d="M24.4,22.7c.2-.5,0-1.1-.5-1.3,0,0,0,0,0,0-1.3-.6-2.8-1-4.3-1-1.3,0-2.6.3-3.9.8-1.2.5-2.3,1.2-3.2,2.1-.9.9-1.6,2-2.1,3.2-.5,1.2-.8,2.5-.8,3.9,0,1.3.3,2.6.8,3.9,1,2.4,2.9,4.3,5.3,5.3,1.2.5,2.5.8,3.9.8s2.6-.3,3.9-.8c2.4-1,4.3-2.9,5.3-5.3.5-1.2.8-2.5.8-3.9s-.3-2.9-.9-4.2c-.2-.5-.8-.7-1.3-.5-.5.2-.7.8-.5,1.3.5,1.1.8,2.2.8,3.4,0,2.1-.8,4.1-2.3,5.6-1.5,1.5-3.5,2.3-5.6,2.3-2.1,0-4.1-.8-5.6-2.3-1.5-1.5-2.3-3.5-2.3-5.6,0-2.1.8-4.1,2.3-5.6,1.5-1.5,3.5-2.3,5.6-2.3,1.2,0,2.4.3,3.4.8.5.2,1.1,0,1.3-.5h0Z"/> | ||||||
|  |   <path class="cls-1" d="M30.7,22.2c-.5.3-.6.9-.3,1.4,1.3,2,1.9,4.3,1.9,6.7,0,1.7-.3,3.4-1,4.9-.6,1.5-1.6,2.9-2.7,4-1.2,1.2-2.5,2.1-4,2.7-1.6.7-3.2,1-4.9,1-1.7,0-3.4-.3-4.9-1-1.5-.6-2.9-1.6-4-2.7-1.2-1.2-2.1-2.5-2.7-4-.7-1.6-1-3.2-1-4.9,0-5.3,3.2-10,8.2-11.8,1.4-.5,3-.8,4.5-.8,2.4,0,4.7.7,6.7,1.9.5.3,1.1.1,1.4-.4.3-.5.1-1-.3-1.3-2.3-1.4-5-2.2-7.7-2.2-1.8,0-3.5.3-5.2.9-5.7,2.2-9.5,7.6-9.5,13.7,0,3.9,1.5,7.6,4.3,10.4,1.3,1.3,2.9,2.4,4.7,3.1,1.8.8,3.7,1.2,5.7,1.2,3.9,0,7.6-1.5,10.4-4.3,2.8-2.7,4.3-6.5,4.3-10.4,0-2.8-.8-5.5-2.2-7.8-.3-.5-.9-.6-1.4-.3Z"/> | ||||||
|  |   <path class="cls-1" d="M44.9,12.9c-.1-.4-.4-.6-.8-.7l-5-.8c-.1-.2-.3-.4-.5-.5l-.8-5c0-.4-.3-.7-.7-.8-.4-.1-.8,0-1,.2l-6.4,6.4c-.2.2-.3.5-.3.9l.9,5.7-11,11c-.4.4-.4,1,0,1.4.2.2.4.3.7.3.3,0,.5,0,.7-.3l11-11,5.7.9c.3,0,.6,0,.9-.3l6.4-6.4c.3-.3.4-.7.2-1h0ZM36.1,8.1l.6,3.8-4.6,4.6-.6-3.8,4.6-4.6ZM37.2,18.5l-3.8-.6,4.6-4.6,3.8.6-4.6,4.6Z"/> | ||||||
|  |   <path class="cls-1" d="M19.7,27.7c.1,0,.2,0,.4,0,.5,0,1.1-.3,1.1-.9,0-.5-.3-1.1-.9-1.1h0c-.2,0-.4,0-.6,0-2.6,0-4.7,2.1-4.7,4.7,0,2.6,2.1,4.7,4.7,4.7,2.6,0,4.7-2.1,4.7-4.7,0-.2,0-.4,0-.6,0-.5-.6-.9-1.2-.8-.5,0-.9.6-.8,1.1,0,.1,0,.2,0,.4,0,1.5-1.2,2.7-2.7,2.7-1.5,0-2.7-1.2-2.7-2.7,0-1.5,1.2-2.7,2.7-2.7Z"/> | ||||||
|  | </svg> | ||||||
| After Width: | Height: | Size: 2.9 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/flow.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 104 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/gallery/branding.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 101 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/gallery/calendar.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 118 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/gallery/code.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 114 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/gallery/data.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 177 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/gallery/datasets.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 128 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/gallery/docs.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 84 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/gallery/flow.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 54 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/gallery/interface.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 110 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/gallery/market.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 120 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/gallery/structure.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 109 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/gallery/translate.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 78 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/getstarted.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 281 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/interface.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 254 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/logo.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 6.3 KiB | 
							
								
								
									
										15
									
								
								public/images/logo.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 120 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/logo2.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 215 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/logomark.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 4.7 KiB | 
							
								
								
									
										14
									
								
								public/images/logomark.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 112 KiB | 
							
								
								
									
										1
									
								
								public/images/logos/icon.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 718 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/m.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 224 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/market.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 179 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/placeholder.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 25 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/report.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 166 KiB | 
							
								
								
									
										42
									
								
								public/images/resilience.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,42 @@ | |||||||
|  | <?xml version="1.0" encoding="UTF-8"?> | ||||||
|  | <svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 50 50"> | ||||||
|  |   <defs> | ||||||
|  |     <style> | ||||||
|  |       .cls-1 { | ||||||
|  |         fill: #000; | ||||||
|  |       } | ||||||
|  |  | ||||||
|  |       .cls-1, .cls-2, .cls-3 { | ||||||
|  |         stroke-width: 0px; | ||||||
|  |       } | ||||||
|  |  | ||||||
|  |       .cls-2 { | ||||||
|  |         fill: #a6a6a6; | ||||||
|  |       } | ||||||
|  |  | ||||||
|  |       .cls-3 { | ||||||
|  |         fill: none; | ||||||
|  |       } | ||||||
|  |  | ||||||
|  |       .cls-4 { | ||||||
|  |         clip-path: url(#clippath-1); | ||||||
|  |       } | ||||||
|  |  | ||||||
|  |       .cls-5 { | ||||||
|  |         clip-path: url(#clippath); | ||||||
|  |       } | ||||||
|  |     </style> | ||||||
|  |     <clipPath id="clippath"> | ||||||
|  |       <rect class="cls-3" x="9.4" y="9.5" width="31.2" height="31.3"/> | ||||||
|  |     </clipPath> | ||||||
|  |     <clipPath id="clippath-1"> | ||||||
|  |       <rect class="cls-3" x="8.4" y="5" width="33.1" height="40"/> | ||||||
|  |     </clipPath> | ||||||
|  |   </defs> | ||||||
|  |   <g class="cls-5"> | ||||||
|  |     <path class="cls-2" d="M40.3,25c0,.5,0,1,0,1.5-.2,2-.8,4-1.8,5.8-.2.4-.5.9-.8,1.3-.3.4-.6.8-.9,1.2-.6.8-1.4,1.5-2.1,2.1-.4.3-.8.6-1.2.9-.4.3-.9.5-1.3.8-.9.5-1.8.9-2.8,1.2-.5.1-1,.3-1.5.4-1.5.3-3,.4-4.5.2-.5,0-1-.1-1.5-.2-.5-.1-1-.2-1.5-.4-.5-.1-1-.3-1.4-.5-.5-.2-.9-.4-1.4-.6-.4-.2-.9-.5-1.3-.8-.4-.3-.8-.6-1.2-.9-.8-.6-1.5-1.4-2.1-2.1-.3-.4-.6-.8-.9-1.2-.3-.4-.5-.9-.8-1.3-.5-.9-.9-1.8-1.2-2.8-.7-2.4-.9-5-.4-7.5,0-.5.2-1,.4-1.5.2-.5.3-1,.5-1.4.2-.5.4-.9.6-1.4.5-.9,1-1.7,1.7-2.5.6-.8,1.4-1.5,2.1-2.1.4-.3.8-.6,1.2-.9.4-.3.9-.5,1.3-.8.4-.2.9-.5,1.4-.6.5-.2.9-.4,1.4-.5,1.5-.4,3-.7,4.5-.7,1,0,2,0,3,.3.5,0,1,.2,1.5.4,1,.3,1.9.7,2.8,1.2.4.2.9.5,1.3.8.4.3.8.6,1.2.9.4.3.8.7,1.1,1s.7.7,1,1.1c.6.8,1.2,1.6,1.7,2.5.2.4.5.9.6,1.4.2.5.4.9.5,1.4.3,1,.5,2,.6,3,0,.5,0,1,0,1.5Z"/> | ||||||
|  |   </g> | ||||||
|  |   <g class="cls-4"> | ||||||
|  |     <path class="cls-1" d="M40.8,10.4c-.3-.3-.7-.4-1-.3-.8,0-1.6.1-2.4.1-5.8,0-9.9-2.2-10.9-4.4-.2-.5-.7-.8-1.2-.8h-.8c-.5,0-1,.3-1.2.8-1,2.2-5.1,4.4-10.9,4.4s-1.6,0-2.4-.1c-.4,0-.8,0-1,.3-.3.3-.4.6-.4,1v8c0,10.9,6.1,20.6,15.8,25.4.4.2.8.2,1.2,0,9.8-4.8,15.8-14.6,15.8-25.4v-8c0-.4-.2-.7-.4-1h0ZM38.6,19.4c0,9.6-5.3,18.3-13.8,22.7-8.5-4.5-13.8-13.1-13.8-22.7v-6.6c.4,0,.8,0,1.2,0,5.5,0,10.3-1.8,12.5-4.7,2.2,2.8,7,4.7,12.5,4.7s.8,0,1.2,0v6.6ZM35.1,17.5c.5.5.5,1.4,0,1.9,0,0,0,0,0,0l-11.6,11.2c-.2.2-.6.4-.9.4h0c-.4,0-.7-.2-.9-.4l-4.2-4.7c-.5-.6-.4-1.4.1-1.9.5-.5,1.3-.4,1.8,0l3.3,3.7,10.6-10.2c.5-.5,1.4-.5,1.9,0,0,0,0,0,0,0h0Z"/> | ||||||
|  |   </g> | ||||||
|  | </svg> | ||||||
| After Width: | Height: | Size: 2.2 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/stars.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 329 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/structure.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 366 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/images/translate.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 154 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/videos/agent.mp4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								public/videos/benefits.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 156 KiB | 
							
								
								
									
										
											BIN
										
									
								
								public/videos/benefits.mp4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								public/videos/cta.mp4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								public/videos/deterministic.mp4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								public/videos/fungistor.mp4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								public/videos/herodb.mp4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								public/videos/mesh.mp4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								public/videos/mycelium2.mp4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								public/videos/sandbox.mp4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								public/videos/universal.mp4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										1
									
								
								public/vite.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1 @@ | |||||||
|  | <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg> | ||||||
| After Width: | Height: | Size: 1.5 KiB | 
							
								
								
									
										42
									
								
								src/App.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,42 @@ | |||||||
|  | #root { | ||||||
|  |   max-width: 1280px; | ||||||
|  |   margin: 0 auto; | ||||||
|  |   padding: 2rem; | ||||||
|  |   text-align: center; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | .logo { | ||||||
|  |   height: 6em; | ||||||
|  |   padding: 1.5em; | ||||||
|  |   will-change: filter; | ||||||
|  |   transition: filter 300ms; | ||||||
|  | } | ||||||
|  | .logo:hover { | ||||||
|  |   filter: drop-shadow(0 0 2em #646cffaa); | ||||||
|  | } | ||||||
|  | .logo.react:hover { | ||||||
|  |   filter: drop-shadow(0 0 2em #61dafbaa); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | @keyframes logo-spin { | ||||||
|  |   from { | ||||||
|  |     transform: rotate(0deg); | ||||||
|  |   } | ||||||
|  |   to { | ||||||
|  |     transform: rotate(360deg); | ||||||
|  |   } | ||||||
|  | } | ||||||
|  |  | ||||||
|  | @media (prefers-reduced-motion: no-preference) { | ||||||
|  |   a:nth-of-type(2) .logo { | ||||||
|  |     animation: logo-spin infinite 20s linear; | ||||||
|  |   } | ||||||
|  | } | ||||||
|  |  | ||||||
|  | .card { | ||||||
|  |   padding: 2em; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | .read-the-docs { | ||||||
|  |   color: #888; | ||||||
|  | } | ||||||
							
								
								
									
										23
									
								
								src/App.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,23 @@ | |||||||
|  | import { BrowserRouter, Routes, Route } from 'react-router-dom' | ||||||
|  | import { Layout } from './components/Layout' | ||||||
|  | import HomePage from './pages/home/HomePage' | ||||||
|  | import CloudPage from './pages/cloud/CloudPage' | ||||||
|  | import NetworkPage from './pages/network/NetworkPage' | ||||||
|  | import AgentsPage from './pages/agents/AgentsPage' | ||||||
|  |  | ||||||
|  | function App() { | ||||||
|  |   return ( | ||||||
|  |     <BrowserRouter> | ||||||
|  |       <Routes> | ||||||
|  |         <Route path="/" element={<Layout />}> | ||||||
|  |           <Route index element={<HomePage />} /> | ||||||
|  |           <Route path="cloud" element={<CloudPage />} /> | ||||||
|  |           <Route path="network" element={<NetworkPage />} /> | ||||||
|  |           <Route path="agents" element={<AgentsPage />} /> | ||||||
|  |         </Route> | ||||||
|  |       </Routes> | ||||||
|  |     </BrowserRouter> | ||||||
|  |   ) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | export default App | ||||||
							
								
								
									
										1
									
								
								src/assets/react.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1 @@ | |||||||
|  | <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="35.93" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 228"><path fill="#00D8FF" d="M210.483 73.824a171.49 171.49 0 0 0-8.24-2.597c.465-1.9.893-3.777 1.273-5.621c6.238-30.281 2.16-54.676-11.769-62.708c-13.355-7.7-35.196.329-57.254 19.526a171.23 171.23 0 0 0-6.375 5.848a155.866 155.866 0 0 0-4.241-3.917C100.759 3.829 77.587-4.822 63.673 3.233C50.33 10.957 46.379 33.89 51.995 62.588a170.974 170.974 0 0 0 1.892 8.48c-3.28.932-6.445 1.924-9.474 2.98C17.309 83.498 0 98.307 0 113.668c0 15.865 18.582 31.778 46.812 41.427a145.52 145.52 0 0 0 6.921 2.165a167.467 167.467 0 0 0-2.01 9.138c-5.354 28.2-1.173 50.591 12.134 58.266c13.744 7.926 36.812-.22 59.273-19.855a145.567 145.567 0 0 0 5.342-4.923a168.064 168.064 0 0 0 6.92 6.314c21.758 18.722 43.246 26.282 56.54 18.586c13.731-7.949 18.194-32.003 12.4-61.268a145.016 145.016 0 0 0-1.535-6.842c1.62-.48 3.21-.974 4.76-1.488c29.348-9.723 48.443-25.443 48.443-41.52c0-15.417-17.868-30.326-45.517-39.844Zm-6.365 70.984c-1.4.463-2.836.91-4.3 1.345c-3.24-10.257-7.612-21.163-12.963-32.432c5.106-11 9.31-21.767 12.459-31.957c2.619.758 5.16 1.557 7.61 2.4c23.69 8.156 38.14 20.213 38.14 29.504c0 9.896-15.606 22.743-40.946 31.14Zm-10.514 20.834c2.562 12.94 2.927 24.64 1.23 33.787c-1.524 8.219-4.59 13.698-8.382 15.893c-8.067 4.67-25.32-1.4-43.927-17.412a156.726 156.726 0 0 1-6.437-5.87c7.214-7.889 14.423-17.06 21.459-27.246c12.376-1.098 24.068-2.894 34.671-5.345a134.17 134.17 0 0 1 1.386 6.193ZM87.276 214.515c-7.882 2.783-14.16 2.863-17.955.675c-8.075-4.657-11.432-22.636-6.853-46.752a156.923 156.923 0 0 1 1.869-8.499c10.486 2.32 22.093 3.988 34.498 4.994c7.084 9.967 14.501 19.128 21.976 27.15a134.668 134.668 0 0 1-4.877 4.492c-9.933 8.682-19.886 14.842-28.658 17.94ZM50.35 144.747c-12.483-4.267-22.792-9.812-29.858-15.863c-6.35-5.437-9.555-10.836-9.555-15.216c0-9.322 13.897-21.212 37.076-29.293c2.813-.98 5.757-1.905 8.812-2.773c3.204 10.42 7.406 21.315 12.477 32.332c-5.137 11.18-9.399 22.249-12.634 32.792a134.718 134.718 0 0 1-6.318-1.979Zm12.378-84.26c-4.811-24.587-1.616-43.134 6.425-47.789c8.564-4.958 27.502 2.111 47.463 19.835a144.318 144.318 0 0 1 3.841 3.545c-7.438 7.987-14.787 17.08-21.808 26.988c-12.04 1.116-23.565 2.908-34.161 5.309a160.342 160.342 0 0 1-1.76-7.887Zm110.427 27.268a347.8 347.8 0 0 0-7.785-12.803c8.168 1.033 15.994 2.404 23.343 4.08c-2.206 7.072-4.956 14.465-8.193 22.045a381.151 381.151 0 0 0-7.365-13.322Zm-45.032-43.861c5.044 5.465 10.096 11.566 15.065 18.186a322.04 322.04 0 0 0-30.257-.006c4.974-6.559 10.069-12.652 15.192-18.18ZM82.802 87.83a323.167 323.167 0 0 0-7.227 13.238c-3.184-7.553-5.909-14.98-8.134-22.152c7.304-1.634 15.093-2.97 23.209-3.984a321.524 321.524 0 0 0-7.848 12.897Zm8.081 65.352c-8.385-.936-16.291-2.203-23.593-3.793c2.26-7.3 5.045-14.885 8.298-22.6a321.187 321.187 0 0 0 7.257 13.246c2.594 4.48 5.28 8.868 8.038 13.147Zm37.542 31.03c-5.184-5.592-10.354-11.779-15.403-18.433c4.902.192 9.899.29 14.978.29c5.218 0 10.376-.117 15.453-.343c-4.985 6.774-10.018 12.97-15.028 18.486Zm52.198-57.817c3.422 7.8 6.306 15.345 8.596 22.52c-7.422 1.694-15.436 3.058-23.88 4.071a382.417 382.417 0 0 0 7.859-13.026a347.403 347.403 0 0 0 7.425-13.565Zm-16.898 8.101a358.557 358.557 0 0 1-12.281 19.815a329.4 329.4 0 0 1-23.444.823c-7.967 0-15.716-.248-23.178-.732a310.202 310.202 0 0 1-12.513-19.846h.001a307.41 307.41 0 0 1-10.923-20.627a310.278 310.278 0 0 1 10.89-20.637l-.001.001a307.318 307.318 0 0 1 12.413-19.761c7.613-.576 15.42-.876 23.31-.876H128c7.926 0 15.743.303 23.354.883a329.357 329.357 0 0 1 12.335 19.695a358.489 358.489 0 0 1 11.036 20.54a329.472 329.472 0 0 1-11 20.722Zm22.56-122.124c8.572 4.944 11.906 24.881 6.52 51.026c-.344 1.668-.73 3.367-1.15 5.09c-10.622-2.452-22.155-4.275-34.23-5.408c-7.034-10.017-14.323-19.124-21.64-27.008a160.789 160.789 0 0 1 5.888-5.4c18.9-16.447 36.564-22.941 44.612-18.3ZM128 90.808c12.625 0 22.86 10.235 22.86 22.86s-10.235 22.86-22.86 22.86s-22.86-10.235-22.86-22.86s10.235-22.86 22.86-22.86Z"></path></svg> | ||||||
| After Width: | Height: | Size: 4.0 KiB | 
							
								
								
									
										21
									
								
								src/components/AnimatedSection.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,21 @@ | |||||||
|  | import { useRef } from 'react' | ||||||
|  | import { motion, useInView } from 'framer-motion' | ||||||
|  |  | ||||||
|  | export function AnimatedSection({ children }: { children: React.ReactNode }) { | ||||||
|  |   const ref = useRef(null) | ||||||
|  |   const isInView = useInView(ref, { once: true, margin: '-20% 0px -20% 0px' }) | ||||||
|  |  | ||||||
|  |   return ( | ||||||
|  |     <motion.section | ||||||
|  |       ref={ref} | ||||||
|  |       initial={{ opacity: 0, y: 50 }} | ||||||
|  |       animate={{ | ||||||
|  |         opacity: isInView ? 1 : 0, | ||||||
|  |         y: isInView ? 0 : 50, | ||||||
|  |       }} | ||||||
|  |       transition={{ duration: 0.5 }} | ||||||
|  |     > | ||||||
|  |       {children} | ||||||
|  |     </motion.section> | ||||||
|  |   ) | ||||||
|  | } | ||||||
							
								
								
									
										68
									
								
								src/components/Button.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,68 @@ | |||||||
|  | import { Link } from 'react-router-dom' | ||||||
|  | import clsx from 'clsx' | ||||||
|  |  | ||||||
|  | const baseStyles = { | ||||||
|  |   solid: | ||||||
|  |     'inline-flex justify-center rounded-lg py-2 px-3 text-sm font-semibold transition-colors', | ||||||
|  |   outline: | ||||||
|  |     'inline-flex justify-center rounded-lg border py-[calc(--spacing(2)-1px)] px-[calc(--spacing(3)-1px)] text-sm transition-colors', | ||||||
|  | } | ||||||
|  |  | ||||||
|  | const variantStyles = { | ||||||
|  |   solid: { | ||||||
|  |     cyan: 'relative overflow-hidden bg-cyan-500 text-white before:absolute before:inset-0 active:before:bg-transparent hover:before:bg-white/10 active:bg-cyan-600 active:text-white/80 before:transition-colors', | ||||||
|  |     white: | ||||||
|  |       'bg-white text-cyan-900 hover:bg-white/90 active:bg-white/90 active:text-cyan-900/70', | ||||||
|  |     gray: 'bg-gray-800 text-white hover:bg-gray-900 active:bg-gray-800 active:text-white/80', | ||||||
|  |     green: 'bg-green-500 text-white hover:bg-green-600', | ||||||
|  |   }, | ||||||
|  |   outline: { | ||||||
|  |     gray: 'border-gray-300 text-gray-700 hover:border-cyan-500 active:border-cyan-500', | ||||||
|  |     white: 'border-gray-300 text-white hover:border-cyan-500 active:border-cyan-500', | ||||||
|  |   }, | ||||||
|  | } | ||||||
|  |  | ||||||
|  | type ButtonProps = ( | ||||||
|  |   | { | ||||||
|  |       variant?: 'solid' | ||||||
|  |       color?: keyof typeof variantStyles.solid | ||||||
|  |     } | ||||||
|  |   | { | ||||||
|  |       variant: 'outline' | ||||||
|  |       color?: keyof typeof variantStyles.outline | ||||||
|  |     } | ||||||
|  | ) & | ||||||
|  |   ( | ||||||
|  |     | (Omit<React.ComponentPropsWithoutRef<typeof Link>, 'color'> & { to: string; as?: 'link' }) | ||||||
|  |     | (Omit<React.ComponentPropsWithoutRef<'a'>, 'color'> & { to: string; as: 'a' }) | ||||||
|  |     | (Omit<React.ComponentPropsWithoutRef<'button'>, 'color'> & { | ||||||
|  |         to?: undefined | ||||||
|  |         as?: undefined | ||||||
|  |       }) | ||||||
|  |   ) | ||||||
|  |  | ||||||
|  | export function Button({ className, as, ...props }: ButtonProps) { | ||||||
|  |   props.variant ??= 'solid' | ||||||
|  |   props.color ??= 'gray' | ||||||
|  |  | ||||||
|  |   className = clsx( | ||||||
|  |     baseStyles[props.variant], | ||||||
|  |     props.variant === 'outline' | ||||||
|  |       ? variantStyles.outline[props.color] | ||||||
|  |       : props.variant === 'solid' | ||||||
|  |         ? variantStyles.solid[props.color] | ||||||
|  |         : undefined, | ||||||
|  |     className, | ||||||
|  |   ) | ||||||
|  |  | ||||||
|  |   if (typeof props.to === 'undefined') { | ||||||
|  |     return <button className={className} {...props} /> | ||||||
|  |   } | ||||||
|  |    | ||||||
|  |   if (as === 'a') { | ||||||
|  |     const { to, variant, color, ...rest } = props as any | ||||||
|  |     return <a className={className} href={to} {...rest} /> | ||||||
|  |   } | ||||||
|  |    | ||||||
|  |   return <Link className={className} {...props} /> | ||||||
|  | } | ||||||
							
								
								
									
										45
									
								
								src/components/CircleBackground.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,45 @@ | |||||||
|  | import { useId } from 'react' | ||||||
|  |  | ||||||
|  | export function CircleBackground({ | ||||||
|  |   color, | ||||||
|  |   ...props | ||||||
|  | }: React.ComponentPropsWithoutRef<'svg'> & { | ||||||
|  |   color: string | ||||||
|  | }) { | ||||||
|  |   let id = useId() | ||||||
|  |  | ||||||
|  |   return ( | ||||||
|  |     <svg | ||||||
|  |       viewBox="0 0 558 558" | ||||||
|  |       width="558" | ||||||
|  |       height="558" | ||||||
|  |       fill="none" | ||||||
|  |       aria-hidden="true" | ||||||
|  |       {...props} | ||||||
|  |     > | ||||||
|  |       <defs> | ||||||
|  |         <linearGradient | ||||||
|  |           id={id} | ||||||
|  |           x1="79" | ||||||
|  |           y1="16" | ||||||
|  |           x2="105" | ||||||
|  |           y2="237" | ||||||
|  |           gradientUnits="userSpaceOnUse" | ||||||
|  |         > | ||||||
|  |           <stop stopColor={color} /> | ||||||
|  |           <stop offset="1" stopColor={color} stopOpacity="0" /> | ||||||
|  |         </linearGradient> | ||||||
|  |       </defs> | ||||||
|  |       <path | ||||||
|  |         opacity=".2" | ||||||
|  |         d="M1 279C1 125.465 125.465 1 279 1s278 124.465 278 278-124.465 278-278 278S1 432.535 1 279Z" | ||||||
|  |         stroke={color} | ||||||
|  |       /> | ||||||
|  |       <path | ||||||
|  |         d="M1 279C1 125.465 125.465 1 279 1" | ||||||
|  |         stroke={`url(#${id})`} | ||||||
|  |         strokeLinecap="round" | ||||||
|  |       /> | ||||||
|  |     </svg> | ||||||
|  |   ) | ||||||
|  | } | ||||||
							
								
								
									
										13
									
								
								src/components/Container.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,13 @@ | |||||||
|  | import clsx from 'clsx' | ||||||
|  |  | ||||||
|  | export function Container({ | ||||||
|  |   className, | ||||||
|  |   ...props | ||||||
|  | }: React.ComponentPropsWithoutRef<'div'>) { | ||||||
|  |   return ( | ||||||
|  |     <div | ||||||
|  |       className={clsx('mx-auto max-w-7xl px-6 lg:px-8', className)} | ||||||
|  |       {...props} | ||||||
|  |     /> | ||||||
|  |   ) | ||||||
|  | } | ||||||
							
								
								
									
										17
									
								
								src/components/CountUpNumber.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,17 @@ | |||||||
|  | import CountUp from 'react-countup' | ||||||
|  |  | ||||||
|  | interface CountUpNumberProps { | ||||||
|  |   end: number | ||||||
|  |   className?: string | ||||||
|  | } | ||||||
|  |  | ||||||
|  | export function CountUpNumber({ end, className }: CountUpNumberProps) { | ||||||
|  |   return ( | ||||||
|  |     <CountUp | ||||||
|  |       end={end} | ||||||
|  |       duration={2.5} | ||||||
|  |       separator="," | ||||||
|  |       className={className} | ||||||
|  |     /> | ||||||
|  |   ) | ||||||
|  | } | ||||||
							
								
								
									
										61
									
								
								src/components/Footer.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,61 @@ | |||||||
|  | import { Link } from 'react-router-dom' | ||||||
|  | import { Container } from './Container' | ||||||
|  |  | ||||||
|  | export function Footer() { | ||||||
|  |   return ( | ||||||
|  |     <footer className="border-t border-gray-200"> | ||||||
|  |       <Container> | ||||||
|  |         <div className="flex flex-col items-start justify-between gap-y-12 pt-16 pb-6 lg:flex-row lg:items-center lg:py-8"> | ||||||
|  |           <div> | ||||||
|  |             <div className="flex items-center text-gray-900"> | ||||||
|  |               <img src="/src/images/logomark.svg" alt="Mycelium Logomark" className="h-20 w-20 flex-none" /> | ||||||
|  |               <div className="ml-4"> | ||||||
|  |                 <p className="text-base font-semibold">Mycelium</p> | ||||||
|  |                 <p className="mt-1 text-sm">Unleash the Power of Decentralized Networks</p> | ||||||
|  |               </div> | ||||||
|  |             </div> | ||||||
|  |             <nav className="mt-10 flex gap-8"> | ||||||
|  |               <Link to="/" className="text-sm text-gray-700 hover:text-cyan-500 transition-colors"> | ||||||
|  |                 Home | ||||||
|  |               </Link> | ||||||
|  |               <Link to="/cloud" className="text-sm text-gray-700 hover:text-cyan-500 transition-colors"> | ||||||
|  |                 Cloud | ||||||
|  |               </Link> | ||||||
|  |               <Link to="/network" className="text-sm text-gray-700 hover:text-cyan-500 transition-colors"> | ||||||
|  |                 Network | ||||||
|  |               </Link> | ||||||
|  |               <Link to="/agents" className="text-sm text-gray-700 hover:text-cyan-500 transition-colors"> | ||||||
|  |                 Agents | ||||||
|  |               </Link> | ||||||
|  |             </nav> | ||||||
|  |           </div> | ||||||
|  |           <div className="group relative -mx-4 flex items-center self-stretch p-4 transition-colors hover:bg-gray-100 sm:self-auto sm:rounded-2xl lg:mx-0 lg:self-auto lg:p-6"> | ||||||
|  |             <div className="relative flex h-16 w-16 flex-none items-center justify-center"> | ||||||
|  |               <img src="/src/images/github.svg" alt="GitHub" className="h-16 w-16" /> | ||||||
|  |             </div> | ||||||
|  |             <div className="ml-4 lg:w-72"> | ||||||
|  |               <p className="text-base font-semibold text-gray-900"> | ||||||
|  |                 <a href="https://github.com/threefoldtech/mycelium/releases/" target="_blank" rel="noopener noreferrer"> | ||||||
|  |                   <span className="absolute inset-0 sm:rounded-2xl" /> | ||||||
|  |                   Download Mycelium | ||||||
|  |                 </a> | ||||||
|  |               </p> | ||||||
|  |               <p className="mt-1 text-sm text-gray-700"> | ||||||
|  |                 Head to the GitHub to access the latest Mycelium builds for your devices. | ||||||
|  |               </p> | ||||||
|  |             </div> | ||||||
|  |           </div> | ||||||
|  |         </div> | ||||||
|  |         <div className="flex flex-col items-center border-t border-gray-200 pt-8 pb-12 md:flex-row-reverse md:justify-between md:pt-6"> | ||||||
|  |           <p className="mt-6 text-sm text-gray-500 md:mt-0"> | ||||||
|  |             © Copyright{' '} | ||||||
|  |             <a href="https://www.threefold.io" target="_blank" rel="noopener noreferrer" className="hover:text-cyan-500 transition-colors"> | ||||||
|  |               ThreeFold | ||||||
|  |             </a>{' '} | ||||||
|  |             {new Date().getFullYear()}. All rights reserved. | ||||||
|  |           </p> | ||||||
|  |         </div> | ||||||
|  |       </Container> | ||||||
|  |     </footer> | ||||||
|  |   ) | ||||||
|  | } | ||||||
							
								
								
									
										61
									
								
								src/components/Header.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,61 @@ | |||||||
|  | import { Link } from 'react-router-dom' | ||||||
|  | import { Container } from './Container' | ||||||
|  | import { Button } from './Button' | ||||||
|  |  | ||||||
|  | export function Header() { | ||||||
|  |   return ( | ||||||
|  |     <header> | ||||||
|  |       <nav> | ||||||
|  |         <Container className="relative z-50 flex justify-between py-8"> | ||||||
|  |           <div className="relative z-10 flex items-center gap-16"> | ||||||
|  |             <Link to="/" aria-label="Home"> | ||||||
|  |               <img src="/src/images/logomark.svg" alt="Mycelium" className="h-10 w-auto" /> | ||||||
|  |             </Link> | ||||||
|  |             <div className="hidden lg:flex lg:gap-10"> | ||||||
|  |               <Link | ||||||
|  |                 to="/" | ||||||
|  |                 className="text-base/7 tracking-tight text-gray-700 hover:text-cyan-500 transition-colors" | ||||||
|  |               > | ||||||
|  |                 Home | ||||||
|  |               </Link> | ||||||
|  |               <Link | ||||||
|  |                 to="/cloud" | ||||||
|  |                 className="text-base/7 tracking-tight text-gray-700 hover:text-cyan-500 transition-colors" | ||||||
|  |               > | ||||||
|  |                 Cloud | ||||||
|  |               </Link> | ||||||
|  |               <Link | ||||||
|  |                 to="/network" | ||||||
|  |                 className="text-base/7 tracking-tight text-gray-700 hover:text-cyan-500 transition-colors" | ||||||
|  |               > | ||||||
|  |                 Network | ||||||
|  |               </Link> | ||||||
|  |               <Link | ||||||
|  |                 to="/agents" | ||||||
|  |                 className="text-base/7 tracking-tight text-gray-700 hover:text-cyan-500 transition-colors" | ||||||
|  |               > | ||||||
|  |                 Agents | ||||||
|  |               </Link> | ||||||
|  |             </div> | ||||||
|  |           </div> | ||||||
|  |           <div className="flex items-center gap-6"> | ||||||
|  |             <div className="flex items-center gap-6 max-lg:hidden"> | ||||||
|  |               <Button | ||||||
|  |                 to="https://threefold.info/mycelium_network/docs/" | ||||||
|  |                 variant="outline" | ||||||
|  |                 as="a" | ||||||
|  |                 target="_blank" | ||||||
|  |                 rel="noopener noreferrer" | ||||||
|  |               > | ||||||
|  |                 Docs | ||||||
|  |               </Button> | ||||||
|  |               <Button to="/download" variant="solid" color="cyan"> | ||||||
|  |                 Get Mycelium | ||||||
|  |               </Button> | ||||||
|  |             </div> | ||||||
|  |           </div> | ||||||
|  |         </Container> | ||||||
|  |       </nav> | ||||||
|  |     </header> | ||||||
|  |   ) | ||||||
|  | } | ||||||
							
								
								
									
										15
									
								
								src/components/Layout.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,15 @@ | |||||||
|  | import { Outlet } from 'react-router-dom' | ||||||
|  | import { Header } from './Header' | ||||||
|  | import { Footer } from './Footer' | ||||||
|  |  | ||||||
|  | export function Layout() { | ||||||
|  |   return ( | ||||||
|  |     <div className="bg-gray-50 antialiased" style={{ fontFamily: 'var(--font-inter)' }}> | ||||||
|  |       <Header /> | ||||||
|  |       <main> | ||||||
|  |         <Outlet /> | ||||||
|  |       </main> | ||||||
|  |       <Footer /> | ||||||
|  |     </div> | ||||||
|  |   ) | ||||||
|  | } | ||||||
							
								
								
									
										64
									
								
								src/components/Logo.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,64 @@ | |||||||
|  | export function Logomark(props: React.ComponentPropsWithoutRef<'svg'>) { | ||||||
|  |   return ( | ||||||
|  |     <svg | ||||||
|  |       xmlns="http://www.w3.org/2000/svg" | ||||||
|  |       xmlnsXlink="http://www.w3.org/1999/xlink" | ||||||
|  |       width="81" | ||||||
|  |       height="50" | ||||||
|  |       version="1" | ||||||
|  |       viewBox="0 0 60.75 37.5" | ||||||
|  |       {...props} | ||||||
|  |     > | ||||||
|  |       <defs> | ||||||
|  |         <filter id="a" width="100%" height="100%" x="0%" y="0%"> | ||||||
|  |           <feColorMatrix | ||||||
|  |             colorInterpolationFilters="sRGB" | ||||||
|  |             values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0" | ||||||
|  |           /> | ||||||
|  |         </filter> | ||||||
|  |         <filter id="b" width="100%" height="100%" x="0%" y="0%"> | ||||||
|  |           <feColorMatrix | ||||||
|  |             colorInterpolationFilters="sRGB" | ||||||
|  |             values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0.2126 0.7152 0.0722 0 0" | ||||||
|  |           /> | ||||||
|  |         </filter> | ||||||
|  |         <clipPath id="c"> | ||||||
|  |           <path d="M.277.309H60V37H.277Zm0 0" /> | ||||||
|  |         </clipPath> | ||||||
|  |         <mask id="d"> | ||||||
|  |           <g filter="url(#a)"> | ||||||
|  |             <g filter="url(#b)" transform="matrix(.08765 0 0 .08811 .276 .26)"> | ||||||
|  |               <image | ||||||
|  |                 xlinkHref="/src/images/logomark.svg" | ||||||
|  |                 width="684" | ||||||
|  |                 height="420" | ||||||
|  |               /> | ||||||
|  |             </g> | ||||||
|  |           </g> | ||||||
|  |         </mask> | ||||||
|  |       </defs> | ||||||
|  |       <g clipPath="url(#c)" mask="url(#d)"> | ||||||
|  |         <image | ||||||
|  |           xlinkHref="/src/images/logomark.svg" | ||||||
|  |           width="684" | ||||||
|  |           height="420" | ||||||
|  |           transform="matrix(.08765 0 0 .08811 .276 .26)" | ||||||
|  |         /> | ||||||
|  |       </g> | ||||||
|  |     </svg> | ||||||
|  |   ) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | export function Logo(props: React.ComponentPropsWithoutRef<'svg'>) { | ||||||
|  |   return ( | ||||||
|  |     <svg | ||||||
|  |       xmlns="http://www.w3.org/2000/svg" | ||||||
|  |       width="160" | ||||||
|  |       height="40" | ||||||
|  |       viewBox="0 0 120 30" | ||||||
|  |       {...props} | ||||||
|  |     > | ||||||
|  |       <image xlinkHref="/src/images/mycelium.svg" width="120" height="30" /> | ||||||
|  |     </svg> | ||||||
|  |   ) | ||||||
|  | } | ||||||
							
								
								
									
										47
									
								
								src/components/ui/Globe.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,47 @@ | |||||||
|  | import { useEffect, useRef } from 'react' | ||||||
|  | import createGlobe from 'cobe' | ||||||
|  |  | ||||||
|  | export function Globe({ className }: { className?: string }) { | ||||||
|  |   const canvasRef = useRef<HTMLCanvasElement>(null) | ||||||
|  |  | ||||||
|  |   useEffect(() => { | ||||||
|  |     let phi = 0 | ||||||
|  |  | ||||||
|  |     if (!canvasRef.current) return | ||||||
|  |  | ||||||
|  |     const globe = createGlobe(canvasRef.current, { | ||||||
|  |       devicePixelRatio: 2, | ||||||
|  |       width: 600 * 2, | ||||||
|  |       height: 600 * 2, | ||||||
|  |       phi: 0, | ||||||
|  |       theta: 0, | ||||||
|  |       dark: 0, | ||||||
|  |       diffuse: 1.2, | ||||||
|  |       mapSamples: 16000, | ||||||
|  |       mapBrightness: 6, | ||||||
|  |       baseColor: [0.3, 0.3, 0.3], | ||||||
|  |       markerColor: [0.1, 0.8, 1], | ||||||
|  |       glowColor: [1, 1, 1], | ||||||
|  |       markers: [ | ||||||
|  |         { location: [37.7595, -122.4367], size: 0.03 }, | ||||||
|  |         { location: [40.7128, -74.006], size: 0.1 }, | ||||||
|  |       ], | ||||||
|  |       onRender: (state) => { | ||||||
|  |         state.phi = phi | ||||||
|  |         phi += 0.01 | ||||||
|  |       }, | ||||||
|  |     }) | ||||||
|  |  | ||||||
|  |     return () => { | ||||||
|  |       globe.destroy() | ||||||
|  |     } | ||||||
|  |   }, []) | ||||||
|  |  | ||||||
|  |   return ( | ||||||
|  |     <canvas | ||||||
|  |       ref={canvasRef} | ||||||
|  |       className={className} | ||||||
|  |       style={{ width: '100%', height: '100%', maxWidth: '100%', aspectRatio: 1 }} | ||||||
|  |     /> | ||||||
|  |   ) | ||||||
|  | } | ||||||
							
								
								
									
										1
									
								
								src/images/android.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1 @@ | |||||||
|  | <svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 80 80" width="80" height="80"><defs><clipPath clipPathUnits="userSpaceOnUse" id="cp1"><path d="m2.09 33.33h8.58v24h-8.58z"/></clipPath><clipPath clipPathUnits="userSpaceOnUse" id="cp2"><path d="m13.33 33.33h32v38.19h-32z"/></clipPath></defs><style>.a{fill:#00b8db}</style><g clip-path="url(#cp1)"><path class="a" d="m5.9 33.7c-2.1 0-3.8 1.7-3.8 3.9v15.2c0 2.2 1.7 3.9 3.8 3.9 2.1 0 3.9-1.7 3.9-3.9v-15.2c0-2.2-1.8-3.9-3.9-3.9z"/></g><path class="a" d="m52 33.7c-2.1 0-3.8 1.7-3.8 3.9v15.2c0 2.2 1.7 3.9 3.8 3.9 2.1 0 3.9-1.7 3.9-3.9v-15.2c0-2.2-1.8-3.9-3.9-3.9z"/><g clip-path="url(#cp2)"><path class="a" d="m13.6 56.9c0 2.1 1.7 3.8 3.8 3.8v7.4c0 2.2 1.8 3.9 3.9 3.9 2.1 0 3.8-1.7 3.8-3.9v-7.4h7.7v7.4c0 2.2 1.7 3.9 3.9 3.9 2.1 0 3.8-1.7 3.8-3.9v-7.4c2.1 0 3.8-1.7 3.8-3.8v-22.9h-30.7z"/></g><path class="a" d="m38.6 18l3.4-4.1c0.7-0.8 0.5-2-0.3-2.7-0.8-0.6-2-0.5-2.7 0.3l-3.7 4.5c-1.9-0.9-4.1-1.4-6.3-1.4-2.3 0-4.5 0.5-6.4 1.4l-3.6-4.5c-0.7-0.8-1.9-1-2.8-0.3-0.8 0.7-0.9 1.9-0.2 2.7l3.3 4.2c-3.4 2.8-5.7 7-5.7 11.8h30.7c0-4.8-2.2-9.1-5.7-11.9zm-13.5 6.2c-1 0-1.9-0.9-1.9-1.9 0-1.1 0.9-2 1.9-2 1.1 0 2 0.9 2 2 0 1-0.9 1.9-2 1.9zm7.7 0c-1 0-1.9-0.9-1.9-1.9 0-1.1 0.9-2 1.9-2 1.1 0 1.9 0.9 1.9 2 0 1-0.8 1.9-1.9 1.9z"/></svg> | ||||||
| After Width: | Height: | Size: 1.3 KiB | 
							
								
								
									
										1
									
								
								src/images/apple.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1 @@ | |||||||
|  | <svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 80 80" width="80" height="80"><defs><clipPath clipPathUnits="userSpaceOnUse" id="cp1"><path d="m1.33 25.33h50.59v46.27h-50.59z"/></clipPath><clipPath clipPathUnits="userSpaceOnUse" id="cp2"><path d="m28 7.6h13.33v13.73h-13.33z"/></clipPath></defs><style>.a{fill:#00b8db}</style><g clip-path="url(#cp1)"><path fill-rule="evenodd" class="a" d="m12.8 27c-4.8 1.5-8.5 5.4-10 10.3-1.1 3.8-1.9 10.2 1.3 18.8 0 0.1 3.1 8.6 10.8 13.2 3.7 2.2 8.5 2.1 12-0.3l0.1-0.1q0.2-0.1 0.4-0.3 0.3-0.2 0.7-0.2 0.3 0 0.6 0.2 0.3 0.2 0.5 0.4h0.1c3.5 2.4 8.2 2.5 11.9 0.2 6.9-4.1 10.1-11.2 10.7-12.8q-0.2 0-0.4 0c-3.7 0-7.1-1.4-9.7-3.9-2.6-2.6-4-6-4-9.6 0-6.4 4.5-11.8 10.6-13.2-1.5-1.2-3.2-2.2-5-2.8-8.1-2.6-13.9 3-14.6 3.6v0.1c-0.4 0.4-1 0.4-1.4 0l-0.1-0.1c-0.6-0.6-6.4-6.2-14.5-3.5z"/></g><g clip-path="url(#cp2)"><path fill-rule="evenodd" class="a" d="m31.3 10.9c-2.2 2.2-3.3 5.4-3.1 9.1 3.8 0.2 7.1-0.9 9.2-3.1 2.2-2.1 3.3-5.3 3.1-9-3.8-0.2-7 0.8-9.2 3z"/></g></svg> | ||||||
| After Width: | Height: | Size: 1014 B | 
							
								
								
									
										
											BIN
										
									
								
								src/images/connector.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 112 KiB | 
							
								
								
									
										4
									
								
								src/images/github.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,4 @@ | |||||||
|  | <svg xmlns="http://www.w3.org/2000/svg" aria-label="GitHub" viewBox="0 0 512 512" id="github"> | ||||||
|  |   <rect width="512" height="512" fill="#1B1817" rx="15%"></rect> | ||||||
|  |   <path fill="#fff" d="M335 499c14 0 12 17 12 17H165s-2-17 12-17c13 0 16-6 16-12l-1-50c-71 16-86-28-86-28-12-30-28-37-28-37-24-16 1-16 1-16 26 2 40 26 40 26 22 39 59 28 74 22 2-17 9-28 16-35-57-6-116-28-116-126 0-28 10-51 26-69-3-6-11-32 3-67 0 0 21-7 70 26 42-12 86-12 128 0 49-33 70-26 70-26 14 35 6 61 3 67 16 18 26 41 26 69 0 98-60 120-117 126 10 8 18 24 18 48l-1 70c0 6 3 12 16 12z"></path> | ||||||
|  | </svg> | ||||||
| After Width: | Height: | Size: 563 B | 
							
								
								
									
										
											BIN
										
									
								
								src/images/linux.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 43 KiB | 
							
								
								
									
										1
									
								
								src/images/linux.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1 @@ | |||||||
|  | <svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 266 312" width="266" height="312"><style>.a{fill:#00b8db}</style><path class="a" d="m132.6 291.6q-19.5 0-30 5.3v-0.3c-5 6-10.6 9.1-18.4 9.1-4.9 0-12.6-1.9-23-5.7-10.5-3.6-19.8-6.4-27.9-8.2-0.8-0.2-2.6-0.6-5.5-1-2.8-0.5-5.4-0.9-7.7-1.4-2.1-0.5-4.5-1.1-7.1-2.1q-3.8-1.1-6-3-2.1-1.9-2.1-4.3 0-2.4 1-5.1c0.7-1.1 1.4-2.2 2.1-3.2 0.7-1.1 1.3-2.1 1.7-3.1 0.6-0.9 1-1.8 1.4-2.8 0.4-0.9 0.8-1.8 1-2.9 0.2-1 0.4-2 0.4-3 0-1-0.4-4-1.2-9.3q-1.2-7.8-1.2-9.9c0-4.4 1-7.9 3.2-10.4 2.2-2.5 4.3-3.8 6.5-3.8h11.5c0.9 0 2.3-0.5 4.4-1.7 0.7-1.6 1.3-2.9 1.7-4.1 0.5-1.2 0.7-2.1 0.9-2.5 0.2-0.6 0.4-1.2 0.6-1.7 0.4-0.7 0.9-1.5 1.6-2.3q-1.2-1.5-1.2-3.9c0-1.1 0-2.1 0.2-2.7 0-3.6 1.7-8.7 5.3-15.4l3.5-6.3c2.9-5.4 5.1-9.4 6.7-13.4 1.7-4 3.5-10 5.5-18q2.4-10.5 11.4-21l7.5-9c5.2-6 8.6-11 10.5-15 1.9-4 2.9-9 2.9-13 0-2-0.5-8-1.6-18-1-10-1.5-20-1.5-29 0-7 0.6-12 1.9-17 1.3-5 3.6-10 7-14 3-4 7-8 13-10q9-3 21-3c3 0 6 0 9 1q4.5 0 12 3c4 2 8 4 11 7 4 3 7 8 10 13 2 6 4 12 5 20 1 5 1 10 2 17 0 6 1 10 1 13 1 3 1 7 2 12 1 4 2 8 4 11 2 4 4 8 7 12 3 5 7 10 11 16 9 10 16 21 20 32 5 10 8 23 8 36.9q0 10.3-3 20.1c2 0 3 0.8 4 2.2 1 1.4 2 4.4 3 9.1l1 7.4c1 2.2 2 4.3 5 6.1 2 1.8 4 3.3 7 4.5 2 1 5 2.4 7 4.2q3 3 3 6.3c0 3.4-1 5.9-3 7.7-2 2-4 3.4-7 4.3-2 1-6 3-12 5.8q-7.5 4.4-15 10.8l-10 8.5c-4 3.9-8 6.7-11 8.4-3 1.8-7 2.7-11 2.7l-7-0.8c-8-2.1-13-6.1-16-12.2-16-1.9-29-2.9-37-2.9m-27.9-212.3c-4-2-5-5-5-10 0-3 0-5 2-7 1-2 3-3 5-3 2 0 3 1 5 3 1 3 2 6 2 9v2h1v-1c1 0 1-2 1-6 0-3 0-6-2-9-2-3-4-5-8-5-3 0-6 2-7 5-2 4-2.4 7-2.4 12 0 4 1.4 8 5.4 12 1-1 2-1 3-2zm33-4c-1-1-1-3-1-5 0-4 0-6 2-9q3-3 6-3c3 0 5 2 7 4 1 3 2 5 2 8q0 7.5-6 9c0 0 1 1 2 1 2 0 3 1 5 2 1-6 2-10 2-15 0-6-1-10-3-13-3-3-6-4-10-4q-4.5 0-9 3c-2 3-3 5-3 8 0 5 1 9 3 13 1 0 2 1 3 1zm12 16c-13 9-23 13-31 13-7 0-14-3-20-8 1 2 2 4 3 5l6 6c4 4 9 6 14 6 7 0 15-4 25-11l9-6c2-2 4-4 4-7 0-1 0-2-1-2-1-2-6-5-16-8-9-4-16-6-20-6q-4.5 0-15 6c-6 4-10 8-10 12 0 0 1 1 2 3 6 5 12 8 18 8 8 0 18-4 31-14v2c1 0 1 1 1 1zm-39-22c0-5-2-8-5-8 0 0 0 1-1 1v2h3c0 2 1 3 1 5zm119 151c1 0 1-0.4 1-1.3 0-2.2-1-4.8-4-7.7-3-3-8-4.9-14-5.7-1-0.1-2-0.1-2-0.1-1-0.2-1-0.2-2-0.2-1-0.1-3-0.3-4-0.5 3-9.3 4-17.5 4-24.7 0-10-2-17-6-23-4-6-8-9-13-10-1 1-1 1-1 2 5 2 10 6 13 12 3 7 4 13 4 20 0 5.6-1 13.9-5 24.5-4 1.6-8 5.3-11 11.1 0 0.9 0 1.4 1 1.4 0 0 1-0.9 2-2.6 2-1.7 3-3.4 5-5.1 3-1.7 5-2.6 8-2.6 5 0 10 0.7 13 2.1 4 1.3 6 2.7 7 4.3q1.5 2.2 3 4.2c0 1.3 1 1.9 1 1.9zm-84-156c2 0 3 2 4 5h2c-1-1-1-2-1-3 0-1 0-2-1-3-1-1-2-2-3-2 0 0-1 1-2 1 0 1 1 1 1 2zm-17 15c0 1-1 1-1 1h-1c-1 0-1-1-2-2 0 0-1-1-1-2 0-1 0-1 1-1l2 1c1 1 2 2 2 3zm44 214c4 7.5 11 11.3 19 11.3q3 0 6-0.9c2-0.4 4-1.1 5-1.9 1-0.7 2-1.4 3-2.2 2-0.7 2-1.2 3-1.7l17-14.7c4-3.2 8-6 13-8.4 4-2.4 8-4 10-4.9 3-0.8 5-2 7-3.6 1-1.5 2-3.4 2-5.8 0-2.9-2-5.1-4-6.7-2-1.6-4-2.7-6-3.4-2-0.7-4-2.3-7-5-2-2.6-4-6.2-5-10.9l-1-5.8c-1-2.7-1-4.7-2-5.8 0-0.3 0-0.4-1-0.4-1 0-3 0.9-4 2.6-2 1.7-4 3.6-6 5.6-1 2-4 3.8-6 5.5-3 1.7-6 2.6-8 2.6-8 0-12-2.2-15-6.5-2-3.2-3-6.9-4-11.1-2-1.7-3-2.6-5-2.6-5 0-7 5.2-7 15.7v31.1c0 0.9-1 2.9-1 6-1 3.1-1 6.6-1 10.6l-2 11.1v0.1m-145-5.2q13.9 2 32.1 8.7c12.1 4.4 19.5 6.7 22.2 6.7 7 0 12.8-3.1 17.6-9.1 1-2 1-4.2 1-6.9q0-14.1-17.1-35.9l-6.8-9.1c-1.4-1.9-3.1-4.8-5.3-8.7-2.1-3.9-4-6.9-5.5-9-1.3-2.3-3.4-4.6-6.1-6.9-2.6-2.3-5.6-3.8-8.9-4.6-4.2 0.8-7.1 2.2-8.5 4.1-1.4 1.9-2.2 4-2.4 6.2-0.3 2.1-0.9 3.5-1.9 4.2-1 0.6-2.7 1.1-5 1.6-0.5 0-1.4 0-2.7 0.1h-2.7c-5.3 0-8.9 0.6-10.8 1.6-2.5 2.9-3.8 6.2-3.8 9.7q0 2.4 1.2 8.1c0.8 3.7 1.2 6.7 1.2 8.8 0 4.1-1.2 8.2-3.7 12.3-2.5 4.3-3.8 7.5-3.8 9.8 1 3.9 7.6 6.6 19.7 8.2m33.3-90.9c0-6.9 1.8-14.5 5.5-23.5 3.6-9 7.2-15 10.7-19-0.2-1-0.7-1-1.5-1l-1-1c-2.9 3-6.4 10-10.6 20-4.2 9-6.4 17.3-6.4 23.4 0 4.5 1.1 8.4 3.1 11.8 2.2 3.3 7.5 8.1 15.9 14.2l10.6 6.9c11.3 9.8 17.3 16.6 17.3 20.6 0 2.1-1 4.2-4 6.5-2 2.4-4.7 3.6-7 3.6-0.2 0-0.3 0.2-0.3 0.7 0 0.1 1 2.1 3.1 6 4.2 5.7 13.2 8.5 25.2 8.5 22 0 39-9 52-27 0-5 0-8.1-1-9.4v-3.7c0-6.5 1-11.4 3-14.6 2-3.2 4-4.7 7-4.7 2 0 4 0.7 6 2.2 1-7.7 1-14.4 1-20.4 0-9.1 0-16.6-2-23.6-1-6-3-11-5-15l-6-9c-2-3-3-6-5-9-1-4-2-7-2-12-3-5-5-10-8-15-2-5-4-10-6-14l-9 7c-10 7-18 10-25 10-6 0-11-1-14-5l-6-5c0 3-1 7-3 11l-6.3 12c-2.8 7-4.3 11-4.6 14-0.4 2-0.7 4-0.9 4l-7.5 15c-8.1 15-12.2 28.9-12.2 40.4 0 2.3 0.2 4.7 0.6 7.1-4.5-3.1-6.7-7.4-6.7-13zm54.7-116.7c-1 0-1 0-1-1 0-1 0-2 1-3 2 0 3-1 3-1 1 0 1 1 1 1 0 1-1 2-3 4z"/></svg> | ||||||
| After Width: | Height: | Size: 4.2 KiB | 
							
								
								
									
										1
									
								
								src/images/logomark.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 110 KiB | 
							
								
								
									
										5
									
								
								src/images/logos/bbc.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,5 @@ | |||||||
|  | <svg width="83" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> | ||||||
|  |   <path fill-rule="evenodd" clip-rule="evenodd" | ||||||
|  |     d="M0 15.531v11.531h24.771V4H0v11.531Zm29.042 0v11.531h24.771V4H29.041v11.531Zm29.041 0v11.531h24.771V4H58.083v11.531ZM14.807 7.817c.979.444 1.988 1.197 2.242 1.67.254.475.461 1.43.461 2.125 0 .694-.364 1.713-.81 2.263l-.81 1 1.548 1.34c1.307 1.13 1.548 1.608 1.548 3.079 0 1.25-.29 2.049-1.026 2.834-.565.6-1.714 1.283-2.553 1.516-.84.233-3.208.425-5.264.426l-3.737.003V6.99l3.31.009c2.32.006 3.843.251 5.09.818Zm28.763-.134c1.045.418 1.982 1.173 2.358 1.9.343.665.624 1.677.624 2.25 0 .572-.365 1.492-.81 2.042-.81 1-.81 1 .68 2.29 1.18 1.02 1.5 1.621 1.535 2.888.028 1-.281 2.041-.827 2.776-.48.647-1.526 1.406-2.326 1.686s-3.233.52-5.406.534l-3.95.024V6.99h3.194c1.952 0 3.87.27 4.928.693Zm32.237-.116c1.566.47 1.72.65 1.844 2.148.1 1.222-.007 1.577-.427 1.402-.31-.128-1.59-.551-2.846-.94-1.556-.484-2.896-.618-4.206-.421-1.325.198-2.407.732-3.482 1.717-1.464 1.342-1.56 1.588-1.56 3.997 0 2.26.151 2.725 1.257 3.88.692.721 1.94 1.501 2.776 1.734.836.232 2.096.418 2.8.414.705-.004 2.387-.463 3.738-1.018l2.455-1.01v1.592c0 1.318-.202 1.688-1.174 2.148-.646.306-2.667.65-4.492.765-2.484.156-3.79.027-5.204-.512-1.038-.397-2.562-1.468-3.387-2.38-.824-.913-1.715-2.46-1.978-3.44-.264-.98-.36-2.496-.211-3.37.148-.874.624-2.175 1.06-2.892.436-.717 1.434-1.781 2.217-2.366.783-.584 2.001-1.264 2.706-1.51.704-.246 2.434-.448 3.844-.449 1.409 0 3.33.23 4.27.511ZM9.48 12.007l.13 2.03 1.685-.057c1.182-.039 1.915-.34 2.456-1.008.424-.523.77-1.11.77-1.301 0-.192-.301-.651-.67-1.02-.411-.411-1.415-.672-2.586-.672H9.349l.13 2.029Zm29.042 0 .13 2.03 1.594-.048c.876-.027 1.886-.29 2.242-.587.357-.296.648-.956.648-1.468 0-.511-.23-1.16-.512-1.442-.282-.282-1.35-.513-2.372-.513h-1.86l.13 2.029ZM9.48 19.056l.128 2.242 2.45-.05c1.347-.026 2.74-.29 3.096-.585.356-.296.647-.983.647-1.529 0-.545-.427-1.29-.95-1.655-.57-.4-1.855-.666-3.225-.666H9.351l.13 2.243Zm29.041 0c.123 2.136.189 2.249 1.403 2.387.7.08 1.995-.072 2.878-.337 1.184-.354 1.68-.776 1.887-1.604.217-.864.06-1.305-.683-1.907-.672-.543-1.674-.782-3.29-.782h-2.324l.13 2.243Z" | ||||||
|  |     fill="#737373" /> | ||||||
|  | </svg> | ||||||
| After Width: | Height: | Size: 2.1 KiB | 
							
								
								
									
										5
									
								
								src/images/logos/cbs.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,5 @@ | |||||||
|  | <svg width="101" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> | ||||||
|  |   <path | ||||||
|  |     d="M15.072 1C6.675 1 0 7.855 0 16.205c0 8.44 6.676 15.297 15.072 15.297 8.44 0 15.026-6.855 15.026-15.295C30.099 7.857 23.51 1 15.072 1Zm0 6.454c6.855 0 11.876 4.353 13.998 8.753-2.122 4.467-7.143 8.841-13.998 8.841-6.9 0-11.881-4.375-14.002-8.84 2.12-4.4 7.104-8.751 14.002-8.751v-.003Zm0 .692c-4.466 0-8.107 3.614-8.107 8.059a8.092 8.092 0 0 0 8.107 8.106c4.465 0 8.058-3.595 8.058-8.104a8.055 8.055 0 0 0-8.058-8.061ZM44.506 2.81c-7.883 0-13.376 5.983-13.376 13.261v.088c0 7.368 5.606 13.198 13.177 13.198 4.934 0 7.882-1.765 10.517-4.601L51.23 21.14c-2.01 1.83-3.822 3.016-6.747 3.016-4.398 0-7.457-3.689-7.457-8.086v-.066c0-4.399 3.126-7.995 7.457-7.995 2.568 0 4.578 1.094 6.566 2.904l3.595-4.155c-2.389-2.344-5.291-3.95-10.137-3.95ZM56.951 3.254v25.653h12.213c5.782 0 9.6-2.341 9.6-7.029v-.09c0-3.438-1.829-5.16-4.801-6.297 1.832-1.026 3.372-2.633 3.372-5.536V9.89c0-1.767-.581-3.195-1.765-4.378-1.472-1.45-3.772-2.257-6.698-2.257h-11.92Zm5.49 4.934h5.584c2.39 0 3.705.96 3.705 2.635v.09c0 1.898-1.585 2.702-4.085 2.702l-5.203.002V8.188Zm0 10.119h6.545c2.878 0 4.173 1.073 4.173 2.792v.087c0 1.898-1.517 2.768-3.995 2.768l-6.722.003v-5.65ZM89.833 2.876c-5.224 0-8.974 3.08-8.974 7.745v.069c0 5.093 3.347 6.523 8.506 7.84 4.287 1.115 5.179 1.829 5.179 3.258v.09c0 1.495-1.408 2.412-3.707 2.412-2.948 0-5.36-1.209-7.66-3.106L79.83 25.18c3.081 2.747 7.01 4.088 10.896 4.088v-.003c5.537 0 9.421-2.86 9.421-7.946v-.067c0-4.487-2.946-6.344-8.149-7.705-4.42-1.14-5.538-1.697-5.538-3.372v-.066c0-1.25 1.139-2.255 3.305-2.255 2.166 0 4.4.959 6.678 2.542l2.924-4.26c-2.59-2.077-5.781-3.261-9.533-3.261Z" | ||||||
|  |     fill="#737373" /> | ||||||
|  | </svg> | ||||||
| After Width: | Height: | Size: 1.7 KiB | 
							
								
								
									
										11
									
								
								src/images/logos/cnn.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,11 @@ | |||||||
|  | <svg width="68" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> | ||||||
|  |   <path | ||||||
|  |     d="M5.155 15.807c0 5.795 4.715 10.51 10.51 10.51h9.817c.617 0 1.095-.586 1.095-1.09V5.966a2.21 2.21 0 0 1 2.206-2.207c.78 0 1.508.414 1.897 1.08a91573.874 91573.874 0 0 1 12.332 21.263.918.918 0 0 0 1.701-.476V5.968c0-1.217.99-2.207 2.206-2.207.78 0 1.508.414 1.897 1.08.05.084 3.02 5.208 6.164 10.634l6.16 10.63a.918.918 0 0 0 1.7-.476V.138h-3.87V15.31S51.96 3.243 51.734 2.855C50.709 1.105 48.768 0 46.703 0a5.861 5.861 0 0 0-5.86 5.86v9.45s-7.01-12.067-7.238-12.455C32.582 1.105 30.641 0 28.575 0a5.861 5.861 0 0 0-5.86 5.86V21.39c.003.565-.422 1.057-1.04 1.059h-5.968a6.64 6.64 0 0 1 0-13.282h4.998V5.297h-5.04c-5.795 0-10.51 4.715-10.51 10.51Z" | ||||||
|  |     fill="#737373" /> | ||||||
|  |   <path | ||||||
|  |     d="M64.13.137v25.49c0 1.217-.989 2.207-2.206 2.207-.78 0-1.508-.414-1.897-1.08-.05-.084-3.02-5.209-6.163-10.634l-6.16-10.63a.918.918 0 0 0-1.7.475v19.662c-.001 1.217-.99 2.207-2.208 2.207-.78 0-1.507-.414-1.897-1.08L35.732 16.12 29.567 5.49a.917.917 0 0 0-1.7.475v19.26c0 1.269-1.115 2.381-2.385 2.381h-9.816c-6.507 0-11.8-5.293-11.8-11.8 0-6.506 5.293-11.8 11.8-11.8h5.04V.136H15.67C7.016.137 0 7.153 0 15.807c0 8.655 7.016 15.67 15.67 15.67h9.911c3.754.002 6.169-2.198 6.164-6.255v-8.938s7.06 12.153 7.238 12.456a5.86 5.86 0 0 0 10.89-3.006v-9.45s7.01 12.068 7.238 12.456c1.023 1.75 2.964 2.855 5.03 2.855A5.86 5.86 0 0 0 68 25.734V.136h-3.87Z" | ||||||
|  |     fill="#737373" /> | ||||||
|  |   <path | ||||||
|  |     d="M3.865 15.807c0 6.507 5.294 11.8 11.8 11.8h9.817c1.27 0 2.384-1.112 2.384-2.38V5.966a.917.917 0 0 1 1.7-.475c.05.084 3.159 5.445 6.165 10.629L41.9 26.755a2.202 2.202 0 0 0 1.897 1.08 2.21 2.21 0 0 0 2.207-2.207V5.967a.917.917 0 0 1 1.7-.475l6.16 10.629 6.163 10.634a2.201 2.201 0 0 0 1.897 1.08c1.218 0 2.207-.99 2.207-2.207V.138h-1.29v25.49a.918.918 0 0 1-1.7.475l-6.16-10.629c-3.145-5.426-6.114-10.55-6.164-10.634a2.201 2.201 0 0 0-1.897-1.08 2.21 2.21 0 0 0-2.206 2.207v19.66a.918.918 0 0 1-1.701.476A344293.41 344293.41 0 0 1 30.68 4.84a2.201 2.201 0 0 0-1.897-1.08 2.21 2.21 0 0 0-2.207 2.207v19.26c0 .504-.478 1.09-1.094 1.09h-9.817c-5.795 0-10.51-4.715-10.51-10.51s4.715-10.51 10.51-10.51h5.04v-1.29h-5.04c-6.506 0-11.8 5.294-11.8 11.8Z" | ||||||
|  |     fill="#fff" /> | ||||||
|  | </svg> | ||||||
| After Width: | Height: | Size: 2.2 KiB | 
							
								
								
									
										5
									
								
								src/images/logos/fast-company.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,5 @@ | |||||||
|  | <svg width="124" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> | ||||||
|  |   <path fill-rule="evenodd" clip-rule="evenodd" | ||||||
|  |     d="M58.787 11.975c0 2.488-.249 10.2-.249 10.2 0 1.492.498 2.154 1.907 2.154v.663H54.89v-.663c1.409 0 2.155-.662 2.155-2.155l.498-12.602c-.415-.996-.83-1.327-1.907-1.41v-.58h4.228l4.478 11.774 4.561-11.774h3.814v.58c-1.078 0-1.658.498-1.658 1.658l.498 12.189c0 1.824.331 2.322 1.824 2.322v.662h-6.385v-.662c1.244 0 1.825-.415 1.741-2.322l-.331-10.033-3.067 8.457a31.599 31.599 0 0 0-1.162 3.649l-.994.083c-.249-.912-.912-2.57-.912-2.57l-3.484-9.62Zm-5.224 13.1c-.332-.083-.663-.083-.995-.083-.663 0-1.825.332-3.234.332-5.39 0-9.37-3.233-9.37-9.203 0-5.058 3.732-8.955 9.452-8.955 1.327 0 2.82.25 4.064.747.248-.25.33-.415.58-.663h.497c-.083.912-.414 3.897-.414 3.897h-.498c-.332-1.741-1.244-2.902-4.146-2.902-3.482 0-6.633 2.736-6.633 7.794 0 5.721 3.234 8.208 6.799 8.208 2.322 0 3.73-1.326 4.643-2.985l.58.25-1.326 3.564ZM37.89 10.816h-.58c-.083-1.576-.58-2.074-1.824-2.074h-2.405V21.76c0 2.155.415 2.57 1.825 2.57v.663h-6.219v-.663c1.41 0 1.825-.415 1.825-2.654V8.741h-2.405c-1.575 0-1.825.415-2.24 2.073h-.579l.415-3.731.414.083c.166.414.498.414 1.493.414h8.043c1.493 0 1.824 0 2.156-.497h.498l-.416 3.73v.001ZM20.314 25.406c-1.161 0-2.073-.166-2.736-.415-.663-.165-1.161-.414-1.41-.58-.331.331-.58.746-.58.746l-.498-.166.415-3.897.58.084c.332 1.824 1.575 3.15 4.146 3.15 1.99 0 3.316-1.658 3.316-3.482 0-1.492-.58-2.24-2.57-3.732l-1.742-1.16c-1.824-1.16-2.985-2.488-2.985-4.643 0-2.488 2.073-4.147 4.81-4.147 1.574 0 2.57.498 2.902.663l.58-.663.414.084-.415 3.565-.58-.083c0-1.658-.995-2.404-2.653-2.404-1.575 0-2.736.83-2.736 2.404 0 1.41 1.078 2.322 2.321 3.15l1.658 1.079c2.902 2.072 3.566 3.399 3.566 5.389 0 2.901-2.238 5.057-5.803 5.057v.001Zm-9.452-14.593H10.2c0-1.493-.663-2.073-1.99-2.073H4.48v6.55h2.404c1.243 0 1.493-.662 1.658-1.74h.58v4.643h-.58c-.165-1.244-.415-1.741-1.742-1.741H4.48v5.556c0 2.072.497 2.322 1.824 2.322v.662H0v-.662c1.575 0 1.824-.415 1.824-2.322V9.819c0-1.16-.498-1.658-1.824-1.658v-.58h8.623c1.492 0 1.824-.084 2.073-.581h.58l-.415 3.814h.001Zm89.465.995v9.95c0 2.155.496 2.57 1.823 2.57v.663h-9.783v-.663c.747 0 1.409-.25 1.409-.747 0-.332-.083-.912-.249-1.493l-.747-2.404H87.31c-.084.332-1.078 3.067-1.078 3.814 0 .663.747.83 1.243.83v.663h-4.56v-.663c.829 0 1.492-.084 2.072-1.824l4.23-13.516c-.25-.58-.581-.745-1.16-.83v-.58h3.73l4.476 14.18c.416 1.491.83 2.238 1.493 2.569.996-.331 1.245-.663 1.245-2.57V9.82c-.747-.994-.83-1.658-2.24-1.658v-.58h4.229l6.964 11.855V10.4c0-1.824-.413-2.239-1.824-2.239v-.58h9.286v.58c-.58 0-1.077.249-1.077.83 0 .414.166.828.331 1.326l2.654 5.722 2.571-5.555c.413-.746.498-1.16.498-1.576 0-.497-.334-.746-1.078-.746v-.58h4.394v.58c-1.078 0-1.743.995-2.239 2.154l-3.4 6.966v4.56c0 1.99.498 2.487 1.825 2.487v.663h-6.302v-.663c1.326 0 1.824-.496 1.824-2.487v-3.897l-3.649-7.711c-.662-1.492-.911-1.823-1.327-2.073-.828.331-1.077.912-1.077 2.239v12.769l.166 2.155-1.078.083-8.125-13.598h.001Zm-10.364-.83-2.323 7.547h4.81l-2.488-7.546ZM79.68 18.526h-1.243v3.565c0 1.824.496 2.239 1.907 2.239v.663h-6.385v-.663c1.327 0 1.825-.497 1.825-2.321V10.317c0-1.823-.498-2.155-1.825-2.155v-.58h4.809c4.643 0 7.379 1.409 7.379 5.223 0 3.98-3.316 5.721-6.467 5.721Zm-.83-9.784h-.413v8.54h.745c2.737 0 4.147-1.245 4.147-4.395 0-3.15-1.244-4.145-4.478-4.145ZM50.744 21.676c-3.15 0-5.306-2.24-5.306-5.472 0-3.068 2.24-5.472 5.306-5.472 2.986 0 5.224 2.322 5.224 5.472 0 3.067-2.322 5.472-5.224 5.472Zm0-9.95c-2.155 0-2.902 2.073-2.902 4.478 0 2.24.664 4.477 2.902 4.477 2.156 0 2.82-2.24 2.82-4.56 0-2.238-.83-4.395-2.82-4.395Zm-36.481 8.955v-.58c.83 0 .995-.248.995-.497 0-.333-.083-.581-.166-.83 0 0-.167-.664-.332-1.16h-3.234l-.331 1.078c-.083.248-.166.497-.166.828 0 .331.332.58.83.58v.581H8.624v-.58c.83 0 1.161-.248 1.492-1.16l2.488-7.463c-.083-.332-.332-.58-.83-.58v-.58h2.653l2.736 7.96c.415 1.408.83 1.823 1.492 1.823v.58h-4.393ZM13.1 12.638l-1.243 4.063h2.57l-1.326-4.063Z" | ||||||
|  |     fill="#737373" /> | ||||||
|  | </svg> | ||||||
| After Width: | Height: | Size: 3.9 KiB | 
							
								
								
									
										5
									
								
								src/images/logos/forbes.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,5 @@ | |||||||
|  | <svg width="82" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> | ||||||
|  |   <path | ||||||
|  |     d="M49.928 11.88c-1.318 0-2.354.286-3.39.854L46.632 6 40.32 7.138v.57l.66.094c.846.19 1.13.664 1.317 1.803.19 2.277.094 14.42 0 16.412 1.696.38 3.485.665 5.276.665 4.993 0 8.008-3.132 8.008-8.064 0-3.89-2.45-6.736-5.653-6.736v-.001Zm-2.166 13.757c-.377 0-.848 0-1.13-.095-.095-1.328-.189-6.925-.095-11.858.566-.19.941-.285 1.413-.285 2.075 0 3.205 2.467 3.205 5.502 0 3.796-1.414 6.736-3.392 6.736ZM16.58 6.378H0v.854l.942.095c1.224.19 1.696.948 1.884 2.75.283 3.416.189 9.583 0 12.523-.189 1.803-.659 2.657-1.884 2.75L0 25.54v.76h10.645v-.76l-1.13-.19c-1.226-.094-1.697-.948-1.884-2.75a77.793 77.793 0 0 1-.19-5.692l2.262.095c1.413 0 2.072 1.139 2.354 2.75h.849V13.02h-.849c-.283 1.613-.941 2.75-2.354 2.75l-2.26.096c0-3.226.094-6.262.189-8.064h3.296c2.545 0 3.864 1.612 4.805 4.459l.942-.285-.094-5.598h-.001Zm5.37 5.313c4.71 0 7.065 3.226 7.065 7.495 0 4.079-2.638 7.495-7.348 7.495s-7.065-3.227-7.065-7.495c0-4.08 2.638-7.495 7.349-7.495h-.001Zm-.283.949c-2.073 0-2.638 2.846-2.638 6.546 0 3.604.942 6.545 2.826 6.545 2.166 0 2.731-2.846 2.731-6.545 0-3.605-.94-6.546-2.92-6.546h.001Zm35.138 6.64c0-3.889 2.449-7.589 7.253-7.589 3.955 0 5.84 2.942 5.84 6.83h-8.76c-.095 3.51 1.6 6.073 4.992 6.073 1.508 0 2.26-.379 3.204-1.044l.376.474c-.943 1.328-3.014 2.657-5.652 2.657-4.24-.001-7.253-3.036-7.253-7.4Zm4.332-1.802 4.428-.095c0-1.897-.283-4.743-1.883-4.743-1.601 0-2.45 2.656-2.544 4.838Zm19.974-5.028c-1.13-.475-2.638-.759-4.334-.759-3.485 0-5.653 2.087-5.653 4.554s1.6 3.51 3.864 4.27c2.355.852 3.014 1.517 3.014 2.655 0 1.139-.848 2.182-2.355 2.182-1.79 0-3.11-1.043-4.145-3.89l-.66.19.095 4.175c1.13.474 3.202.855 4.993.855 3.674 0 6.03-1.899 6.03-4.839 0-1.993-1.038-3.13-3.487-4.08-2.638-1.043-3.579-1.707-3.579-2.94 0-1.234.85-2.088 1.98-2.088 1.695 0 2.826 1.043 3.675 3.606l.659-.19-.096-3.7h-.001Zm-39.85-.379c-1.6-.948-4.427-.474-5.934 2.942l.093-3.321-6.31 1.233v.57l.66.095c.848.095 1.223.57 1.319 1.803.188 2.277.093 6.261 0 8.253-.095 1.138-.47 1.707-1.32 1.802l-.66.095v.759h8.761v-.759l-1.13-.095c-.942-.095-1.224-.665-1.32-1.802-.188-1.803-.188-5.408-.093-7.684.47-.665 2.543-1.233 4.427 0l1.508-3.89Z" | ||||||
|  |     fill="#737373" /> | ||||||
|  | </svg> | ||||||
| After Width: | Height: | Size: 2.2 KiB | 
							
								
								
									
										5
									
								
								src/images/logos/huffpost.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,5 @@ | |||||||
|  | <svg width="142" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> | ||||||
|  |   <path | ||||||
|  |     d="M18.359 24.268h5.186l2.78-15.914H21.14l-1.026 5.7h-4.496l1.025-5.7h-5.186l-2.78 15.914h5.186l1.045-5.955h4.496l-1.045 5.955ZM29.264 8.335l-1.578 8.854c-.138.69-.197 1.36-.197 1.992 0 4.693 4.102 5.403 6.567 5.403 5.166 0 7.395-1.716 8.203-6.35l1.736-9.919h-5.187l-1.479 8.322c-.473 2.603-.808 3.964-2.74 3.964-1.263 0-1.874-.67-1.874-2.051 0-.533.079-1.183.237-1.992l1.498-8.243h-5.186v.02ZM71.404 24.268h5.187l.73-4.101h2.444c4.516 0 7.02-2.446 7.02-6.902 0-3.136-2.169-4.93-5.974-4.93h-6.626l-2.78 15.933Zm8.085-8.026h-1.498l.69-3.746h1.4c1.144 0 1.755.572 1.755 1.617 0 1.321-.888 2.13-2.347 2.13ZM96.862 8c-5.64 0-9.011 3.648-9.011 9.78 0 4.26 2.681 6.824 7.177 6.824 5.64 0 9.012-3.648 9.012-9.781.02-4.28-2.662-6.823-7.178-6.823Zm-1.518 12.482c-1.34 0-2.13-.966-2.13-2.583 0-.611.06-1.144.178-1.755.394-2.09 1.065-4.003 3.175-4.003 1.34 0 2.13.966 2.13 2.583 0 .612-.06 1.144-.178 1.755-.395 2.07-1.065 4.003-3.175 4.003ZM122.083 24.268h5.186l2.051-11.654h3.904l.75-4.26h-13.272l-.749 4.26h4.141l-2.011 11.654ZM113.485 14.231c-1.636-.512-2.307-.73-2.307-1.498 0-.513.335-1.124 1.321-1.124.73 0 1.341.414 1.578 1.025l4.575-1.242C118.119 9.144 116.187 8 112.854 8c-6.27 0-6.763 4.2-6.763 5.482 0 2.603 1.38 4.2 4.377 5.029.789.216 1.696.453 1.696 1.32 0 .69-.513 1.125-1.4 1.125-.808 0-1.676-.474-1.972-1.302l-4.516 1.223c.493 2.366 2.722 3.707 6.212 3.707 2.662 0 7.119-.71 7.119-5.521.019-2.406-1.341-3.984-4.122-4.832ZM5.778 24.268l2.8-15.914H0v15.914h5.778ZM136.202 8.354l-2.78 15.914H142V8.354h-5.798ZM50.186 19.575h4.358l.71-4.003h-4.358l.493-2.958h6.093l.75-4.279h-11.28l-2.78 15.933h5.186l.828-4.693ZM63.773 19.575h4.378l.71-4.003h-4.358l.493-2.958h6.093l.75-4.279h-11.28l-2.78 15.933h5.185l.809-4.693Z" | ||||||
|  |     fill="#737373" /> | ||||||
|  | </svg> | ||||||
| After Width: | Height: | Size: 1.8 KiB | 
							
								
								
									
										5
									
								
								src/images/logos/techcrunch.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,5 @@ | |||||||
|  | <svg width="181" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> | ||||||
|  |   <path | ||||||
|  |     d="M66.825 12.77v11.34h-4.157V12.77H58.48V9.14h12.54v3.63h-4.195Zm13.89 6.85h-6.632a1.77 1.77 0 0 0 1.904 1.803 5.853 5.853 0 0 0 2.911-.793l1.507 2.506a8.69 8.69 0 0 1-4.528 1.293c-3.398 0-5.241-2.405-5.241-5.852 0-3.878 2.186-5.875 5.132-5.875 2.945 0 5.002 2.041 5.002 6.215-.044.272-.044.51-.056.704h.001Zm-5.099-4.117c-.884 0-1.37.601-1.495 1.724h3.206c-.193-1.145-.578-1.723-1.711-1.723Zm12.257 8.88c-3.296 0-5.256-2.098-5.256-5.897 0-3.402 1.745-5.83 5.347-5.83A4.676 4.676 0 0 1 92.28 15.2l-2.651 2.038c-.532-.975-.895-1.452-1.733-1.452-.837 0-1.47.986-1.47 2.766s.533 2.704 1.587 2.704c.725 0 1.23-.409 1.948-1.463l2.436 1.906c-1.31 1.94-2.526 2.688-4.52 2.688l-.004-.003Zm13.142-.238V17.76c0-1.463-.488-1.849-1.28-1.849-.793 0-1.311.386-1.311 1.804v6.43h-3.851V10.071l3.85-1.543v5.115a4.348 4.348 0 0 1 2.833-.986c2.462 0 3.637 1.656 3.637 4.604v6.884h-3.878Zm13.095.239c-4.453 0-6.797-3.3-6.797-7.735 0-4.82 2.832-7.734 6.797-7.734 3.681 0 5.131 1.577 6.162 4.41l-3.761 1.471c-.544-1.39-1.053-2.268-2.424-2.268-1.734 0-2.482 1.736-2.482 4.117 0 2.382.726 4.106 2.527 4.106 1.302 0 1.858-.704 2.673-2.121l3.513 1.871a6.446 6.446 0 0 1-6.209 3.878l.001.005Zm15.701-7.247a2.411 2.411 0 0 0-1.79-.942c-.94 0-1.517.453-1.517 1.826v6.124h-3.852V12.93h3.852v.816a3.394 3.394 0 0 1 4.213-.578l-.906 3.97Zm9.165 7.009v-.749a4.259 4.259 0 0 1-2.81.987c-2.462 0-3.636-1.656-3.636-4.617v-6.839h3.863v6.35c0 1.453.498 1.838 1.291 1.838.793 0 1.28-.385 1.28-1.792v-6.396h3.874v11.25l-3.862-.033Zm13.095 0V17.76c0-1.463-.499-1.849-1.28-1.849-.782 0-1.311.386-1.311 1.804v6.43h-3.851V12.93h3.851v.749a4.349 4.349 0 0 1 2.833-.987c2.461 0 3.636 1.656 3.636 4.604v6.884l-3.878-.033Zm11.385.238c-3.296 0-5.268-2.098-5.268-5.897 0-3.403 1.756-5.83 5.347-5.83a4.714 4.714 0 0 1 4.327 2.54l-2.65 2.007c-.545-.975-.907-1.452-1.734-1.452s-1.484.987-1.484 2.767c0 1.78.533 2.703 1.586 2.703.725 0 1.246-.408 1.949-1.463l2.435 1.905c-1.302 1.973-2.526 2.722-4.509 2.722l.001-.003v.001Zm13.13-.238V17.76c0-1.463-.488-1.849-1.281-1.849-.792 0-1.302.386-1.302 1.804v6.43h-3.851V10.071l3.851-1.543v5.115a4.296 4.296 0 0 1 2.821-.986c2.47 0 3.637 1.656 3.637 4.604v6.884h-3.875ZM0 3v8.54h8.519v17.066h8.53V11.539h8.518V3H0Zm34.096 17.067V11.54h-8.53v17.067h25.578v-8.539H34.096Zm0-17.066h17.048v8.538H34.096V3.001Z" | ||||||
|  |     fill="#737373" /> | ||||||
|  | </svg> | ||||||
| After Width: | Height: | Size: 2.4 KiB | 
							
								
								
									
										5
									
								
								src/images/logos/wired.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,5 @@ | |||||||
|  | <svg width="121" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> | ||||||
|  |   <path | ||||||
|  |     d="M101.512 7.74v16.645h8.198c2.291 0 3.617-.362 4.582-1.207 1.206-1.085 1.808-3.015 1.808-7.116 0-4.102-.602-6.031-1.808-7.117-.965-.844-2.291-1.206-4.582-1.206h-8.198Zm11.213 8.322c0 3.618-.241 4.463-.965 4.945-.482.362-1.085.482-2.29.482h-4.582V10.513h4.582c1.205 0 1.808 0 2.29.483.724.603.965 1.447.965 5.066Zm7.595 12.002H96.268V4h24.052v24.064Zm-43.703-17.55V7.739h14.226v5.308h-3.015v-2.534h-5.787v3.981h4.582v2.654H82.04v4.463h5.909v-2.895h3.013v5.669H76.618V21.61h2.29V10.513h-2.29Zm-12.9 9.528c0 1.81.12 3.136.36 4.222h3.257c-.122-.844-.241-2.412-.241-4.463-.122-2.412-.845-2.774-2.533-3.136 1.929-.362 2.774-1.206 2.774-4.222 0-2.412-.363-3.377-1.086-3.98-.482-.482-1.325-.724-2.653-.724H53.468v16.646h3.376V17.87h4.703c.965 0 1.325.121 1.688.362s.482.604.482 1.81Zm-6.873-4.825v-4.583h5.426c.724 0 .965.12 1.084.241.241.241.483.603.483 2.05 0 1.448-.242 1.93-.483 2.172-.119.12-.36.24-1.084.24l-5.426-.12Zm15.312 12.847H48.044V4h24.052v24.064h.06Zm-30.38-6.453v2.774H30.32V21.61h4.099V10.513h-4.1V7.74h11.454v2.775h-4.1V21.61h4.101ZM22.423 7.739H19.29L17 20.887 14.346 8.704c-.12-.844-.482-.965-1.206-.965h-1.688c-.723 0-1.085.241-1.205.965L7.595 20.887 5.305 7.739H1.929l3.255 15.802c.12.723.362.844 1.206.844h2.29c.724 0 .965-.12 1.207-.845l2.532-11.458L14.95 23.54c.12.723.361.844 1.205.844h2.17c.724 0 1.085-.12 1.206-.845l2.894-15.8h-.002Zm1.688 20.325H0V4h24.052v24.064h.06Z" | ||||||
|  |     fill="#737373" /> | ||||||
|  | </svg> | ||||||
| After Width: | Height: | Size: 1.5 KiB | 
							
								
								
									
										1
									
								
								src/images/mycelium.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 14 KiB | 
							
								
								
									
										
											BIN
										
									
								
								src/images/peers.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 118 KiB | 
							
								
								
									
										231
									
								
								src/images/phone-frame.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,231 @@ | |||||||
|  | <svg width="366" height="729" fill="none" xmlns="http://www.w3.org/2000/svg"> | ||||||
|  |   <g mask="url(#mask)"> | ||||||
|  |     <g filter="url(#a)"> | ||||||
|  |       <path | ||||||
|  |         d="M363.315 64.213C363.315 22.99 341.312 1 300.092 1H66.751C25.53 1 3.528 22.99 3.528 64.213v44.68l-.857.143A2 2 0 0 0 1 111.009v24.611a2 2 0 0 0 1.671 1.973l.95.158a2.26 2.26 0 0 1-.093.236v26.173c.212.1.398.296.541.643l-1.398.233A2 2 0 0 0 1 167.009v47.611a2 2 0 0 0 1.671 1.973l1.368.228c-.139.319-.314.533-.511.653v16.637c.221.104.414.313.56.689l-1.417.236A2 2 0 0 0 1 237.009v47.611a2 2 0 0 0 1.671 1.973l1.347.225c-.135.294-.302.493-.49.607v377.681c0 41.213 22 63.208 63.223 63.208h95.074c.947-.504 2.717-.843 4.745-.843l.141.001h.194l.086-.001 33.704.005c1.849.043 3.442.37 4.323.838h95.074c41.222 0 63.223-21.999 63.223-63.212v-394.63c-.259-.275-.48-.796-.63-1.47l-.011-.133 1.655-.276A2 2 0 0 0 366 266.62v-77.611a2 2 0 0 0-1.671-1.973l-1.712-.285c.148-.839.396-1.491.698-1.811V64.213Z" | ||||||
|  |         fill="url(#b)" /> | ||||||
|  |       <path | ||||||
|  |         d="M363.315 64.213C363.315 22.99 341.312 1 300.092 1H66.751C25.53 1 3.528 22.99 3.528 64.213v44.68l-.857.143A2 2 0 0 0 1 111.009v24.611a2 2 0 0 0 1.671 1.973l.95.158a2.26 2.26 0 0 1-.093.236v26.173c.212.1.398.296.541.643l-1.398.233A2 2 0 0 0 1 167.009v47.611a2 2 0 0 0 1.671 1.973l1.368.228c-.139.319-.314.533-.511.653v16.637c.221.104.414.313.56.689l-1.417.236A2 2 0 0 0 1 237.009v47.611a2 2 0 0 0 1.671 1.973l1.347.225c-.135.294-.302.493-.49.607v377.681c0 41.213 22 63.208 63.223 63.208h95.074c.947-.504 2.717-.843 4.745-.843l.141.001h.194l.086-.001 33.704.005c1.849.043 3.442.37 4.323.838h95.074c41.222 0 63.223-21.999 63.223-63.212v-394.63c-.259-.275-.48-.796-.63-1.47l-.011-.133 1.655-.276A2 2 0 0 0 366 266.62v-77.611a2 2 0 0 0-1.671-1.973l-1.712-.285c.148-.839.396-1.491.698-1.811V64.213Z" | ||||||
|  |         fill="url(#c)" /> | ||||||
|  |     </g> | ||||||
|  |     <g filter="url(#d)"> | ||||||
|  |       <path | ||||||
|  |         d="M5 133.772v-21.15c0-1.359-.54-2.661-1.5-3.622-.844-.073-2.496.257-2.496 2.157v24.562c.406 2.023 2.605 2.023 2.605 2.023A6.363 6.363 0 0 0 5 133.772Z" | ||||||
|  |         fill="url(#e)" /> | ||||||
|  |       <path | ||||||
|  |         d="M5 133.772v-21.15c0-1.359-.54-2.661-1.5-3.622-.844-.073-2.496.257-2.496 2.157v24.562c.406 2.023 2.605 2.023 2.605 2.023A6.363 6.363 0 0 0 5 133.772Z" | ||||||
|  |         fill="url(#f)" fill-opacity=".1" /> | ||||||
|  |     </g> | ||||||
|  |     <g filter="url(#g)"> | ||||||
|  |       <path | ||||||
|  |         d="M5 213.772v-46.15c0-1.359-.54-2.661-1.5-3.622-.844-.073-2.496.257-2.496 2.157v49.562c.406 2.023 2.605 2.023 2.605 2.023A6.363 6.363 0 0 0 5 213.772Z" | ||||||
|  |         fill="url(#h)" /> | ||||||
|  |       <path | ||||||
|  |         d="M5 213.772v-46.15c0-1.359-.54-2.661-1.5-3.622-.844-.073-2.496.257-2.496 2.157v49.562c.406 2.023 2.605 2.023 2.605 2.023A6.363 6.363 0 0 0 5 213.772Z" | ||||||
|  |         fill="url(#i)" fill-opacity=".1" /> | ||||||
|  |     </g> | ||||||
|  |     <g filter="url(#j)"> | ||||||
|  |       <path | ||||||
|  |         d="M5 283.772v-46.15c0-1.359-.54-2.661-1.5-3.622-.844-.073-2.496.257-2.496 2.157v49.562c.406 2.023 2.605 2.023 2.605 2.023A6.363 6.363 0 0 0 5 283.772Z" | ||||||
|  |         fill="url(#k)" /> | ||||||
|  |       <path | ||||||
|  |         d="M5 283.772v-46.15c0-1.359-.54-2.661-1.5-3.622-.844-.073-2.496.257-2.496 2.157v49.562c.406 2.023 2.605 2.023 2.605 2.023A6.363 6.363 0 0 0 5 283.772Z" | ||||||
|  |         fill="url(#l)" fill-opacity=".1" /> | ||||||
|  |     </g> | ||||||
|  |     <g filter="url(#m)"> | ||||||
|  |       <path | ||||||
|  |         d="M362.004 266.772v-78.15a5.12 5.12 0 0 1 1.5-3.622c.844-.073 2.496.257 2.496 2.157v81.562c-.406 2.023-2.605 2.023-2.605 2.023a6.359 6.359 0 0 1-1.391-3.97Z" | ||||||
|  |         fill="url(#n)" /> | ||||||
|  |       <path | ||||||
|  |         d="M362.004 266.772v-78.15a5.12 5.12 0 0 1 1.5-3.622c.844-.073 2.496.257 2.496 2.157v81.562c-.406 2.023-2.605 2.023-2.605 2.023a6.359 6.359 0 0 1-1.391-3.97Z" | ||||||
|  |         fill="url(#o)" fill-opacity=".1" /> | ||||||
|  |     </g> | ||||||
|  |     <path | ||||||
|  |       d="M305 14.5H59c-24.577 0-44.5 19.923-44.5 44.5v615c0 23.472 19.028 42.5 42.5 42.5h250c23.472 0 42.5-19.028 42.5-42.5V59c0-24.577-19.923-44.5-44.5-44.5Z" | ||||||
|  |       stroke="url(#p)" stroke-opacity=".5" /> | ||||||
|  |     <g filter="url(#q)" shape-rendering="crispEdges"> | ||||||
|  |       <path | ||||||
|  |         d="M16 59c0-23.748 19.252-43 43-43h246c23.748 0 43 19.252 43 43v615c0 23.196-18.804 42-42 42H58c-23.196 0-42-18.804-42-42V59Z" | ||||||
|  |         fill="url(#r)" fill-opacity=".3" /> | ||||||
|  |       <path | ||||||
|  |         d="M305 15.5H59c-24.024 0-43.5 19.476-43.5 43.5v615c0 23.472 19.028 42.5 42.5 42.5h248c23.472 0 42.5-19.028 42.5-42.5V59c0-24.024-19.476-43.5-43.5-43.5Z" | ||||||
|  |         stroke="#000" stroke-opacity=".07" /> | ||||||
|  |     </g> | ||||||
|  |     <g filter="url(#s)"> | ||||||
|  |       <rect x="154" y="29" width="56" height="5" rx="2.5" fill="#D4D4D4" /> | ||||||
|  |     </g> | ||||||
|  |   </g> | ||||||
|  |   <defs> | ||||||
|  |     <mask id="mask"> | ||||||
|  |       <rect width="366" height="729" fill="#fff" /> | ||||||
|  |       <path fill-rule="evenodd" clip-rule="evenodd" | ||||||
|  |         d="M89.728 24a4.213 4.213 0 0 1 4.213 4.212v2.527c0 10.235 8.3 18.532 18.539 18.532h139.04c10.239 0 18.539-8.297 18.539-18.532v-2.527A4.212 4.212 0 0 1 274.272 24h32.864C325.286 24 340 38.71 340 56.853v618.295c0 18.144-14.714 32.853-32.864 32.853H56.864c-18.15 0-32.864-14.709-32.864-32.853V56.853C24 38.709 38.714 24 56.864 24h32.864Z" | ||||||
|  |         fill="#000" /> | ||||||
|  |     </mask> | ||||||
|  |     <linearGradient id="e" x1="1.004" y1="123.367" x2="5" y2="123.367" gradientUnits="userSpaceOnUse"> | ||||||
|  |       <stop stop-color="#D4D4D4" /> | ||||||
|  |       <stop offset="1" stop-color="#E6E6E6" /> | ||||||
|  |     </linearGradient> | ||||||
|  |     <linearGradient id="f" x1="3.002" y1="108.991" x2="3.002" y2="116.75" gradientUnits="userSpaceOnUse"> | ||||||
|  |       <stop stop-color="#171717" /> | ||||||
|  |       <stop offset=".783" stop-color="#171717" stop-opacity="0" /> | ||||||
|  |     </linearGradient> | ||||||
|  |     <linearGradient id="h" x1="1.004" y1="190.867" x2="5" y2="190.867" gradientUnits="userSpaceOnUse"> | ||||||
|  |       <stop stop-color="#D4D4D4" /> | ||||||
|  |       <stop offset="1" stop-color="#E6E6E6" /> | ||||||
|  |     </linearGradient> | ||||||
|  |     <linearGradient id="i" x1="3.002" y1="163.991" x2="3.002" y2="178.497" gradientUnits="userSpaceOnUse"> | ||||||
|  |       <stop stop-color="#171717" /> | ||||||
|  |       <stop offset=".783" stop-color="#171717" stop-opacity="0" /> | ||||||
|  |     </linearGradient> | ||||||
|  |     <linearGradient id="k" x1="1.004" y1="260.867" x2="5" y2="260.867" gradientUnits="userSpaceOnUse"> | ||||||
|  |       <stop stop-color="#D4D4D4" /> | ||||||
|  |       <stop offset="1" stop-color="#E6E6E6" /> | ||||||
|  |     </linearGradient> | ||||||
|  |     <linearGradient id="l" x1="3.002" y1="233.991" x2="3.002" y2="248.497" gradientUnits="userSpaceOnUse"> | ||||||
|  |       <stop stop-color="#171717" /> | ||||||
|  |       <stop offset=".783" stop-color="#171717" stop-opacity="0" /> | ||||||
|  |     </linearGradient> | ||||||
|  |     <linearGradient id="n" x1="362.004" y1="226.25" x2="366" y2="226.25" gradientUnits="userSpaceOnUse"> | ||||||
|  |       <stop offset=".124" stop-color="#E6E6E6" /> | ||||||
|  |       <stop offset="1" stop-color="#D4D4D4" /> | ||||||
|  |     </linearGradient> | ||||||
|  |     <linearGradient id="o" x1="364.002" y1="184.991" x2="364.002" y2="208.134" gradientUnits="userSpaceOnUse"> | ||||||
|  |       <stop stop-color="#171717" /> | ||||||
|  |       <stop offset=".783" stop-color="#171717" stop-opacity="0" /> | ||||||
|  |     </linearGradient> | ||||||
|  |     <linearGradient id="p" x1="182" y1="15" x2="182" y2="716" gradientUnits="userSpaceOnUse"> | ||||||
|  |       <stop stop-color="#fff" /> | ||||||
|  |       <stop offset=".381" stop-color="#fff" stop-opacity="0" /> | ||||||
|  |     </linearGradient> | ||||||
|  |     <filter id="a" x="-1" y="-1" width="367" height="730.314" filterUnits="userSpaceOnUse" | ||||||
|  |       color-interpolation-filters="sRGB"> | ||||||
|  |       <feFlood flood-opacity="0" result="BackgroundImageFix" /> | ||||||
|  |       <feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape" /> | ||||||
|  |       <feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> | ||||||
|  |       <feOffset dy="-2" /> | ||||||
|  |       <feGaussianBlur stdDeviation="1.5" /> | ||||||
|  |       <feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1" /> | ||||||
|  |       <feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0" /> | ||||||
|  |       <feBlend in2="shape" result="effect1_innerShadow_104_2007" /> | ||||||
|  |       <feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> | ||||||
|  |       <feOffset dx="-2" /> | ||||||
|  |       <feGaussianBlur stdDeviation="2" /> | ||||||
|  |       <feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1" /> | ||||||
|  |       <feColorMatrix values="0 0 0 0 0.0901961 0 0 0 0 0.0901961 0 0 0 0 0.0901961 0 0 0 0.17 0" /> | ||||||
|  |       <feBlend in2="effect1_innerShadow_104_2007" result="effect2_innerShadow_104_2007" /> | ||||||
|  |       <feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> | ||||||
|  |       <feOffset dy="2" /> | ||||||
|  |       <feGaussianBlur stdDeviation=".5" /> | ||||||
|  |       <feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1" /> | ||||||
|  |       <feColorMatrix values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.6 0" /> | ||||||
|  |       <feBlend in2="effect2_innerShadow_104_2007" result="effect3_innerShadow_104_2007" /> | ||||||
|  |     </filter> | ||||||
|  |     <filter id="d" x="1.004" y="108.991" width="4.996" height="28.751" filterUnits="userSpaceOnUse" | ||||||
|  |       color-interpolation-filters="sRGB"> | ||||||
|  |       <feFlood flood-opacity="0" result="BackgroundImageFix" /> | ||||||
|  |       <feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> | ||||||
|  |       <feOffset dx="1" /> | ||||||
|  |       <feComposite in2="hardAlpha" operator="out" /> | ||||||
|  |       <feColorMatrix values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.5 0" /> | ||||||
|  |       <feBlend in2="BackgroundImageFix" result="effect1_dropShadow_104_2007" /> | ||||||
|  |       <feBlend in="SourceGraphic" in2="effect1_dropShadow_104_2007" result="shape" /> | ||||||
|  |       <feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> | ||||||
|  |       <feOffset dx="-1" /> | ||||||
|  |       <feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1" /> | ||||||
|  |       <feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.06 0" /> | ||||||
|  |       <feBlend in2="shape" result="effect2_innerShadow_104_2007" /> | ||||||
|  |     </filter> | ||||||
|  |     <filter id="g" x="1.004" y="163.991" width="4.996" height="53.751" filterUnits="userSpaceOnUse" | ||||||
|  |       color-interpolation-filters="sRGB"> | ||||||
|  |       <feFlood flood-opacity="0" result="BackgroundImageFix" /> | ||||||
|  |       <feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> | ||||||
|  |       <feOffset dx="1" /> | ||||||
|  |       <feComposite in2="hardAlpha" operator="out" /> | ||||||
|  |       <feColorMatrix values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.5 0" /> | ||||||
|  |       <feBlend in2="BackgroundImageFix" result="effect1_dropShadow_104_2007" /> | ||||||
|  |       <feBlend in="SourceGraphic" in2="effect1_dropShadow_104_2007" result="shape" /> | ||||||
|  |       <feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> | ||||||
|  |       <feOffset dx="-1" /> | ||||||
|  |       <feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1" /> | ||||||
|  |       <feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.06 0" /> | ||||||
|  |       <feBlend in2="shape" result="effect2_innerShadow_104_2007" /> | ||||||
|  |     </filter> | ||||||
|  |     <filter id="j" x="1.004" y="233.991" width="4.996" height="53.751" filterUnits="userSpaceOnUse" | ||||||
|  |       color-interpolation-filters="sRGB"> | ||||||
|  |       <feFlood flood-opacity="0" result="BackgroundImageFix" /> | ||||||
|  |       <feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> | ||||||
|  |       <feOffset dx="1" /> | ||||||
|  |       <feComposite in2="hardAlpha" operator="out" /> | ||||||
|  |       <feColorMatrix values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.5 0" /> | ||||||
|  |       <feBlend in2="BackgroundImageFix" result="effect1_dropShadow_104_2007" /> | ||||||
|  |       <feBlend in="SourceGraphic" in2="effect1_dropShadow_104_2007" result="shape" /> | ||||||
|  |       <feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> | ||||||
|  |       <feOffset dx="-1" /> | ||||||
|  |       <feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1" /> | ||||||
|  |       <feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.06 0" /> | ||||||
|  |       <feBlend in2="shape" result="effect2_innerShadow_104_2007" /> | ||||||
|  |     </filter> | ||||||
|  |     <filter id="m" x="361.004" y="184.991" width="4.996" height="85.751" filterUnits="userSpaceOnUse" | ||||||
|  |       color-interpolation-filters="sRGB"> | ||||||
|  |       <feFlood flood-opacity="0" result="BackgroundImageFix" /> | ||||||
|  |       <feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> | ||||||
|  |       <feOffset dx="-1" /> | ||||||
|  |       <feComposite in2="hardAlpha" operator="out" /> | ||||||
|  |       <feColorMatrix values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.5 0" /> | ||||||
|  |       <feBlend in2="BackgroundImageFix" result="effect1_dropShadow_104_2007" /> | ||||||
|  |       <feBlend in="SourceGraphic" in2="effect1_dropShadow_104_2007" result="shape" /> | ||||||
|  |       <feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> | ||||||
|  |       <feOffset dx="1" /> | ||||||
|  |       <feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1" /> | ||||||
|  |       <feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.06 0" /> | ||||||
|  |       <feBlend in2="shape" result="effect2_innerShadow_104_2007" /> | ||||||
|  |     </filter> | ||||||
|  |     <filter id="q" x="15" y="15" width="334" height="703" filterUnits="userSpaceOnUse" | ||||||
|  |       color-interpolation-filters="sRGB"> | ||||||
|  |       <feFlood flood-opacity="0" result="BackgroundImageFix" /> | ||||||
|  |       <feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> | ||||||
|  |       <feOffset dy="1" /> | ||||||
|  |       <feComposite in2="hardAlpha" operator="out" /> | ||||||
|  |       <feColorMatrix values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.25 0" /> | ||||||
|  |       <feBlend in2="BackgroundImageFix" result="effect1_dropShadow_104_2007" /> | ||||||
|  |       <feBlend in="SourceGraphic" in2="effect1_dropShadow_104_2007" result="shape" /> | ||||||
|  |       <feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> | ||||||
|  |       <feOffset dy="1" /> | ||||||
|  |       <feGaussianBlur stdDeviation="2.5" /> | ||||||
|  |       <feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1" /> | ||||||
|  |       <feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.03 0" /> | ||||||
|  |       <feBlend in2="shape" result="effect2_innerShadow_104_2007" /> | ||||||
|  |     </filter> | ||||||
|  |     <filter id="s" x="154" y="29" width="56" height="6" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"> | ||||||
|  |       <feFlood flood-opacity="0" result="BackgroundImageFix" /> | ||||||
|  |       <feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> | ||||||
|  |       <feOffset dy="1" /> | ||||||
|  |       <feComposite in2="hardAlpha" operator="out" /> | ||||||
|  |       <feColorMatrix values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.3 0" /> | ||||||
|  |       <feBlend in2="BackgroundImageFix" result="effect1_dropShadow_104_2007" /> | ||||||
|  |       <feBlend in="SourceGraphic" in2="effect1_dropShadow_104_2007" result="shape" /> | ||||||
|  |       <feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> | ||||||
|  |       <feOffset dy="1" /> | ||||||
|  |       <feGaussianBlur stdDeviation=".5" /> | ||||||
|  |       <feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1" /> | ||||||
|  |       <feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.12 0" /> | ||||||
|  |       <feBlend in2="shape" result="effect2_innerShadow_104_2007" /> | ||||||
|  |     </filter> | ||||||
|  |     <radialGradient id="b" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" | ||||||
|  |       gradientTransform="matrix(0 727 -642 0 184 1)"> | ||||||
|  |       <stop stop-color="#FAFAFA" /> | ||||||
|  |       <stop offset="1" stop-color="#E6E6E6" /> | ||||||
|  |     </radialGradient> | ||||||
|  |     <radialGradient id="c" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" | ||||||
|  |       gradientTransform="matrix(0 319 -295.5 0 183.5 1)"> | ||||||
|  |       <stop stop-color="#fff" /> | ||||||
|  |       <stop offset=".533" stop-color="#fff" stop-opacity="0" /> | ||||||
|  |     </radialGradient> | ||||||
|  |     <radialGradient id="r" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" | ||||||
|  |       gradientTransform="matrix(0 689 -326.783 0 182 27)"> | ||||||
|  |       <stop offset=".319" stop-color="#D4D4D4" /> | ||||||
|  |       <stop offset="1" stop-color="#E6E6E6" /> | ||||||
|  |     </radialGradient> | ||||||
|  |   </defs> | ||||||
|  | </svg> | ||||||
| After Width: | Height: | Size: 15 KiB | 
							
								
								
									
										
											BIN
										
									
								
								src/images/phoneframe.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 537 KiB | 
							
								
								
									
										118
									
								
								src/images/qr-code.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,118 @@ | |||||||
|  | <svg width="80" height="80" fill="none" xmlns="http://www.w3.org/2000/svg"> | ||||||
|  |   <path d="M3.2 0H0v3.2h3.2V0ZM3.2 3.2H0v3.2h3.2V3.2ZM3.2 6.4H0v3.2h3.2V6.4Z" fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M3.2 9.6H0v3.2h3.2V9.6ZM3.2 12.8H0V16h3.2v-3.2ZM3.2 16H0v3.2h3.2V16ZM3.2 19.2H0v3.2h3.2v-3.2ZM3.2 25.6H0v3.2h3.2v-3.2ZM3.2 35.2H0v3.2h3.2v-3.2ZM3.2 57.6H0v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path d="M3.2 60.8H0V64h3.2v-3.2ZM3.2 64H0v3.2h3.2V64ZM3.2 67.2H0v3.2h3.2v-3.2ZM3.2 70.4H0v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M3.2 73.6H0v3.2h3.2v-3.2ZM3.2 76.8H0V80h3.2v-3.2ZM6.4 0H3.2v3.2h3.2V0ZM6.4 19.2H3.2v3.2h3.2v-3.2ZM6.4 25.6H3.2v3.2h3.2v-3.2ZM6.4 28.8H3.2V32h3.2v-3.2ZM6.4 32H3.2v3.2h3.2V32ZM6.4 35.2H3.2v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M6.4 38.4H3.2v3.2h3.2v-3.2ZM6.4 48H3.2v3.2h3.2V48ZM6.4 51.2H3.2v3.2h3.2v-3.2ZM6.4 57.6H3.2v3.2h3.2v-3.2ZM6.4 76.8H3.2V80h3.2v-3.2ZM9.6 0H6.4v3.2h3.2V0ZM9.6 6.4H6.4v3.2h3.2V6.4Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M9.6 9.6H6.4v3.2h3.2V9.6ZM9.6 12.8H6.4V16h3.2v-3.2ZM9.6 19.2H6.4v3.2h3.2v-3.2ZM9.6 28.8H6.4V32h3.2v-3.2ZM9.6 32H6.4v3.2h3.2V32ZM9.6 41.6H6.4v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M9.6 44.8H6.4V48h3.2v-3.2ZM9.6 57.6H6.4v3.2h3.2v-3.2ZM9.6 64H6.4v3.2h3.2V64ZM9.6 67.2H6.4v3.2h3.2v-3.2ZM9.6 70.4H6.4v3.2h3.2v-3.2ZM9.6 76.8H6.4V80h3.2v-3.2ZM12.8 0H9.6v3.2h3.2V0ZM12.8 6.4H9.6v3.2h3.2V6.4Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M12.8 9.6H9.6v3.2h3.2V9.6ZM12.8 12.8H9.6V16h3.2v-3.2ZM12.8 19.2H9.6v3.2h3.2v-3.2ZM12.8 25.6H9.6v3.2h3.2v-3.2ZM12.8 38.4H9.6v3.2h3.2v-3.2ZM12.8 48H9.6v3.2h3.2V48ZM12.8 51.2H9.6v3.2h3.2v-3.2ZM12.8 57.6H9.6v3.2h3.2v-3.2ZM12.8 64H9.6v3.2h3.2V64ZM12.8 67.2H9.6v3.2h3.2v-3.2ZM12.8 70.4H9.6v3.2h3.2v-3.2ZM12.8 76.8H9.6V80h3.2v-3.2ZM16 0h-3.2v3.2H16V0ZM16 6.4h-3.2v3.2H16V6.4Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M16 9.6h-3.2v3.2H16V9.6ZM16 12.8h-3.2V16H16v-3.2ZM16 19.2h-3.2v3.2H16v-3.2ZM16 25.6h-3.2v3.2H16v-3.2ZM16 41.6h-3.2v3.2H16v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M16 44.8h-3.2V48H16v-3.2ZM16 57.6h-3.2v3.2H16v-3.2ZM16 64h-3.2v3.2H16V64ZM16 67.2h-3.2v3.2H16v-3.2ZM16 70.4h-3.2v3.2H16v-3.2ZM16 76.8h-3.2V80H16v-3.2ZM19.2 0H16v3.2h3.2V0ZM19.2 19.2H16v3.2h3.2v-3.2ZM19.2 28.8H16V32h3.2v-3.2ZM19.2 44.8H16V48h3.2v-3.2ZM19.2 57.6H16v3.2h3.2v-3.2ZM19.2 76.8H16V80h3.2v-3.2ZM22.4 0h-3.2v3.2h3.2V0ZM22.4 3.2h-3.2v3.2h3.2V3.2ZM22.4 6.4h-3.2v3.2h3.2V6.4Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M22.4 9.6h-3.2v3.2h3.2V9.6ZM22.4 12.8h-3.2V16h3.2v-3.2ZM22.4 16h-3.2v3.2h3.2V16ZM22.4 19.2h-3.2v3.2h3.2v-3.2ZM22.4 25.6h-3.2v3.2h3.2v-3.2ZM22.4 32h-3.2v3.2h3.2V32ZM22.4 38.4h-3.2v3.2h3.2v-3.2ZM22.4 44.8h-3.2V48h3.2v-3.2ZM22.4 51.2h-3.2v3.2h3.2v-3.2ZM22.4 57.6h-3.2v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M22.4 60.8h-3.2V64h3.2v-3.2ZM22.4 64h-3.2v3.2h3.2V64ZM22.4 67.2h-3.2v3.2h3.2v-3.2ZM22.4 70.4h-3.2v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M22.4 73.6h-3.2v3.2h3.2v-3.2ZM22.4 76.8h-3.2V80h3.2v-3.2ZM25.6 28.8h-3.2V32h3.2v-3.2ZM25.6 32h-3.2v3.2h3.2V32ZM25.6 35.2h-3.2v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M25.6 38.4h-3.2v3.2h3.2v-3.2ZM25.6 44.8h-3.2V48h3.2v-3.2ZM25.6 48h-3.2v3.2h3.2V48ZM25.6 51.2h-3.2v3.2h3.2v-3.2ZM28.8 0h-3.2v3.2h3.2V0ZM28.8 19.2h-3.2v3.2h3.2v-3.2ZM28.8 22.4h-3.2v3.2h3.2v-3.2ZM28.8 28.8h-3.2V32h3.2v-3.2ZM28.8 32h-3.2v3.2h3.2V32ZM28.8 35.2h-3.2v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path d="M28.8 38.4h-3.2v3.2h3.2v-3.2ZM28.8 44.8h-3.2V48h3.2v-3.2ZM28.8 51.2h-3.2v3.2h3.2v-3.2Z" fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M28.8 54.4h-3.2v3.2h3.2v-3.2ZM28.8 64h-3.2v3.2h3.2V64ZM28.8 67.2h-3.2v3.2h3.2v-3.2ZM28.8 73.6h-3.2v3.2h3.2v-3.2ZM28.8 76.8h-3.2V80h3.2v-3.2ZM32 0h-3.2v3.2H32V0ZM32 6.4h-3.2v3.2H32V6.4ZM32 16h-3.2v3.2H32V16ZM32 22.4h-3.2v3.2H32v-3.2ZM32 25.6h-3.2v3.2H32v-3.2ZM32 32h-3.2v3.2H32V32ZM32 38.4h-3.2v3.2H32v-3.2ZM32 54.4h-3.2v3.2H32v-3.2ZM32 57.6h-3.2v3.2H32v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M32 60.8h-3.2V64H32v-3.2ZM32 76.8h-3.2V80H32v-3.2ZM35.2 0H32v3.2h3.2V0ZM35.2 9.6H32v3.2h3.2V9.6ZM35.2 12.8H32V16h3.2v-3.2ZM35.2 19.2H32v3.2h3.2v-3.2ZM35.2 28.8H32V32h3.2v-3.2ZM35.2 38.4H32v3.2h3.2v-3.2ZM35.2 41.6H32v3.2h3.2v-3.2ZM35.2 48H32v3.2h3.2V48ZM35.2 57.6H32v3.2h3.2v-3.2ZM35.2 64H32v3.2h3.2V64ZM35.2 76.8H32V80h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path d="M38.4 0h-3.2v3.2h3.2V0ZM38.4 3.2h-3.2v3.2h3.2V3.2ZM38.4 6.4h-3.2v3.2h3.2V6.4Z" fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M38.4 9.6h-3.2v3.2h3.2V9.6ZM38.4 12.8h-3.2V16h3.2v-3.2ZM38.4 16h-3.2v3.2h3.2V16ZM38.4 51.2h-3.2v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M38.4 54.4h-3.2v3.2h3.2v-3.2ZM38.4 60.8h-3.2V64h3.2v-3.2ZM38.4 64h-3.2v3.2h3.2V64ZM38.4 70.4h-3.2v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M38.4 73.6h-3.2v3.2h3.2v-3.2ZM38.4 76.8h-3.2V80h3.2v-3.2ZM41.6 3.2h-3.2v3.2h3.2V3.2ZM41.6 12.8h-3.2V16h3.2v-3.2ZM41.6 19.2h-3.2v3.2h3.2v-3.2ZM41.6 22.4h-3.2v3.2h3.2v-3.2ZM41.6 25.6h-3.2v3.2h3.2v-3.2ZM41.6 32h-3.2v3.2h3.2V32ZM41.6 41.6h-3.2v3.2h3.2v-3.2ZM41.6 48h-3.2v3.2h3.2V48ZM41.6 51.2h-3.2v3.2h3.2v-3.2ZM41.6 57.6h-3.2v3.2h3.2v-3.2ZM41.6 67.2h-3.2v3.2h3.2v-3.2ZM41.6 73.6h-3.2v3.2h3.2v-3.2ZM41.6 76.8h-3.2V80h3.2v-3.2ZM44.8 0h-3.2v3.2h3.2V0ZM44.8 6.4h-3.2v3.2h3.2V6.4Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path d="M44.8 22.4h-3.2v3.2h3.2v-3.2ZM44.8 32h-3.2v3.2h3.2V32ZM44.8 41.6h-3.2v3.2h3.2v-3.2Z" fill="#171717" /> | ||||||
|  |   <path d="M44.8 44.8h-3.2V48h3.2v-3.2ZM44.8 51.2h-3.2v3.2h3.2v-3.2Z" fill="#171717" /> | ||||||
|  |   <path d="M44.8 54.4h-3.2v3.2h3.2v-3.2ZM44.8 57.6h-3.2v3.2h3.2v-3.2Z" fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M44.8 60.8h-3.2V64h3.2v-3.2ZM44.8 64h-3.2v3.2h3.2V64ZM44.8 67.2h-3.2v3.2h3.2v-3.2ZM44.8 70.4h-3.2v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M44.8 73.6h-3.2v3.2h3.2v-3.2ZM44.8 76.8h-3.2V80h3.2v-3.2ZM48 0h-3.2v3.2H48V0ZM48 16h-3.2v3.2H48V16ZM48 19.2h-3.2v3.2H48v-3.2ZM48 25.6h-3.2v3.2H48v-3.2ZM48 44.8h-3.2V48H48v-3.2ZM48 54.4h-3.2v3.2H48v-3.2ZM48 57.6h-3.2v3.2H48v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M48 60.8h-3.2V64H48v-3.2ZM48 67.2h-3.2v3.2H48v-3.2ZM51.2 6.4H48v3.2h3.2V6.4ZM51.2 12.8H48V16h3.2v-3.2ZM51.2 22.4H48v3.2h3.2v-3.2ZM51.2 25.6H48v3.2h3.2v-3.2ZM51.2 28.8H48V32h3.2v-3.2ZM51.2 32H48v3.2h3.2V32ZM51.2 35.2H48v3.2h3.2v-3.2ZM51.2 41.6H48v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M51.2 44.8H48V48h3.2v-3.2ZM51.2 54.4H48v3.2h3.2v-3.2ZM51.2 60.8H48V64h3.2v-3.2ZM51.2 64H48v3.2h3.2V64ZM54.4 6.4h-3.2v3.2h3.2V6.4ZM54.4 12.8h-3.2V16h3.2v-3.2ZM54.4 19.2h-3.2v3.2h3.2v-3.2ZM54.4 28.8h-3.2V32h3.2v-3.2ZM54.4 32h-3.2v3.2h3.2V32ZM54.4 38.4h-3.2v3.2h3.2v-3.2ZM54.4 48h-3.2v3.2h3.2V48Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path d="M54.4 51.2h-3.2v3.2h3.2v-3.2Z" fill="#171717" /> | ||||||
|  |   <path d="M54.4 54.4h-3.2v3.2h3.2v-3.2ZM54.4 57.6h-3.2v3.2h3.2v-3.2Z" fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M54.4 60.8h-3.2V64h3.2v-3.2ZM54.4 64h-3.2v3.2h3.2V64ZM54.4 67.2h-3.2v3.2h3.2v-3.2ZM54.4 70.4h-3.2v3.2h3.2v-3.2ZM54.4 76.8h-3.2V80h3.2v-3.2ZM57.6 32h-3.2v3.2h3.2V32ZM57.6 41.6h-3.2v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M57.6 44.8h-3.2V48h3.2v-3.2ZM57.6 51.2h-3.2v3.2h3.2v-3.2ZM57.6 64h-3.2v3.2h3.2V64ZM57.6 70.4h-3.2v3.2h3.2v-3.2ZM57.6 76.8h-3.2V80h3.2v-3.2ZM60.8 0h-3.2v3.2h3.2V0ZM60.8 3.2h-3.2v3.2h3.2V3.2ZM60.8 6.4h-3.2v3.2h3.2V6.4Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M60.8 9.6h-3.2v3.2h3.2V9.6ZM60.8 12.8h-3.2V16h3.2v-3.2ZM60.8 16h-3.2v3.2h3.2V16ZM60.8 19.2h-3.2v3.2h3.2v-3.2ZM60.8 25.6h-3.2v3.2h3.2v-3.2ZM60.8 35.2h-3.2v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M60.8 38.4h-3.2v3.2h3.2v-3.2ZM60.8 44.8h-3.2V48h3.2v-3.2ZM60.8 48h-3.2v3.2h3.2V48ZM60.8 51.2h-3.2v3.2h3.2v-3.2ZM60.8 57.6h-3.2v3.2h3.2v-3.2ZM60.8 64h-3.2v3.2h3.2V64ZM60.8 67.2h-3.2v3.2h3.2v-3.2ZM64 0h-3.2v3.2H64V0ZM64 19.2h-3.2v3.2H64v-3.2ZM64 28.8h-3.2V32H64v-3.2ZM64 38.4h-3.2v3.2H64v-3.2ZM64 48h-3.2v3.2H64V48ZM64 51.2h-3.2v3.2H64v-3.2ZM64 64h-3.2v3.2H64V64ZM64 73.6h-3.2v3.2H64v-3.2ZM67.2 0H64v3.2h3.2V0ZM67.2 6.4H64v3.2h3.2V6.4Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M67.2 9.6H64v3.2h3.2V9.6ZM67.2 12.8H64V16h3.2v-3.2ZM67.2 19.2H64v3.2h3.2v-3.2ZM67.2 28.8H64V32h3.2v-3.2ZM67.2 41.6H64v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path d="M67.2 44.8H64V48h3.2v-3.2ZM67.2 51.2H64v3.2h3.2v-3.2Z" fill="#171717" /> | ||||||
|  |   <path d="M67.2 54.4H64v3.2h3.2v-3.2ZM67.2 57.6H64v3.2h3.2v-3.2Z" fill="#171717" /> | ||||||
|  |   <path d="M67.2 60.8H64V64h3.2v-3.2ZM67.2 64H64v3.2h3.2V64ZM67.2 70.4H64v3.2h3.2v-3.2Z" fill="#171717" /> | ||||||
|  |   <path d="M67.2 73.6H64v3.2h3.2v-3.2ZM70.4 0h-3.2v3.2h3.2V0ZM70.4 6.4h-3.2v3.2h3.2V6.4Z" fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M70.4 9.6h-3.2v3.2h3.2V9.6ZM70.4 12.8h-3.2V16h3.2v-3.2ZM70.4 19.2h-3.2v3.2h3.2v-3.2ZM70.4 28.8h-3.2V32h3.2v-3.2ZM70.4 32h-3.2v3.2h3.2V32ZM70.4 35.2h-3.2v3.2h3.2v-3.2ZM70.4 44.8h-3.2V48h3.2v-3.2ZM70.4 48h-3.2v3.2h3.2V48ZM70.4 70.4h-3.2v3.2h3.2v-3.2ZM70.4 76.8h-3.2V80h3.2v-3.2ZM73.6 0h-3.2v3.2h3.2V0Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path d="M73.6 6.4h-3.2v3.2h3.2V6.4Z" fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M73.6 9.6h-3.2v3.2h3.2V9.6ZM73.6 12.8h-3.2V16h3.2v-3.2ZM73.6 19.2h-3.2v3.2h3.2v-3.2ZM73.6 28.8h-3.2V32h3.2v-3.2ZM73.6 35.2h-3.2v3.2h3.2v-3.2ZM73.6 44.8h-3.2V48h3.2v-3.2ZM73.6 48h-3.2v3.2h3.2V48ZM73.6 51.2h-3.2v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path d="M73.6 54.4h-3.2v3.2h3.2v-3.2ZM73.6 70.4h-3.2v3.2h3.2v-3.2Z" fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M73.6 73.6h-3.2v3.2h3.2v-3.2ZM76.8 0h-3.2v3.2h3.2V0ZM76.8 19.2h-3.2v3.2h3.2v-3.2ZM76.8 28.8h-3.2V32h3.2v-3.2ZM76.8 35.2h-3.2v3.2h3.2v-3.2ZM76.8 41.6h-3.2v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path d="M76.8 44.8h-3.2V48h3.2v-3.2ZM76.8 51.2h-3.2v3.2h3.2v-3.2Z" fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M76.8 54.4h-3.2v3.2h3.2v-3.2ZM76.8 64h-3.2v3.2h3.2V64ZM76.8 67.2h-3.2v3.2h3.2v-3.2ZM76.8 70.4h-3.2v3.2h3.2v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path d="M76.8 73.6h-3.2v3.2h3.2v-3.2ZM80 0h-3.2v3.2H80V0ZM80 3.2h-3.2v3.2H80V3.2ZM80 6.4h-3.2v3.2H80V6.4Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M80 9.6h-3.2v3.2H80V9.6ZM80 12.8h-3.2V16H80v-3.2ZM80 16h-3.2v3.2H80V16ZM80 19.2h-3.2v3.2H80v-3.2ZM80 25.6h-3.2v3.2H80v-3.2ZM80 32h-3.2v3.2H80V32ZM80 35.2h-3.2v3.2H80v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path | ||||||
|  |     d="M80 38.4h-3.2v3.2H80v-3.2ZM80 44.8h-3.2V48H80v-3.2ZM80 48h-3.2v3.2H80V48ZM80 57.6h-3.2v3.2H80v-3.2ZM80 64h-3.2v3.2H80V64ZM80 67.2h-3.2v3.2H80v-3.2ZM80 70.4h-3.2v3.2H80v-3.2Z" | ||||||
|  |     fill="#171717" /> | ||||||
|  |   <path d="M80 73.6h-3.2v3.2H80v-3.2ZM80 76.8h-3.2V80H80v-3.2Z" fill="#171717" /> | ||||||
|  | </svg> | ||||||
| After Width: | Height: | Size: 9.9 KiB | 
							
								
								
									
										
											BIN
										
									
								
								src/images/setting.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 107 KiB | 
							
								
								
									
										1
									
								
								src/images/windows.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1 @@ | |||||||
|  | <svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 80 80" width="80" height="80"><defs><clipPath clipPathUnits="userSpaceOnUse" id="cp1"><path d="m2.92 11.31h25.08v26.02h-25.08z"/></clipPath><clipPath clipPathUnits="userSpaceOnUse" id="cp2"><path d="m34.67 11.31h25.25v26.02h-25.25z"/></clipPath><clipPath clipPathUnits="userSpaceOnUse" id="cp3"><path d="m2.92 42.67h25.08v25.64h-25.08z"/></clipPath><clipPath clipPathUnits="userSpaceOnUse" id="cp4"><path d="m34.67 42.67h25.25v25.64h-25.25z"/></clipPath></defs><style>.a{fill:#00b8db}</style><g clip-path="url(#cp1)"><path class="a" d="m26.9 11.3h-22.8c-0.7 0-1.2 0.5-1.2 1.2v22.8c0 0.6 0.5 1.1 1.2 1.1h22.8c0.6 0 1.1-0.5 1.1-1.1v-22.8c0-0.7-0.5-1.2-1.1-1.2z"/></g><g clip-path="url(#cp2)"><path class="a" d="m58.8 11.3h-22.8c-0.6 0-1.2 0.5-1.2 1.2v22.8c0 0.6 0.6 1.1 1.2 1.1h22.8c0.6 0 1.1-0.5 1.1-1.1v-22.8c0-0.7-0.5-1.2-1.1-1.2z"/></g><g clip-path="url(#cp3)"><path class="a" d="m26.9 43.2h-22.8c-0.7 0-1.2 0.5-1.2 1.2v22.8c0 0.6 0.5 1.1 1.2 1.1h22.8c0.6 0 1.1-0.5 1.1-1.1v-22.8c0-0.7-0.5-1.2-1.1-1.2z"/></g><g clip-path="url(#cp4)"><path class="a" d="m58.8 43.2h-22.8c-0.6 0-1.2 0.5-1.2 1.2v22.8c0 0.6 0.6 1.1 1.2 1.1h22.8c0.6 0 1.1-0.5 1.1-1.1v-22.8c0-0.7-0.5-1.2-1.1-1.2z"/></g></svg> | ||||||
| After Width: | Height: | Size: 1.2 KiB | 
							
								
								
									
										68
									
								
								src/index.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,68 @@ | |||||||
|  | :root { | ||||||
|  |   font-family: system-ui, Avenir, Helvetica, Arial, sans-serif; | ||||||
|  |   line-height: 1.5; | ||||||
|  |   font-weight: 400; | ||||||
|  |  | ||||||
|  |   color-scheme: light dark; | ||||||
|  |   color: rgba(255, 255, 255, 0.87); | ||||||
|  |   background-color: #242424; | ||||||
|  |  | ||||||
|  |   font-synthesis: none; | ||||||
|  |   text-rendering: optimizeLegibility; | ||||||
|  |   -webkit-font-smoothing: antialiased; | ||||||
|  |   -moz-osx-font-smoothing: grayscale; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | a { | ||||||
|  |   font-weight: 500; | ||||||
|  |   color: #646cff; | ||||||
|  |   text-decoration: inherit; | ||||||
|  | } | ||||||
|  | a:hover { | ||||||
|  |   color: #535bf2; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | body { | ||||||
|  |   margin: 0; | ||||||
|  |   display: flex; | ||||||
|  |   place-items: center; | ||||||
|  |   min-width: 320px; | ||||||
|  |   min-height: 100vh; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | h1 { | ||||||
|  |   font-size: 3.2em; | ||||||
|  |   line-height: 1.1; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | button { | ||||||
|  |   border-radius: 8px; | ||||||
|  |   border: 1px solid transparent; | ||||||
|  |   padding: 0.6em 1.2em; | ||||||
|  |   font-size: 1em; | ||||||
|  |   font-weight: 500; | ||||||
|  |   font-family: inherit; | ||||||
|  |   background-color: #1a1a1a; | ||||||
|  |   cursor: pointer; | ||||||
|  |   transition: border-color 0.25s; | ||||||
|  | } | ||||||
|  | button:hover { | ||||||
|  |   border-color: #646cff; | ||||||
|  | } | ||||||
|  | button:focus, | ||||||
|  | button:focus-visible { | ||||||
|  |   outline: 4px auto -webkit-focus-ring-color; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | @media (prefers-color-scheme: light) { | ||||||
|  |   :root { | ||||||
|  |     color: #213547; | ||||||
|  |     background-color: #ffffff; | ||||||
|  |   } | ||||||
|  |   a:hover { | ||||||
|  |     color: #747bff; | ||||||
|  |   } | ||||||
|  |   button { | ||||||
|  |     background-color: #f9f9f9; | ||||||
|  |   } | ||||||
|  | } | ||||||