1
0
Fork 0
mirror of https://github.com/immich-app/immich.git synced 2024-12-28 06:31:58 +00:00

feat(doc): new homepage design and font (#13084)

This commit is contained in:
Alex 2024-10-03 13:33:36 +07:00 committed by GitHub
parent 0454863c1e
commit 68930cc42c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
15 changed files with 497 additions and 45 deletions

View file

@ -72,14 +72,9 @@ const config = {
themeConfig: themeConfig:
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */ /** @type {import('@docusaurus/preset-classic').ThemeConfig} */
({ ({
colorMode: {
defaultMode: 'dark',
},
announcementBar: { announcementBar: {
id: 'site_announcement_immich', id: 'site_announcement_immich',
content: `⚠️ The project is under <strong>very active</strong> development. Expect bugs and changes. Do not use it as <strong>the only way</strong> to store your photos and videos!`, content: `⚠️ The project is under <strong>very active</strong> development. Expect bugs and changes. Do not use it as <strong>the only way</strong> to store your photos and videos!`,
backgroundColor: '#593f00',
textColor: '#ffefc9',
isCloseable: false, isCloseable: false,
}, },
docs: { docs: {

View file

@ -52,20 +52,20 @@ const guides: CommunityGuidesProps[] = [
function CommunityGuide({ title, description, url }: CommunityGuidesProps): JSX.Element { function CommunityGuide({ title, description, url }: CommunityGuidesProps): JSX.Element {
return ( return (
<section className="flex flex-col gap-4 justify-between dark:bg-immich-dark-gray bg-immich-gray dark:border-0 border-gray-200 border border-solid rounded-2xl p-4"> <section className="flex flex-col gap-4 justify-between dark:bg-immich-dark-gray bg-immich-gray dark:border-0 border-gray-200 border border-solid rounded-2xl px-4 py-6">
<div className="flex flex-col gap-2"> <div className="flex flex-col gap-2">
<p className="m-0 items-start flex gap-2"> <p className="m-0 items-start flex gap-2 text-2xl font-bold text-immich-primary dark:text-immich-dark-primary">
<span>{title}</span> <span>{title}</span>
</p> </p>
<p className="m-0 text-sm text-gray-600 dark:text-gray-300">{description}</p> <p className="m-0 text-sm text-gray-600 dark:text-gray-300">{description}</p>
<p className="m-0 text-sm text-gray-600 dark:text-gray-300"> <p className="m-0 text-sm text-gray-600 dark:text-gray-300 my-4">
<a href={url}>{url}</a> <a href={url}>{url}</a>
</p> </p>
</div> </div>
<div className="flex"> <div className="flex">
<Link <Link
className="px-4 py-2 bg-immich-primary/10 dark:bg-gray-300 rounded-full hover:no-underline text-immich-primary dark:text-immich-dark-bg font-bold uppercase" className="px-4 py-2 bg-immich-primary/10 dark:bg-gray-300 rounded-xl text-sm hover:no-underline text-immich-primary dark:text-immich-dark-bg font-semibold"
to={url} to={url}
> >
View Guide View Guide

View file

@ -87,23 +87,23 @@ const projects: CommunityProjectProps[] = [
function CommunityProject({ title, description, url }: CommunityProjectProps): JSX.Element { function CommunityProject({ title, description, url }: CommunityProjectProps): JSX.Element {
return ( return (
<section className="flex flex-col gap-4 justify-between dark:bg-immich-dark-gray bg-immich-gray dark:border-0 border-gray-200 border border-solid rounded-2xl p-4"> <section className="flex flex-col gap-4 justify-between dark:bg-immich-dark-gray bg-immich-gray dark:border-0 border-gray-200 border border-solid rounded-2xl px-4 py-6">
<div className="flex flex-col gap-2"> <div className="flex flex-col gap-2">
<p className="m-0 items-start flex gap-2"> <p className="m-0 items-start flex gap-2 text-2xl font-bold text-immich-primary dark:text-immich-dark-primary">
<span>{title}</span> <span>{title}</span>
</p> </p>
<p className="m-0 text-sm text-gray-600 dark:text-gray-300">{description}</p> <p className="m-0 text-sm text-gray-600 dark:text-gray-300">{description}</p>
<p className="m-0 text-sm text-gray-600 dark:text-gray-300"> <p className="m-0 text-sm text-gray-600 dark:text-gray-300 my-4">
<a href={url}>{url}</a> <a href={url}>{url}</a>
</p> </p>
</div> </div>
<div className="flex"> <div className="flex">
<Link <Link
className="px-4 py-2 bg-immich-primary/10 dark:bg-gray-300 rounded-full hover:no-underline text-immich-primary dark:text-immich-dark-bg font-bold uppercase" className="px-4 py-2 bg-immich-primary/10 dark:bg-gray-300 rounded-xl text-sm hover:no-underline text-immich-primary dark:text-immich-dark-bg font-semibold"
to={url} to={url}
> >
View Project View Link
</Link> </Link>
</div> </div>
</section> </section>

View file

@ -0,0 +1,2 @@
export const discordPath =
'M 9.1367188 3.8691406 C 9.1217187 3.8691406 9.1067969 3.8700938 9.0917969 3.8710938 C 8.9647969 3.8810937 5.9534375 4.1403594 4.0234375 5.6933594 C 3.0154375 6.6253594 1 12.073203 1 16.783203 C 1 16.866203 1.0215 16.946531 1.0625 17.019531 C 2.4535 19.462531 6.2473281 20.102859 7.1113281 20.130859 L 7.1269531 20.130859 C 7.2799531 20.130859 7.4236719 20.057594 7.5136719 19.933594 L 8.3886719 18.732422 C 6.0296719 18.122422 4.8248594 17.086391 4.7558594 17.025391 C 4.5578594 16.850391 4.5378906 16.549563 4.7128906 16.351562 C 4.8068906 16.244563 4.9383125 16.189453 5.0703125 16.189453 C 5.1823125 16.189453 5.2957188 16.228594 5.3867188 16.308594 C 5.4157187 16.334594 7.6340469 18.216797 11.998047 18.216797 C 16.370047 18.216797 18.589328 16.325641 18.611328 16.306641 C 18.702328 16.227641 18.815734 16.189453 18.927734 16.189453 C 19.059734 16.189453 19.190156 16.243562 19.285156 16.351562 C 19.459156 16.549563 19.441141 16.851391 19.244141 17.025391 C 19.174141 17.087391 17.968375 18.120469 15.609375 18.730469 L 16.484375 19.933594 C 16.574375 20.057594 16.718094 20.130859 16.871094 20.130859 L 16.886719 20.130859 C 17.751719 20.103859 21.5465 19.463531 22.9375 17.019531 C 22.9785 16.947531 23 16.866203 23 16.783203 C 23 12.073203 20.984172 6.624875 19.951172 5.671875 C 18.047172 4.140875 15.036203 3.8820937 14.908203 3.8710938 C 14.895203 3.8700938 14.880188 3.8691406 14.867188 3.8691406 C 14.681188 3.8691406 14.510594 3.9793906 14.433594 4.1503906 C 14.427594 4.1623906 14.362062 4.3138281 14.289062 4.5488281 C 15.548063 4.7608281 17.094141 5.1895937 18.494141 6.0585938 C 18.718141 6.1975938 18.787437 6.4917969 18.648438 6.7167969 C 18.558438 6.8627969 18.402188 6.9433594 18.242188 6.9433594 C 18.156188 6.9433594 18.069234 6.9200937 17.990234 6.8710938 C 15.584234 5.3800938 12.578 5.3046875 12 5.3046875 C 11.422 5.3046875 8.4157187 5.3810469 6.0117188 6.8730469 C 5.9327188 6.9210469 5.8457656 6.9433594 5.7597656 6.9433594 C 5.5997656 6.9433594 5.4425625 6.86475 5.3515625 6.71875 C 5.2115625 6.49375 5.2818594 6.1985938 5.5058594 6.0585938 C 6.9058594 5.1905937 8.4528906 4.7627812 9.7128906 4.5507812 C 9.6388906 4.3147813 9.5714062 4.1643437 9.5664062 4.1523438 C 9.4894063 3.9813438 9.3217188 3.8691406 9.1367188 3.8691406 z M 12 7.3046875 C 12.296 7.3046875 14.950594 7.3403125 16.933594 8.5703125 C 17.326594 8.8143125 17.777234 8.9453125 18.240234 8.9453125 C 18.633234 8.9453125 19.010656 8.8555 19.347656 8.6875 C 19.964656 10.2405 20.690828 12.686219 20.923828 15.199219 C 20.883828 15.143219 20.840922 15.089109 20.794922 15.037109 C 20.324922 14.498109 19.644687 14.191406 18.929688 14.191406 C 18.332687 14.191406 17.754078 14.405437 17.330078 14.773438 C 17.257078 14.832437 15.505 16.21875 12 16.21875 C 8.496 16.21875 6.7450313 14.834687 6.7070312 14.804688 C 6.2540312 14.407687 5.6742656 14.189453 5.0722656 14.189453 C 4.3612656 14.189453 3.6838438 14.494391 3.2148438 15.025391 C 3.1658438 15.080391 3.1201719 15.138266 3.0761719 15.197266 C 3.3091719 12.686266 4.0344375 10.235594 4.6484375 8.6835938 C 4.9864375 8.8525938 5.3657656 8.9433594 5.7597656 8.9433594 C 6.2217656 8.9433594 6.6724531 8.8143125 7.0644531 8.5703125 C 9.0494531 7.3393125 11.704 7.3046875 12 7.3046875 z M 8.890625 10.044922 C 7.966625 10.044922 7.2167969 10.901031 7.2167969 11.957031 C 7.2167969 13.013031 7.965625 13.869141 8.890625 13.869141 C 9.815625 13.869141 10.564453 13.013031 10.564453 11.957031 C 10.564453 10.900031 9.815625 10.044922 8.890625 10.044922 z M 15.109375 10.044922 C 14.185375 10.044922 13.435547 10.901031 13.435547 11.957031 C 13.435547 13.013031 14.184375 13.869141 15.109375 13.869141 C 16.034375 13.869141 16.783203 13.013031 16.783203 11.957031 C 16.783203 10.900031 16.033375 10.044922 15.109375 10.044922 z';

View file

@ -7,11 +7,12 @@
@tailwind components; @tailwind components;
@tailwind utilities; @tailwind utilities;
@import url('https://fonts.googleapis.com/css2?family=Overpass:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap'); @import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
html, html,
button { button {
font-family: 'Overpass', sans-serif; font-family: 'Be Vietnam Pro', sans-serif;
font-optical-sizing: auto;
} }
img { img {
@ -27,7 +28,6 @@ img {
--ifm-color-primary-light: #4250af; --ifm-color-primary-light: #4250af;
--ifm-color-primary-lighter: #4250af; --ifm-color-primary-lighter: #4250af;
--ifm-color-primary-lightest: #4250af; --ifm-color-primary-lightest: #4250af;
--ifm-code-font-size: 95%;
--docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1); --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1);
} }
@ -40,10 +40,28 @@ img {
--ifm-color-primary-light: #d5e4fc; --ifm-color-primary-light: #d5e4fc;
--ifm-color-primary-lighter: #e9f1fe; --ifm-color-primary-lighter: #e9f1fe;
--ifm-color-primary-lightest: #ffffff; --ifm-color-primary-lightest: #ffffff;
--ifm-background-color: #000000;
--docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3); --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3);
--ifm-background-color: #000000;
} }
div[class^='announcementBar_'] { div[class^='announcementBar_'] {
min-height: 2rem; min-height: 2rem;
background-color: #2b3336;
color: white;
}
.menu__link {
padding: 10px;
padding-left: 16px;
border-radius: 10px;
font-size: 15px;
}
.menu__list-item-collapsible {
border-radius: 10px;
font-size: 15px;
}
code {
font-weight: 600;
} }

View file

@ -2,46 +2,82 @@ import React from 'react';
import Link from '@docusaurus/Link'; import Link from '@docusaurus/Link';
import Layout from '@theme/Layout'; import Layout from '@theme/Layout';
import { useColorMode } from '@docusaurus/theme-common'; import { useColorMode } from '@docusaurus/theme-common';
import { discordPath } from '@site/src/components/svg-paths';
import Icon from '@mdi/react';
function HomepageHeader() { function HomepageHeader() {
const { isDarkTheme } = useColorMode(); const { isDarkTheme } = useColorMode();
return ( return (
<header> <header>
<section className="text-center m-6 p-12 border border-red-400 rounded-[50px] bg-slate-200 dark:bg-immich-dark-gray"> <div className="top-[calc(12%)] md:top-[calc(30%)] h-screen w-full absolute -z-10">
<img src={'img/immich-logo.svg'} className="h-[110%] w-[110%] mb-2 antialiased -z-10" alt="Immich logo" />
<div className="w-full h-[120vh] absolute left-0 top-0 backdrop-blur-3xl bg-immich-bg/40 dark:bg-transparent"></div>
</div>
<section className="text-center pt-12 sm:pt-24 bg-immich-bg/50 dark:bg-immich-dark-bg/80">
<img <img
src={isDarkTheme ? 'img/immich-logo-stacked-dark.svg' : 'img/immich-logo-stacked-light.svg'} src={isDarkTheme ? 'img/logomark-dark.svg' : 'img/logomark-light.svg'}
className="md:h-60 h-44 mb-2 antialiased rounded-none" className="h-[115px] w-[115px] mb-2 antialiased rounded-none"
alt="Immich logo" alt="Immich logo"
/> />
<div className="sm:text-2xl text-lg md:text-4xl mb-12 sm:leading-tight"> <div className="mt-8">
<p className="mb-1 font-medium text-immich-primary dark:text-immich-dark-primary"> <p className="text-3xl md:text-5xl sm:leading-tight mb-1 font-extrabold text-black/90 dark:text-white px-4">
Self-hosted photo and <span className="block"></span> Self-hosted{' '}
video management solution<span className="block"></span> <span className="text-immich-primary dark:text-immich-dark-primary">
photo and <span className="block"></span>
video management{' '}
</span>
solution<span className="block"></span>
</p>
<p className="max-w-1/4 m-auto mt-4 px-4">
Easily back up, organize, and manage your photos on your own server. Immich helps you
<span className="sm:block"></span> browse, search and organize your photos and videos with ease, without
sacrificing your privacy.
</p> </p>
</div> </div>
<div className="flex flex-col sm:flex-row place-items-center place-content-center mt-9 mb-16 gap-4 ">
<div className="flex flex-col sm:flex-row place-items-center place-content-center mt-9 gap-4 ">
<Link <Link
className="flex place-items-center place-content-center py-3 px-8 border bg-immich-primary dark:bg-immich-dark-primary rounded-full no-underline hover:no-underline text-white hover:text-gray-50 dark:text-immich-dark-bg font-bold uppercase" className="flex place-items-center place-content-center py-3 px-8 border bg-immich-primary dark:bg-immich-dark-primary rounded-xl no-underline hover:no-underline text-white hover:text-gray-50 dark:text-immich-dark-bg font-bold uppercase"
to="docs/overview/introduction" to="docs/overview/introduction"
> >
Get started Get started
</Link> </Link>
<Link <Link
className="flex place-items-center place-content-center py-3 px-8 border bg-immich-primary/10 dark:bg-gray-300 rounded-full hover:no-underline text-immich-primary dark:text-immich-dark-bg font-bold uppercase" className="flex place-items-center place-content-center py-3 px-8 border bg-immich-primary/10 dark:bg-gray-300 rounded-xl hover:no-underline text-immich-primary dark:text-immich-dark-bg font-bold uppercase"
to="https://demo.immich.app/" to="https://demo.immich.app/"
> >
Demo portal Demo
</Link>
<Link
className="flex place-items-center place-content-center py-3 px-8 border bg-immich-dark-primary dark:bg-immich-primary rounded-full hover:no-underline text-immich-primary dark:text-immich-dark-bg font-bold uppercase"
to="https://discord.immich.app"
>
Discord
</Link> </Link>
</div> </div>
<img src="/img/immich-screenshots.webp" alt="screenshots" width={'70%'} />
<div className="my-12 flex gap-1 font-medium place-items-center place-content-center text-immich-primary dark:text-immich-dark-primary">
<Icon path={discordPath} size={1} />
<Link to="https://discord.immich.app/">Join our Discord</Link>
</div>
<img
src={isDarkTheme ? '/img/screenshot-dark.webp' : '/img/screenshot-light.webp'}
alt="screenshots"
className="w-[95%] lg:w-[85%] xl:w-[70%] 2xl:w-[60%] "
/>
<div className="mx-[25%] m-auto my-14 md:my-28">
<hr className="border bg-gray-500 dark:bg-gray-400" />
</div>
<img
src={isDarkTheme ? 'img/logomark-dark.svg' : 'img/logomark-light.svg'}
className="h-[115px] w-[115px] mb-2 antialiased rounded-none"
alt="Immich logo"
/>
<div>
<p className="font-bold text-2xl md:text-5xl ">Download mobile app</p>
<p className="text-lg">
Download Immich app and start backing up your photos and videos securely to your own server
</p>
</div>
<div className="flex flex-col sm:flex-row place-items-center place-content-center mt-4 gap-1"> <div className="flex flex-col sm:flex-row place-items-center place-content-center mt-4 gap-1">
<div className="h-24"> <div className="h-24">
<a href="https://play.google.com/store/apps/details?id=app.alextran.immich"> <a href="https://play.google.com/store/apps/details?id=app.alextran.immich">
@ -54,6 +90,13 @@ function HomepageHeader() {
</a> </a>
</div> </div>
</div> </div>
<img
src={isDarkTheme ? '/img/app-qr-code-dark.svg' : '/img/app-qr-code-light.svg'}
alt="app qr code"
width={'150px'}
className="shadow-lg p-3 my-8 dark:bg-immich-dark-bg "
/>
</section> </section>
</header> </header>
); );
@ -61,13 +104,9 @@ function HomepageHeader() {
export default function Home(): JSX.Element { export default function Home(): JSX.Element {
return ( return (
<Layout <Layout title="Home" description="Self-hosted photo and video management solution" noFooter={true}>
title="Home"
description="immich Self-hosted photo and video backup solution directly from your mobile phone "
noFooter={true}
>
<HomepageHeader /> <HomepageHeader />
<div className="flex flex-col place-items-center place-content-center"> <div className="flex flex-col place-items-center text-center place-content-center dark:bg-immich-dark-bg py-8">
<p>This project is available under GNU AGPL v3 license.</p> <p>This project is available under GNU AGPL v3 license.</p>
<p className="text-xs">Privacy should not be a luxury</p> <p className="text-xs">Privacy should not be a luxury</p>
</div> </div>

378
docs/static/img/app-qr-code-dark.svg vendored Normal file
View file

@ -0,0 +1,378 @@
<svg width="500" height="500" viewBox="0 0 500 500" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_1160_310)">
<path d="M500 0H0V500H500V0Z" fill="#070915"/>
<mask id="mask0_1160_310" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="18" y="18" width="464" height="464">
<path d="M18 162H34V146H26C23.8783 146 21.8434 146.843 20.3431 148.343C18.8428 149.843 18 151.878 18 154" fill="white"/>
<path d="M34 178V162H18L18 170C18 172.122 18.8429 174.157 20.3431 175.657C21.8434 177.157 23.8783 178 26 178" fill="white"/>
<path d="M18 242H34V234C34 231.878 33.1572 229.843 31.6569 228.343C30.1566 226.843 28.1217 226 26 226C23.8783 226 21.8434 226.843 20.3431 228.343C18.8428 229.843 18 231.878 18 234" fill="white"/>
<path d="M34 242H18V258H34V242Z" fill="white"/>
<path d="M34 258H18V266C18 268.122 18.8428 270.157 20.3431 271.657C21.8434 273.157 23.8783 274 26 274C28.1217 274 30.1566 273.157 31.6569 271.657C33.1572 270.157 34 268.122 34 266" fill="white"/>
<path d="M34 322V306H26C23.8783 306 21.8434 306.843 20.3431 308.343C18.8429 309.843 18 311.878 18 314C18 316.122 18.8429 318.157 20.3431 319.657C21.8434 321.157 23.8783 322 26 322" fill="white"/>
<path d="M50 146H34V162H50V146Z" fill="white"/>
<path d="M50 162H34V178H42C44.1217 178 46.1566 177.157 47.6569 175.657C49.1572 174.157 50 172.122 50 170" fill="white"/>
<path d="M34 290H50V282C50 279.878 49.1572 277.843 47.6569 276.343C46.1566 274.843 44.1217 274 42 274C39.8783 274 37.8434 274.843 36.3431 276.343C34.8428 277.843 34 279.878 34 282" fill="white"/>
<path d="M50 290H34V306H50V290Z" fill="white"/>
<path d="M50 306H34V322H50V306Z" fill="white"/>
<path d="M66 146H50V162H66V146Z" fill="white"/>
<path d="M58 258C62.4183 258 66 254.418 66 250C66 245.582 62.4183 242 58 242C53.5817 242 50 245.582 50 250C50 254.418 53.5817 258 58 258Z" fill="white"/>
<path d="M50 306V322H66V314C66 311.878 65.1571 309.843 63.6569 308.343C62.1566 306.843 60.1217 306 58 306" fill="white"/>
<path d="M66 322H50V330C50 332.122 50.8428 334.157 52.3431 335.657C53.8434 337.157 55.8783 338 58 338C60.1217 338 62.1566 337.157 63.6569 335.657C65.1572 334.157 66 332.122 66 330" fill="white"/>
<path d="M82 146H66V162H82V146Z" fill="white"/>
<path d="M66 210H82V202C82 199.878 81.1572 197.843 79.6569 196.343C78.1566 194.843 76.1217 194 74 194C71.8783 194 69.8434 194.843 68.3431 196.343C66.8428 197.843 66 199.878 66 202" fill="white"/>
<path d="M82 210H66V218C66 220.122 66.8428 222.157 68.3431 223.657C69.8434 225.157 71.8783 226 74 226C76.1217 226 78.1566 225.157 79.6569 223.657C81.1572 222.157 82 220.122 82 218" fill="white"/>
<path d="M74 354C78.4183 354 82 350.418 82 346C82 341.582 78.4183 338 74 338C69.5817 338 66 341.582 66 346C66 350.418 69.5817 354 74 354Z" fill="white"/>
<path d="M82 146V162H98V154C98 151.878 97.1571 149.843 95.6569 148.343C94.1566 146.843 92.1217 146 90 146" fill="white"/>
<path d="M98 162H82V178H98V162Z" fill="white"/>
<path d="M98 194V178H82V186C82 188.122 82.8429 190.157 84.3431 191.657C85.8434 193.157 87.8783 194 90 194" fill="white"/>
<path d="M82 242H98V226H90C87.8783 226 85.8434 226.843 84.3431 228.343C82.8428 229.843 82 231.878 82 234" fill="white"/>
<path d="M98 258V242H82V250C82 252.122 82.8429 254.157 84.3431 255.657C85.8434 257.157 87.8783 258 90 258" fill="white"/>
<path d="M98 290V274H90C87.8783 274 85.8434 274.843 84.3431 276.343C82.8429 277.843 82 279.878 82 282C82 284.122 82.8429 286.157 84.3431 287.657C85.8434 289.157 87.8783 290 90 290" fill="white"/>
<path d="M82 322H98V314C98 311.878 97.1572 309.843 95.6569 308.343C94.1566 306.843 92.1217 306 90 306C87.8783 306 85.8434 306.843 84.3431 308.343C82.8428 309.843 82 311.878 82 314" fill="white"/>
<path d="M98 338V322H82V330C82 332.122 82.8429 334.157 84.3431 335.657C85.8434 337.157 87.8783 338 90 338" fill="white"/>
<path d="M98 162V178H114V170C114 167.878 113.157 165.843 111.657 164.343C110.157 162.843 108.122 162 106 162" fill="white"/>
<path d="M114 178H98V194H114V178Z" fill="white"/>
<path d="M114 194H98V210H114V194Z" fill="white"/>
<path d="M114 210H98V226H114V210Z" fill="white"/>
<path d="M114 226H98V242H114V226Z" fill="white"/>
<path d="M114 242H98V258H114V242Z" fill="white"/>
<path d="M114 258H98V274H114V258Z" fill="white"/>
<path d="M114 274H98V290H114V274Z" fill="white"/>
<path d="M114 290H98V298C98 300.122 98.8428 302.157 100.343 303.657C101.843 305.157 103.878 306 106 306C108.122 306 110.157 305.157 111.657 303.657C113.157 302.157 114 300.122 114 298" fill="white"/>
<path d="M98 322V338H114V330C114 327.878 113.157 325.843 111.657 324.343C110.157 322.843 108.122 322 106 322" fill="white"/>
<path d="M114 354V338H98V346C98 348.122 98.8429 350.157 100.343 351.657C101.843 353.157 103.878 354 106 354" fill="white"/>
<path d="M130 162V146H122C119.878 146 117.843 146.843 116.343 148.343C114.843 149.843 114 151.878 114 154C114 156.122 114.843 158.157 116.343 159.657C117.843 161.157 119.878 162 122 162" fill="white"/>
<path d="M114 178V194H122C124.122 194 126.157 193.157 127.657 191.657C129.157 190.157 130 188.122 130 186C130 183.878 129.157 181.843 127.657 180.343C126.157 178.843 124.122 178 122 178" fill="white"/>
<path d="M114 210V226H122C124.122 226 126.157 225.157 127.657 223.657C129.157 222.157 130 220.122 130 218C130 215.878 129.157 213.843 127.657 212.343C126.157 210.843 124.122 210 122 210" fill="white"/>
<path d="M130 242H114V258H130V242Z" fill="white"/>
<path d="M114 274V290H122C124.122 290 126.157 289.157 127.657 287.657C129.157 286.157 130 284.122 130 282C130 279.878 129.157 277.843 127.657 276.343C126.157 274.843 124.122 274 122 274" fill="white"/>
<path d="M130 322V306H122C119.878 306 117.843 306.843 116.343 308.343C114.843 309.843 114 311.878 114 314C114 316.122 114.843 318.157 116.343 319.657C117.843 321.157 119.878 322 122 322" fill="white"/>
<path d="M130 338H114V354H130V338Z" fill="white"/>
<path d="M130 146V162H146V154C146 151.878 145.157 149.843 143.657 148.343C142.157 146.843 140.122 146 138 146" fill="white"/>
<path d="M146 162H130V170C130 172.122 130.843 174.157 132.343 175.657C133.843 177.157 135.878 178 138 178C140.122 178 142.157 177.157 143.657 175.657C145.157 174.157 146 172.122 146 170" fill="white"/>
<path d="M138 210C142.418 210 146 206.418 146 202C146 197.582 142.418 194 138 194C133.582 194 130 197.582 130 202C130 206.418 133.582 210 138 210Z" fill="white"/>
<path d="M130 242V258H138C140.122 258 142.157 257.157 143.657 255.657C145.157 254.157 146 252.122 146 250C146 247.878 145.157 245.843 143.657 244.343C142.157 242.843 140.122 242 138 242" fill="white"/>
<path d="M130 306H146V298C146 295.878 145.157 293.843 143.657 292.343C142.157 290.843 140.122 290 138 290C135.878 290 133.843 290.843 132.343 292.343C130.843 293.843 130 295.878 130 298" fill="white"/>
<path d="M146 306H130V322H146V306Z" fill="white"/>
<path d="M146 322H130V338H146V322Z" fill="white"/>
<path d="M146 338H130V354H138C140.122 354 142.157 353.157 143.657 351.657C145.157 350.157 146 348.122 146 346" fill="white"/>
<path d="M146 50H162V42C162 39.8783 161.157 37.8434 159.657 36.3431C158.157 34.8428 156.122 34 154 34C151.878 34 149.843 34.8428 148.343 36.3431C146.843 37.8434 146 39.8783 146 42" fill="white"/>
<path d="M162 66V50H146V58C146 60.1217 146.843 62.1566 148.343 63.6569C149.843 65.1571 151.878 66 154 66" fill="white"/>
<path d="M162 98V82H154C151.878 82 149.843 82.8429 148.343 84.3431C146.843 85.8434 146 87.8783 146 90C146 92.1217 146.843 94.1566 148.343 95.6569C149.843 97.1571 151.878 98 154 98" fill="white"/>
<path d="M146 130H162V122C162 119.878 161.157 117.843 159.657 116.343C158.157 114.843 156.122 114 154 114C151.878 114 149.843 114.843 148.343 116.343C146.843 117.843 146 119.878 146 122" fill="white"/>
<path d="M162 146V130H146V138C146 140.122 146.843 142.157 148.343 143.657C149.843 145.157 151.878 146 154 146" fill="white"/>
<path d="M162 194V178H154C151.878 178 149.843 178.843 148.343 180.343C146.843 181.843 146 183.878 146 186C146 188.122 146.843 190.157 148.343 191.657C149.843 193.157 151.878 194 154 194" fill="white"/>
<path d="M154 226C158.418 226 162 222.418 162 218C162 213.582 158.418 210 154 210C149.582 210 146 213.582 146 218C146 222.418 149.582 226 154 226Z" fill="white"/>
<path d="M146 274H162V266C162 263.878 161.157 261.843 159.657 260.343C158.157 258.843 156.122 258 154 258C151.878 258 149.843 258.843 148.343 260.343C146.843 261.843 146 263.878 146 266" fill="white"/>
<path d="M162 274H146V282C146 284.122 146.843 286.157 148.343 287.657C149.843 289.157 151.878 290 154 290C156.122 290 158.157 289.157 159.657 287.657C161.157 286.157 162 284.122 162 282" fill="white"/>
<path d="M162 306H146V322H162V306Z" fill="white"/>
<path d="M154 386C158.418 386 162 382.418 162 378C162 373.582 158.418 370 154 370C149.582 370 146 373.582 146 378C146 382.418 149.582 386 154 386Z" fill="white"/>
<path d="M146 418H162V410C162 407.878 161.157 405.843 159.657 404.343C158.157 402.843 156.122 402 154 402C151.878 402 149.843 402.843 148.343 404.343C146.843 405.843 146 407.878 146 410" fill="white"/>
<path d="M162 418H146V434H162V418Z" fill="white"/>
<path d="M162 434H146V450H162V434Z" fill="white"/>
<path d="M162 450H146V466H162V450Z" fill="white"/>
<path d="M162 482V466H146V474C146 476.122 146.843 478.157 148.343 479.657C149.843 481.157 151.878 482 154 482" fill="white"/>
<path d="M178 50H162V66H178V50Z" fill="white"/>
<path d="M178 66H162V82H178V66Z" fill="white"/>
<path d="M178 82H162V98H178V82Z" fill="white"/>
<path d="M178 98H162V106C162 108.122 162.843 110.157 164.343 111.657C165.843 113.157 167.878 114 170 114C172.122 114 174.157 113.157 175.657 111.657C177.157 110.157 178 108.122 178 106" fill="white"/>
<path d="M178 130H162V146H178V130Z" fill="white"/>
<path d="M178 146H162V162H178V146Z" fill="white"/>
<path d="M178 162H162V178H178V162Z" fill="white"/>
<path d="M178 178H162V194H178V178Z" fill="white"/>
<path d="M178 194H162V202C162 204.122 162.843 206.157 164.343 207.657C165.843 209.157 167.878 210 170 210C172.122 210 174.157 209.157 175.657 207.657C177.157 206.157 178 204.122 178 202" fill="white"/>
<path d="M178 242V226H170C167.878 226 165.843 226.843 164.343 228.343C162.843 229.843 162 231.878 162 234C162 236.122 162.843 238.157 164.343 239.657C165.843 241.157 167.878 242 170 242" fill="white"/>
<path d="M162 306V322H178V314C178 311.878 177.157 309.843 175.657 308.343C174.157 306.843 172.122 306 170 306" fill="white"/>
<path d="M178 322H162V330C162 332.122 162.843 334.157 164.343 335.657C165.843 337.157 167.878 338 170 338C172.122 338 174.157 337.157 175.657 335.657C177.157 334.157 178 332.122 178 330" fill="white"/>
<path d="M170 370C174.418 370 178 366.418 178 362C178 357.582 174.418 354 170 354C165.582 354 162 357.582 162 362C162 366.418 165.582 370 170 370Z" fill="white"/>
<path d="M170 402C174.418 402 178 398.418 178 394C178 389.582 174.418 386 170 386C165.582 386 162 389.582 162 394C162 398.418 165.582 402 170 402Z" fill="white"/>
<path d="M162 418V434H178V426C178 423.878 177.157 421.843 175.657 420.343C174.157 418.843 172.122 418 170 418" fill="white"/>
<path d="M178 434H162V450H178V434Z" fill="white"/>
<path d="M178 466H162V482H178V466Z" fill="white"/>
<path d="M178 50V66H186C188.122 66 190.157 65.1571 191.657 63.6569C193.157 62.1566 194 60.1217 194 58C194 55.8783 193.157 53.8434 191.657 52.3431C190.157 50.8429 188.122 50 186 50" fill="white"/>
<path d="M194 82H178V98H194V82Z" fill="white"/>
<path d="M178 130H194V122C194 119.878 193.157 117.843 191.657 116.343C190.157 114.843 188.122 114 186 114C183.878 114 181.843 114.843 180.343 116.343C178.843 117.843 178 119.878 178 122" fill="white"/>
<path d="M194 130H178V146H194V130Z" fill="white"/>
<path d="M194 178H178V194H194V178Z" fill="white"/>
<path d="M194 226H178V242H194V226Z" fill="white"/>
<path d="M194 242H178V258H194V242Z" fill="white"/>
<path d="M194 258H178V274H194V258Z" fill="white"/>
<path d="M194 274H178V290H194V274Z" fill="white"/>
<path d="M194 306V290H178V298C178 300.122 178.843 302.157 180.343 303.657C181.843 305.157 183.878 306 186 306" fill="white"/>
<path d="M186 418C190.418 418 194 414.418 194 410C194 405.582 190.418 402 186 402C181.582 402 178 405.582 178 410C178 414.418 181.582 418 186 418Z" fill="white"/>
<path d="M178 434V450H194V442C194 439.878 193.157 437.843 191.657 436.343C190.157 434.843 188.122 434 186 434" fill="white"/>
<path d="M194 450H178V466H194V450Z" fill="white"/>
<path d="M194 466H178V482H186C188.122 482 190.157 481.157 191.657 479.657C193.157 478.157 194 476.122 194 474" fill="white"/>
<path d="M202 50C206.418 50 210 46.4183 210 42C210 37.5817 206.418 34 202 34C197.582 34 194 37.5817 194 42C194 46.4183 197.582 50 202 50Z" fill="white"/>
<path d="M210 82H194V98H210V82Z" fill="white"/>
<path d="M210 130H194V146H210V130Z" fill="white"/>
<path d="M210 146H194V154C194 156.122 194.843 158.157 196.343 159.657C197.843 161.157 199.878 162 202 162C204.122 162 206.157 161.157 207.657 159.657C209.157 158.157 210 156.122 210 154" fill="white"/>
<path d="M194 178V194H202C204.122 194 206.157 193.157 207.657 191.657C209.157 190.157 210 188.122 210 186C210 183.878 209.157 181.843 207.657 180.343C206.157 178.843 204.122 178 202 178" fill="white"/>
<path d="M194 226V242H210V234C210 231.878 209.157 229.843 207.657 228.343C206.157 226.843 204.122 226 202 226" fill="white"/>
<path d="M210 242H194V258H202C204.122 258 206.157 257.157 207.657 255.657C209.157 254.157 210 252.122 210 250" fill="white"/>
<path d="M194 274V290H210V282C210 279.878 209.157 277.843 207.657 276.343C206.157 274.843 204.122 274 202 274" fill="white"/>
<path d="M210 290H194V306H210V290Z" fill="white"/>
<path d="M202 338C206.418 338 210 334.418 210 330C210 325.582 206.418 322 202 322C197.582 322 194 325.582 194 330C194 334.418 197.582 338 202 338Z" fill="white"/>
<path d="M194 370H210V362C210 359.878 209.157 357.843 207.657 356.343C206.157 354.843 204.122 354 202 354C199.878 354 197.843 354.843 196.343 356.343C194.843 357.843 194 359.878 194 362" fill="white"/>
<path d="M210 370H194V386H210V370Z" fill="white"/>
<path d="M210 402V386H194V394C194 396.122 194.843 398.157 196.343 399.657C197.843 401.157 199.878 402 202 402" fill="white"/>
<path d="M202 434C206.418 434 210 430.418 210 426C210 421.582 206.418 418 202 418C197.582 418 194 421.582 194 426C194 430.418 197.582 434 202 434Z" fill="white"/>
<path d="M194 450V466H202C204.122 466 206.157 465.157 207.657 463.657C209.157 462.157 210 460.122 210 458C210 455.878 209.157 453.843 207.657 452.343C206.157 450.843 204.122 450 202 450" fill="white"/>
<path d="M218 66C222.418 66 226 62.4183 226 58C226 53.5817 222.418 50 218 50C213.582 50 210 53.5817 210 58C210 62.4183 213.582 66 218 66Z" fill="white"/>
<path d="M210 82V98H218C220.122 98 222.157 97.1571 223.657 95.6569C225.157 94.1566 226 92.1217 226 90C226 87.8783 225.157 85.8434 223.657 84.3431C222.157 82.8429 220.122 82 218 82" fill="white"/>
<path d="M210 130H226V122C226 119.878 225.157 117.843 223.657 116.343C222.157 114.843 220.122 114 218 114C215.878 114 213.843 114.843 212.343 116.343C210.843 117.843 210 119.878 210 122" fill="white"/>
<path d="M226 130H210V146H218C220.122 146 222.157 145.157 223.657 143.657C225.157 142.157 226 140.122 226 138" fill="white"/>
<path d="M226 178V162H218C215.878 162 213.843 162.843 212.343 164.343C210.843 165.843 210 167.878 210 170C210 172.122 210.843 174.157 212.343 175.657C213.843 177.157 215.878 178 218 178" fill="white"/>
<path d="M218 226C222.418 226 226 222.418 226 218C226 213.582 222.418 210 218 210C213.582 210 210 213.582 210 218C210 222.418 213.582 226 218 226Z" fill="white"/>
<path d="M210 290V306H218C220.122 306 222.157 305.157 223.657 303.657C225.157 302.157 226 300.122 226 298C226 295.878 225.157 293.843 223.657 292.343C222.157 290.843 220.122 290 218 290" fill="white"/>
<path d="M226 354V338H218C215.878 338 213.843 338.843 212.343 340.343C210.843 341.843 210 343.878 210 346C210 348.122 210.843 350.157 212.343 351.657C213.843 353.157 215.878 354 218 354" fill="white"/>
<path d="M226 370H210V386H226V370Z" fill="white"/>
<path d="M226 386H210V402H226V386Z" fill="white"/>
<path d="M234 50C238.418 50 242 46.4183 242 42C242 37.5817 238.418 34 234 34C229.582 34 226 37.5817 226 42C226 46.4183 229.582 50 234 50Z" fill="white"/>
<path d="M242 82V66H234C231.878 66 229.843 66.8429 228.343 68.3431C226.843 69.8434 226 71.8783 226 74C226 76.1217 226.843 78.1566 228.343 79.6569C229.843 81.1571 231.878 82 234 82" fill="white"/>
<path d="M242 162H226V178H242V162Z" fill="white"/>
<path d="M234 274C238.418 274 242 270.418 242 266C242 261.582 238.418 258 234 258C229.582 258 226 261.582 226 266C226 270.418 229.582 274 234 274Z" fill="white"/>
<path d="M226 338V354H242V346C242 343.878 241.157 341.843 239.657 340.343C238.157 338.843 236.122 338 234 338" fill="white"/>
<path d="M242 354H226V370H242V354Z" fill="white"/>
<path d="M242 370H226V386H242V370Z" fill="white"/>
<path d="M242 386H226V402H242V386Z" fill="white"/>
<path d="M226 466H242V450H234C231.878 450 229.843 450.843 228.343 452.343C226.843 453.843 226 455.878 226 458" fill="white"/>
<path d="M242 482V466H226V474C226 476.122 226.843 478.157 228.343 479.657C229.843 481.157 231.878 482 234 482" fill="white"/>
<path d="M242 66H258V50H250C247.878 50 245.843 50.8428 244.343 52.3431C242.843 53.8434 242 55.8783 242 58" fill="white"/>
<path d="M258 66H242V82H258V66Z" fill="white"/>
<path d="M258 82H242V98H258V82Z" fill="white"/>
<path d="M258 98H242V114H258V98Z" fill="white"/>
<path d="M258 114H242V122C242 124.122 242.843 126.157 244.343 127.657C245.843 129.157 247.878 130 250 130C252.122 130 254.157 129.157 255.657 127.657C257.157 126.157 258 124.122 258 122" fill="white"/>
<path d="M242 162V178H258V170C258 167.878 257.157 165.843 255.657 164.343C254.157 162.843 252.122 162 250 162" fill="white"/>
<path d="M258 178H242V194H258V178Z" fill="white"/>
<path d="M258 194H242V210H258V194Z" fill="white"/>
<path d="M258 210H242V226H258V210Z" fill="white"/>
<path d="M258 226H242V242H258V226Z" fill="white"/>
<path d="M258 242H242V250C242 252.122 242.843 254.157 244.343 255.657C245.843 257.157 247.878 258 250 258C252.122 258 254.157 257.157 255.657 255.657C257.157 254.157 258 252.122 258 250" fill="white"/>
<path d="M250 306C254.418 306 258 302.418 258 298C258 293.582 254.418 290 250 290C245.582 290 242 293.582 242 298C242 302.418 245.582 306 250 306Z" fill="white"/>
<path d="M258 354H242V370H258V354Z" fill="white"/>
<path d="M258 386H242V402H258V386Z" fill="white"/>
<path d="M242 450H258V442C258 439.878 257.157 437.843 255.657 436.343C254.157 434.843 252.122 434 250 434C247.878 434 245.843 434.843 244.343 436.343C242.843 437.843 242 439.878 242 442" fill="white"/>
<path d="M258 450H242V466H258V450Z" fill="white"/>
<path d="M258 466H242V482H258V466Z" fill="white"/>
<path d="M258 34H274V18H266C263.878 18 261.843 18.8428 260.343 20.3431C258.843 21.8434 258 23.8783 258 26" fill="white"/>
<path d="M274 34H258V50H274V34Z" fill="white"/>
<path d="M274 50H258V66H274V50Z" fill="white"/>
<path d="M274 66H258V82H266C268.122 82 270.157 81.1572 271.657 79.6569C273.157 78.1566 274 76.1217 274 74" fill="white"/>
<path d="M274 98H258V114H274V98Z" fill="white"/>
<path d="M266 146C270.418 146 274 142.418 274 138C274 133.582 270.418 130 266 130C261.582 130 258 133.582 258 138C258 142.418 261.582 146 266 146Z" fill="white"/>
<path d="M274 194H258V210H274V194Z" fill="white"/>
<path d="M274 210H258V226H274V210Z" fill="white"/>
<path d="M258 354H274V338H266C263.878 338 261.843 338.843 260.343 340.343C258.843 341.843 258 343.878 258 346" fill="white"/>
<path d="M274 354H258V370H274V354Z" fill="white"/>
<path d="M274 370H258V386H274V370Z" fill="white"/>
<path d="M274 386H258V402H274V386Z" fill="white"/>
<path d="M274 466H258V482H274V466Z" fill="white"/>
<path d="M274 18V34H290V26C290 23.8783 289.157 21.8434 287.657 20.3431C286.157 18.8429 284.122 18 282 18" fill="white"/>
<path d="M290 34H274V50H290V34Z" fill="white"/>
<path d="M290 50H274V66H282C284.122 66 286.157 65.1572 287.657 63.6569C289.157 62.1566 290 60.1217 290 58" fill="white"/>
<path d="M290 98H274V114H290V98Z" fill="white"/>
<path d="M290 114H274V122C274 124.122 274.843 126.157 276.343 127.657C277.843 129.157 279.878 130 282 130C284.122 130 286.157 129.157 287.657 127.657C289.157 126.157 290 124.122 290 122" fill="white"/>
<path d="M274 162H290V154C290 151.878 289.157 149.843 287.657 148.343C286.157 146.843 284.122 146 282 146C279.878 146 277.843 146.843 276.343 148.343C274.843 149.843 274 151.878 274 154" fill="white"/>
<path d="M290 178V162H274V170C274 172.122 274.843 174.157 276.343 175.657C277.843 177.157 279.878 178 282 178" fill="white"/>
<path d="M274 194V210H290V202C290 199.878 289.157 197.843 287.657 196.343C286.157 194.843 284.122 194 282 194" fill="white"/>
<path d="M290 210H274V226H290V210Z" fill="white"/>
<path d="M282 258C286.418 258 290 254.418 290 250C290 245.582 286.418 242 282 242C277.582 242 274 245.582 274 250C274 254.418 277.582 258 282 258Z" fill="white"/>
<path d="M290 338H274V354H290V338Z" fill="white"/>
<path d="M290 354H274V370H290V354Z" fill="white"/>
<path d="M274 386V402H282C284.122 402 286.157 401.157 287.657 399.657C289.157 398.157 290 396.122 290 394C290 391.878 289.157 389.843 287.657 388.343C286.157 386.843 284.122 386 282 386" fill="white"/>
<path d="M282 434C286.418 434 290 430.418 290 426C290 421.582 286.418 418 282 418C277.582 418 274 421.582 274 426C274 430.418 277.582 434 282 434Z" fill="white"/>
<path d="M290 466H274V482H290V466Z" fill="white"/>
<path d="M290 98H306V82H298C295.878 82 293.843 82.8428 292.343 84.3431C290.843 85.8434 290 87.8783 290 90" fill="white"/>
<path d="M306 98H290V114H306V98Z" fill="white"/>
<path d="M298 146C302.418 146 306 142.418 306 138C306 133.582 302.418 130 298 130C293.582 130 290 133.582 290 138C290 142.418 293.582 146 298 146Z" fill="white"/>
<path d="M306 162H290V178H306V162Z" fill="white"/>
<path d="M306 210H290V226H306V210Z" fill="white"/>
<path d="M298 274C302.418 274 306 270.418 306 266C306 261.582 302.418 258 298 258C293.582 258 290 261.582 290 266C290 270.418 293.582 274 298 274Z" fill="white"/>
<path d="M290 338H306V322H298C295.878 322 293.843 322.843 292.343 324.343C290.843 325.843 290 327.878 290 330" fill="white"/>
<path d="M306 338H290V354H306V338Z" fill="white"/>
<path d="M306 354H290V370H306V354Z" fill="white"/>
<path d="M290 450H306V442C306 439.878 305.157 437.843 303.657 436.343C302.157 434.843 300.122 434 298 434C295.878 434 293.843 434.843 292.343 436.343C290.843 437.843 290 439.878 290 442" fill="white"/>
<path d="M306 450H290V466H306V450Z" fill="white"/>
<path d="M306 466H290V482H306V466Z" fill="white"/>
<path d="M314 34C318.418 34 322 30.4183 322 26C322 21.5817 318.418 18 314 18C309.582 18 306 21.5817 306 26C306 30.4183 309.582 34 314 34Z" fill="white"/>
<path d="M306 82V98H322V90C322 87.8783 321.157 85.8434 319.657 84.3431C318.157 82.8429 316.122 82 314 82" fill="white"/>
<path d="M322 98H306V114H322V98Z" fill="white"/>
<path d="M322 114H306V122C306 124.122 306.843 126.157 308.343 127.657C309.843 129.157 311.878 130 314 130C316.122 130 318.157 129.157 319.657 127.657C321.157 126.157 322 124.122 322 122" fill="white"/>
<path d="M306 162V178H314C316.122 178 318.157 177.157 319.657 175.657C321.157 174.157 322 172.122 322 170C322 167.878 321.157 165.843 319.657 164.343C318.157 162.843 316.122 162 314 162" fill="white"/>
<path d="M306 210V226H322V218C322 215.878 321.157 213.843 319.657 212.343C318.157 210.843 316.122 210 314 210" fill="white"/>
<path d="M322 226H306V234C306 236.122 306.843 238.157 308.343 239.657C309.843 241.157 311.878 242 314 242C316.122 242 318.157 241.157 319.657 239.657C321.157 238.157 322 236.122 322 234" fill="white"/>
<path d="M306 322H322V306H314C311.878 306 309.843 306.843 308.343 308.343C306.843 309.843 306 311.878 306 314" fill="white"/>
<path d="M322 322H306V338H322V322Z" fill="white"/>
<path d="M322 338H306V354H322V338Z" fill="white"/>
<path d="M322 354H306V370H314C316.122 370 318.157 369.157 319.657 367.657C321.157 366.157 322 364.122 322 362" fill="white"/>
<path d="M314 418C318.418 418 322 414.418 322 410C322 405.582 318.418 402 314 402C309.582 402 306 405.582 306 410C306 414.418 309.582 418 314 418Z" fill="white"/>
<path d="M322 450H306V466H322V450Z" fill="white"/>
<path d="M322 466H306V482H322V466Z" fill="white"/>
<path d="M322 50H338V42C338 39.8783 337.157 37.8434 335.657 36.3431C334.157 34.8428 332.122 34 330 34C327.878 34 325.843 34.8428 324.343 36.3431C322.843 37.8434 322 39.8783 322 42" fill="white"/>
<path d="M338 50H322V58C322 60.1217 322.843 62.1566 324.343 63.6569C325.843 65.1572 327.878 66 330 66C332.122 66 334.157 65.1572 335.657 63.6569C337.157 62.1566 338 60.1217 338 58" fill="white"/>
<path d="M338 98H322V114H338V98Z" fill="white"/>
<path d="M330 146C334.418 146 338 142.418 338 138C338 133.582 334.418 130 330 130C325.582 130 322 133.582 322 138C322 142.418 325.582 146 330 146Z" fill="white"/>
<path d="M330 210C334.418 210 338 206.418 338 202C338 197.582 334.418 194 330 194C325.582 194 322 197.582 322 202C322 206.418 325.582 210 330 210Z" fill="white"/>
<path d="M330 274C334.418 274 338 270.418 338 266C338 261.582 334.418 258 330 258C325.582 258 322 261.582 322 266C322 270.418 325.582 274 330 274Z" fill="white"/>
<path d="M322 306H338V290H330C327.878 290 325.843 290.843 324.343 292.343C322.843 293.843 322 295.878 322 298" fill="white"/>
<path d="M338 306H322V322H330C332.122 322 334.157 321.157 335.657 319.657C337.157 318.157 338 316.122 338 314" fill="white"/>
<path d="M338 338H322V354H338V338Z" fill="white"/>
<path d="M322 386H338V370H330C327.878 370 325.843 370.843 324.343 372.343C322.843 373.843 322 375.878 322 378" fill="white"/>
<path d="M338 402V386H322V394C322 396.122 322.843 398.157 324.343 399.657C325.843 401.157 327.878 402 330 402" fill="white"/>
<path d="M338 450H322V466H338V450Z" fill="white"/>
<path d="M338 466H322V482H338V466Z" fill="white"/>
<path d="M346 34C350.418 34 354 30.4183 354 26C354 21.5817 350.418 18 346 18C341.582 18 338 21.5817 338 26C338 30.4183 341.582 34 346 34Z" fill="white"/>
<path d="M338 82H354V74C354 71.8783 353.157 69.8434 351.657 68.3431C350.157 66.8428 348.122 66 346 66C343.878 66 341.843 66.8428 340.343 68.3431C338.843 69.8434 338 71.8783 338 74" fill="white"/>
<path d="M354 82H338V98H354V82Z" fill="white"/>
<path d="M354 98H338V114H354V98Z" fill="white"/>
<path d="M354 114H338V122C338 124.122 338.843 126.157 340.343 127.657C341.843 129.157 343.878 130 346 130C348.122 130 350.157 129.157 351.657 127.657C353.157 126.157 354 124.122 354 122" fill="white"/>
<path d="M354 162V146H346C343.878 146 341.843 146.843 340.343 148.343C338.843 149.843 338 151.878 338 154C338 156.122 338.843 158.157 340.343 159.657C341.843 161.157 343.878 162 346 162" fill="white"/>
<path d="M346 226C350.418 226 354 222.418 354 218C354 213.582 350.418 210 346 210C341.582 210 338 213.582 338 218C338 222.418 341.582 226 346 226Z" fill="white"/>
<path d="M338 290H354V274H346C343.878 274 341.843 274.843 340.343 276.343C338.843 277.843 338 279.878 338 282" fill="white"/>
<path d="M354 290H338V306H354V290Z" fill="white"/>
<path d="M338 338H354V322H346C343.878 322 341.843 322.843 340.343 324.343C338.843 325.843 338 327.878 338 330" fill="white"/>
<path d="M354 338H338V354H354V338Z" fill="white"/>
<path d="M354 354H338V370H354V354Z" fill="white"/>
<path d="M354 370H338V386H354V370Z" fill="white"/>
<path d="M354 386H338V402H354V386Z" fill="white"/>
<path d="M354 418V402H338V410C338 412.122 338.843 414.157 340.343 415.657C341.843 417.157 343.878 418 346 418" fill="white"/>
<path d="M354 450H338V466H354V450Z" fill="white"/>
<path d="M354 466H338V482H354V466Z" fill="white"/>
<path d="M370 146H354V162H370V146Z" fill="white"/>
<path d="M370 162H354V178H370V162Z" fill="white"/>
<path d="M370 178H354V194H370V178Z" fill="white"/>
<path d="M370 194H354V202C354 204.122 354.843 206.157 356.343 207.657C357.843 209.157 359.878 210 362 210C364.122 210 366.157 209.157 367.657 207.657C369.157 206.157 370 204.122 370 202" fill="white"/>
<path d="M354 242H370V226H362C359.878 226 357.843 226.843 356.343 228.343C354.843 229.843 354 231.878 354 234" fill="white"/>
<path d="M370 242H354V250C354 252.122 354.843 254.157 356.343 255.657C357.843 257.157 359.878 258 362 258C364.122 258 366.157 257.157 367.657 255.657C369.157 254.157 370 252.122 370 250" fill="white"/>
<path d="M354 274V290H370V282C370 279.878 369.157 277.843 367.657 276.343C366.157 274.843 364.122 274 362 274" fill="white"/>
<path d="M370 290H354V306H362C364.122 306 366.157 305.157 367.657 303.657C369.157 302.157 370 300.122 370 298" fill="white"/>
<path d="M370 322H354V338H370V322Z" fill="white"/>
<path d="M370 338H354V354H370V338Z" fill="white"/>
<path d="M370 402H354V418H370V402Z" fill="white"/>
<path d="M370 450H354V466H370V450Z" fill="white"/>
<path d="M370 466H354V482H370V466Z" fill="white"/>
<path d="M370 146V162H378C380.122 162 382.157 161.157 383.657 159.657C385.157 158.157 386 156.122 386 154C386 151.878 385.157 149.843 383.657 148.343C382.157 146.843 380.122 146 378 146" fill="white"/>
<path d="M370 226H386V210H378C375.878 210 373.843 210.843 372.343 212.343C370.843 213.843 370 215.878 370 218" fill="white"/>
<path d="M386 226H370V242H386V226Z" fill="white"/>
<path d="M370 322H386V306H378C375.878 306 373.843 306.843 372.343 308.343C370.843 309.843 370 311.878 370 314" fill="white"/>
<path d="M386 322H370V338H386V322Z" fill="white"/>
<path d="M386 338H370V354H386V338Z" fill="white"/>
<path d="M378 386C382.418 386 386 382.418 386 378C386 373.582 382.418 370 378 370C373.582 370 370 373.582 370 378C370 382.418 373.582 386 378 386Z" fill="white"/>
<path d="M386 402H370V418H386V402Z" fill="white"/>
<path d="M370 450H386V442C386 439.878 385.157 437.843 383.657 436.343C382.157 434.843 380.122 434 378 434C375.878 434 373.843 434.843 372.343 436.343C370.843 437.843 370 439.878 370 442" fill="white"/>
<path d="M386 450H370V466H386V450Z" fill="white"/>
<path d="M386 466H370V482H378C380.122 482 382.157 481.157 383.657 479.657C385.157 478.157 386 476.122 386 474" fill="white"/>
<path d="M394 194C398.418 194 402 190.418 402 186C402 181.582 398.418 178 394 178C389.582 178 386 181.582 386 186C386 190.418 389.582 194 394 194Z" fill="white"/>
<path d="M386 210V226H402V218C402 215.878 401.157 213.843 399.657 212.343C398.157 210.843 396.122 210 394 210" fill="white"/>
<path d="M402 226H386V242H402V226Z" fill="white"/>
<path d="M402 242H386V258H402V242Z" fill="white"/>
<path d="M402 258H386V274H402V258Z" fill="white"/>
<path d="M402 274H386V290H402V274Z" fill="white"/>
<path d="M402 290H386V306H402V290Z" fill="white"/>
<path d="M402 306H386V322H402V306Z" fill="white"/>
<path d="M402 338H386V354H402V338Z" fill="white"/>
<path d="M402 402H386V418H402V402Z" fill="white"/>
<path d="M410 162C414.418 162 418 158.418 418 154C418 149.582 414.418 146 410 146C405.582 146 402 149.582 402 154C402 158.418 405.582 162 410 162Z" fill="white"/>
<path d="M402 226V242H410C412.122 242 414.157 241.157 415.657 239.657C417.157 238.157 418 236.122 418 234C418 231.878 417.157 229.843 415.657 228.343C414.157 226.843 412.122 226 410 226" fill="white"/>
<path d="M418 258H402V274H418V258Z" fill="white"/>
<path d="M418 274H402V290H418V274Z" fill="white"/>
<path d="M418 306H402V322H418V306Z" fill="white"/>
<path d="M418 338H402V354H418V338Z" fill="white"/>
<path d="M418 354H402V370H418V354Z" fill="white"/>
<path d="M418 370H402V386H418V370Z" fill="white"/>
<path d="M418 386H402V402H418V386Z" fill="white"/>
<path d="M418 402H402V418H418V402Z" fill="white"/>
<path d="M418 434V418H402V426C402 428.122 402.843 430.157 404.343 431.657C405.843 433.157 407.878 434 410 434" fill="white"/>
<path d="M418 178H434V162H426C423.878 162 421.843 162.843 420.343 164.343C418.843 165.843 418 167.878 418 170" fill="white"/>
<path d="M434 178H418V186C418 188.122 418.843 190.157 420.343 191.657C421.843 193.157 423.878 194 426 194C428.122 194 430.157 193.157 431.657 191.657C433.157 190.157 434 188.122 434 186" fill="white"/>
<path d="M426 226C430.418 226 434 222.418 434 218C434 213.582 430.418 210 426 210C421.582 210 418 213.582 418 218C418 222.418 421.582 226 426 226Z" fill="white"/>
<path d="M418 258H434V242H426C423.878 242 421.843 242.843 420.343 244.343C418.843 245.843 418 247.878 418 250" fill="white"/>
<path d="M434 258H418V274H434V258Z" fill="white"/>
<path d="M434 274H418V290H434V274Z" fill="white"/>
<path d="M418 306V322H426C428.122 322 430.157 321.157 431.657 319.657C433.157 318.157 434 316.122 434 314C434 311.878 433.157 309.843 431.657 308.343C430.157 306.843 428.122 306 426 306" fill="white"/>
<path d="M418 338V354H434V346C434 343.878 433.157 341.843 431.657 340.343C430.157 338.843 428.122 338 426 338" fill="white"/>
<path d="M434 354H418V370H426C428.122 370 430.157 369.157 431.657 367.657C433.157 366.157 434 364.122 434 362" fill="white"/>
<path d="M434 402H418V418H434V402Z" fill="white"/>
<path d="M434 418H418V434H434V418Z" fill="white"/>
<path d="M434 162H450V146H442C439.878 146 437.843 146.843 436.343 148.343C434.843 149.843 434 151.878 434 154" fill="white"/>
<path d="M450 162H434V178H450V162Z" fill="white"/>
<path d="M450 210V194H442C439.878 194 437.843 194.843 436.343 196.343C434.843 197.843 434 199.878 434 202C434 204.122 434.843 206.157 436.343 207.657C437.843 209.157 439.878 210 442 210" fill="white"/>
<path d="M434 242H450V234C450 231.878 449.157 229.843 447.657 228.343C446.157 226.843 444.122 226 442 226C439.878 226 437.843 226.843 436.343 228.343C434.843 229.843 434 231.878 434 234" fill="white"/>
<path d="M450 242H434V258H450V242Z" fill="white"/>
<path d="M450 258H434V274H450V258Z" fill="white"/>
<path d="M450 274H434V290H450V274Z" fill="white"/>
<path d="M442 338C446.418 338 450 334.418 450 330C450 325.582 446.418 322 442 322C437.582 322 434 325.582 434 330C434 334.418 437.582 338 442 338Z" fill="white"/>
<path d="M434 402H450V386H442C439.878 386 437.843 386.843 436.343 388.343C434.843 389.843 434 391.878 434 394" fill="white"/>
<path d="M450 402H434V418H450V402Z" fill="white"/>
<path d="M450 418H434V434H450V418Z" fill="white"/>
<path d="M450 434H434V442C434 444.122 434.843 446.157 436.343 447.657C437.843 449.157 439.878 450 442 450C444.122 450 446.157 449.157 447.657 447.657C449.157 446.157 450 444.122 450 442" fill="white"/>
<path d="M442 482C446.418 482 450 478.418 450 474C450 469.582 446.418 466 442 466C437.582 466 434 469.582 434 474C434 478.418 437.582 482 442 482Z" fill="white"/>
<path d="M450 146V162H466V154C466 151.878 465.157 149.843 463.657 148.343C462.157 146.843 460.122 146 458 146" fill="white"/>
<path d="M466 162H450V178H466V162Z" fill="white"/>
<path d="M466 178H450V194H466V178Z" fill="white"/>
<path d="M466 194H450V210H466V194Z" fill="white"/>
<path d="M466 226V210H450V218C450 220.122 450.843 222.157 452.343 223.657C453.843 225.157 455.878 226 458 226" fill="white"/>
<path d="M466 274H450V290H466V274Z" fill="white"/>
<path d="M466 290H450V306H466V290Z" fill="white"/>
<path d="M466 306H450V314C450 316.122 450.843 318.157 452.343 319.657C453.843 321.157 455.878 322 458 322C460.122 322 462.157 321.157 463.657 319.657C465.157 318.157 466 316.122 466 314" fill="white"/>
<path d="M466 370V354H458C455.878 354 453.843 354.843 452.343 356.343C450.843 357.843 450 359.878 450 362C450 364.122 450.843 366.157 452.343 367.657C453.843 369.157 455.878 370 458 370" fill="white"/>
<path d="M450 386V402H458C460.122 402 462.157 401.157 463.657 399.657C465.157 398.157 466 396.122 466 394C466 391.878 465.157 389.843 463.657 388.343C462.157 386.843 460.122 386 458 386" fill="white"/>
<path d="M466 466V450H458C455.878 450 453.843 450.843 452.343 452.343C450.843 453.843 450 455.878 450 458C450 460.122 450.843 462.157 452.343 463.657C453.843 465.157 455.878 466 458 466" fill="white"/>
<path d="M466 210V226H474C476.122 226 478.157 225.157 479.657 223.657C481.157 222.157 482 220.122 482 218C482 215.878 481.157 213.843 479.657 212.343C478.157 210.843 476.122 210 474 210" fill="white"/>
<path d="M466 274H482V266C482 263.878 481.157 261.843 479.657 260.343C478.157 258.843 476.122 258 474 258C471.878 258 469.843 258.843 468.343 260.343C466.843 261.843 466 263.878 466 266" fill="white"/>
<path d="M482 274H466V290H482V274Z" fill="white"/>
<path d="M482 290H466V306H474C476.122 306 478.157 305.157 479.657 303.657C481.157 302.157 482 300.122 482 298" fill="white"/>
<path d="M466 354H482V346C482 343.878 481.157 341.843 479.657 340.343C478.157 338.843 476.122 338 474 338C471.878 338 469.843 338.843 468.343 340.343C466.843 341.843 466 343.878 466 346" fill="white"/>
<path d="M482 354H466V370H482V354Z" fill="white"/>
<path d="M482 370H466V378C466 380.122 466.843 382.157 468.343 383.657C469.843 385.157 471.878 386 474 386C476.122 386 478.157 385.157 479.657 383.657C481.157 382.157 482 380.122 482 378" fill="white"/>
<path d="M466 418H482V410C482 407.878 481.157 405.843 479.657 404.343C478.157 402.843 476.122 402 474 402C471.878 402 469.843 402.843 468.343 404.343C466.843 405.843 466 407.878 466 410" fill="white"/>
<path d="M482 418H466V426C466 428.122 466.843 430.157 468.343 431.657C469.843 433.157 471.878 434 474 434C476.122 434 478.157 433.157 479.657 431.657C481.157 430.157 482 428.122 482 426" fill="white"/>
<path d="M466 450V466H482V458C482 455.878 481.157 453.843 479.657 452.343C478.157 450.843 476.122 450 474 450" fill="white"/>
<path d="M482 466H466V474C466 476.122 466.843 478.157 468.343 479.657C469.843 481.157 471.878 482 474 482C476.122 482 478.157 481.157 479.657 479.657C481.157 478.157 482 476.122 482 474" fill="white"/>
</mask>
<g mask="url(#mask0_1160_310)">
<path d="M500 0H0V500H500V0Z" fill="#E3E7FF"/>
</g>
<mask id="mask1_1160_310" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="18" y="18" width="112" height="112">
<path fill-rule="evenodd" clip-rule="evenodd" d="M18 58V90C18 100.609 22.2143 110.783 29.7157 118.284C33.4301 121.999 37.8396 124.945 42.6927 126.955C47.5457 128.965 52.7471 130 58 130H90C100.609 130 110.783 125.786 118.284 118.284C125.786 110.783 130 100.609 130 90V58C130 52.7471 128.965 47.5457 126.955 42.6927C124.945 37.8396 121.999 33.4301 118.284 29.7157C114.57 26.0014 110.16 23.055 105.307 21.0448C100.454 19.0346 95.2529 18 90 18H58C52.7471 18 47.5457 19.0346 42.6927 21.0448C37.8396 23.055 33.4301 26.0014 29.7157 29.7157C22.2143 37.2172 18 47.3913 18 58ZM58 34H90C96.3652 34 102.47 36.5286 106.971 41.0294C111.471 45.5303 114 51.6348 114 58V90C114 96.3652 111.471 102.47 106.971 106.971C102.47 111.471 96.3652 114 90 114H58C51.6348 114 45.5303 111.471 41.0294 106.971C36.5286 102.47 34 96.3652 34 90V58C34 51.6348 36.5286 45.5303 41.0294 41.0294C45.5303 36.5286 51.6348 34 58 34Z" fill="white"/>
</mask>
<g mask="url(#mask1_1160_310)">
<path d="M130 18H18V130H130V18Z" fill="#E3E7FF"/>
</g>
<mask id="mask2_1160_310" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="50" y="50" width="48" height="48">
<path d="M74 98C87.2548 98 98 87.2548 98 74C98 60.7452 87.2548 50 74 50C60.7452 50 50 60.7452 50 74C50 87.2548 60.7452 98 74 98Z" fill="white"/>
</mask>
<g mask="url(#mask2_1160_310)">
<path d="M98 50H50V98H98V50Z" fill="#E3E7FF"/>
</g>
<mask id="mask3_1160_310" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="370" y="18" width="112" height="112">
<path fill-rule="evenodd" clip-rule="evenodd" d="M442 18H410C399.391 18 389.217 22.2143 381.716 29.7157C374.214 37.2172 370 47.3913 370 58V90C370 100.609 374.214 110.783 381.716 118.284C389.217 125.786 399.391 130 410 130H442C447.253 130 452.454 128.965 457.307 126.955C462.16 124.945 466.57 121.999 470.284 118.284C473.999 114.57 476.945 110.16 478.955 105.307C480.965 100.454 482 95.2529 482 90V58C482 47.3913 477.786 37.2172 470.284 29.7157C462.783 22.2143 452.609 18 442 18ZM466 58V90C466 96.3652 463.471 102.47 458.971 106.971C454.47 111.471 448.365 114 442 114H410C403.635 114 397.53 111.471 393.029 106.971C388.529 102.47 386 96.3652 386 90V58C386 51.6348 388.529 45.5303 393.029 41.0294C397.53 36.5286 403.635 34 410 34H442C448.365 34 454.47 36.5286 458.971 41.0294C463.471 45.5303 466 51.6348 466 58Z" fill="white"/>
</mask>
<g mask="url(#mask3_1160_310)">
<path d="M482 18H370V130H482V18Z" fill="#E3E7FF"/>
</g>
<mask id="mask4_1160_310" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="402" y="50" width="48" height="48">
<path d="M402 74C402 87.2548 412.745 98 426 98C439.255 98 450 87.2548 450 74C450 60.7452 439.255 50 426 50C412.745 50 402 60.7452 402 74Z" fill="white"/>
</mask>
<g mask="url(#mask4_1160_310)">
<path d="M450 50H402V98H450V50Z" fill="#E3E7FF"/>
</g>
<mask id="mask5_1160_310" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="18" y="370" width="112" height="112">
<path fill-rule="evenodd" clip-rule="evenodd" d="M58 482H90C100.609 482 110.783 477.786 118.284 470.284C121.999 466.57 124.945 462.16 126.955 457.307C128.965 452.454 130 447.253 130 442V410C130 399.391 125.786 389.217 118.284 381.716C110.783 374.214 100.609 370 90 370H58C47.3913 370 37.2172 374.214 29.7157 381.716C22.2143 389.217 18 399.391 18 410V442C18 447.253 19.0346 452.454 21.0448 457.307C23.055 462.16 26.0014 466.57 29.7157 470.284C37.2172 477.786 47.3913 482 58 482ZM34 442V410C34 403.635 36.5286 397.53 41.0294 393.029C45.5303 388.529 51.6348 386 58 386H90C96.3652 386 102.47 388.529 106.971 393.029C111.471 397.53 114 403.635 114 410V442C114 448.365 111.471 454.47 106.971 458.971C102.47 463.471 96.3652 466 90 466H58C51.6348 466 45.5303 463.471 41.0294 458.971C36.5286 454.47 34 448.365 34 442Z" fill="white"/>
</mask>
<g mask="url(#mask5_1160_310)">
<path d="M130 370H18V482H130V370Z" fill="#E3E7FF"/>
</g>
<mask id="mask6_1160_310" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="50" y="402" width="48" height="48">
<path d="M98 426C98 412.745 87.2548 402 74 402C60.7452 402 50 412.745 50 426C50 439.255 60.7452 450 74 450C87.2548 450 98 439.255 98 426Z" fill="white"/>
</mask>
<g mask="url(#mask6_1160_310)">
<path d="M98 402H50V450H98V402Z" fill="#E3E7FF"/>
</g>
</g>
<defs>
<clipPath id="clip0_1160_310">
<rect width="500" height="500" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 41 KiB

2
docs/static/img/app-qr-code-light.svg vendored Normal file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 196 KiB

9
docs/static/img/logomark-dark.svg vendored Normal file
View file

@ -0,0 +1,9 @@
<svg width="96" height="96" viewBox="0 0 96 96" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="0.5" y="0.5" width="95" height="95" rx="47.5" fill="#070915"/>
<rect x="0.5" y="0.5" width="95" height="95" rx="47.5" stroke="#222326"/>
<path d="M45.4161 33.5746C50.122 37.7636 53.9145 42.2527 56.3552 46.4834C60.5471 38.9453 63.3483 29.988 63.3836 24.283C63.3836 24.2426 63.3836 24.2059 63.3836 24.1716C63.3836 15.7298 55.0082 12.4445 47.7934 12.4445C40.5786 12.4445 32.2032 15.7298 32.2032 24.1716C32.2032 24.2867 32.2032 24.441 32.2032 24.6271C36.2247 26.4247 40.9915 29.6366 45.4161 33.5746Z" fill="#E93832"/>
<path d="M19.7453 56.5954C22.6865 53.3052 27.1988 49.7394 32.2908 46.7247C37.708 43.5189 43.1264 41.2793 47.8822 40.2543C42.0473 33.9163 34.4404 28.4697 29.0536 26.6733C29.0159 26.6611 28.9806 26.6501 28.9489 26.639C20.9632 24.0308 15.2671 31.024 13.0384 37.9229C10.8096 44.8218 11.3285 53.8464 19.3142 56.4546C19.4226 56.4901 19.5687 56.5379 19.7453 56.5954Z" fill="#ED79B5"/>
<path d="M82.6335 37.8066C80.4047 30.9077 74.7086 23.9145 66.7229 26.5227C66.6133 26.5582 66.4672 26.606 66.2918 26.6635C65.8351 31.0632 64.2701 36.6151 61.9123 42.063C59.4046 47.8573 56.3295 52.8717 53.0814 56.5122C61.5067 58.1922 70.8455 58.1016 76.2529 56.3726C76.2907 56.3603 76.326 56.3481 76.3577 56.3383C84.3434 53.7289 84.8622 44.7042 82.6335 37.8066Z" fill="#E8AB17"/>
<path d="M40.6736 63.34C39.3157 57.1697 38.8712 51.2958 39.3705 46.432C31.5723 50.0529 24.0701 55.644 20.7051 60.2396C20.682 60.2714 20.6601 60.302 20.6406 60.329C15.7057 67.1593 20.5602 74.7672 26.3975 79.0297C32.2337 83.2934 40.9306 85.5857 45.8667 78.7554C45.9349 78.6623 46.0251 78.5374 46.1334 78.3868C43.9303 74.5578 41.95 69.1405 40.6736 63.34Z" fill="#2383F2"/>
<path d="M74.8999 59.888C70.5971 60.8113 64.862 61.0305 58.9796 60.4587C52.7233 59.8513 47.0309 58.4603 42.5832 56.479C43.5977 65.0542 46.5693 73.9564 49.8759 78.5936C49.8991 78.6255 49.921 78.6561 49.9405 78.683C54.8754 85.5133 63.5723 83.2211 69.4096 78.9573C75.2458 74.6936 80.1015 67.0857 75.1666 60.2566C75.0984 60.1636 75.0083 60.0387 74.8999 59.888Z" fill="#1FBB4C"/>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

9
docs/static/img/logomark-light.svg vendored Normal file
View file

@ -0,0 +1,9 @@
<svg width="96" height="96" viewBox="0 0 96 96" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="0.417391" y="0.417391" width="95.1652" height="95.1652" rx="47.5826" fill="white"/>
<rect x="0.417391" y="0.417391" width="95.1652" height="95.1652" rx="47.5826" stroke="#E9EAEC" stroke-width="0.834783"/>
<path d="M45.416 33.5745C50.1219 37.7635 53.9144 42.2526 56.3551 46.4832C60.5471 38.9452 63.3482 29.9879 63.3835 24.2829C63.3835 24.2425 63.3835 24.2057 63.3835 24.1715C63.3835 15.7297 55.0081 12.4443 47.7933 12.4443C40.5786 12.4443 32.2031 15.7297 32.2031 24.1715C32.2031 24.2866 32.2031 24.4409 32.2031 24.627C36.2246 26.4246 40.9914 29.6364 45.416 33.5745Z" fill="#FA2921"/>
<path d="M19.7443 56.5951C22.6855 53.3048 27.1978 49.739 32.2898 46.7243C37.707 43.5185 43.1254 41.2789 47.8812 40.254C42.0463 33.9159 34.4394 28.4693 29.0527 26.673C29.0149 26.6607 28.9796 26.6497 28.9479 26.6387C20.9622 24.0305 15.2661 31.0236 13.0374 37.9225C10.8087 44.8214 11.3275 53.846 19.3132 56.4542C19.4216 56.4897 19.5677 56.5375 19.7443 56.5951Z" fill="#ED79B5"/>
<path d="M82.6341 37.8063C80.4054 30.9074 74.7093 23.9143 66.7236 26.5225C66.614 26.558 66.4679 26.6057 66.2925 26.6633C65.8358 31.0629 64.2708 36.6149 61.9129 42.0627C59.4053 47.8571 56.3301 52.8715 53.082 56.5119C61.5074 58.1919 70.8462 58.1013 76.2536 56.3723C76.2914 56.3601 76.3267 56.3478 76.3583 56.338C84.344 53.7286 84.8629 44.704 82.6341 37.8063Z" fill="#FFB400"/>
<path d="M40.6729 63.3397C39.315 57.1694 38.8704 51.2954 39.3698 46.4316C31.5716 50.0525 24.0694 55.6436 20.7044 60.2392C20.6812 60.271 20.6593 60.3017 20.6398 60.3286C15.7049 67.1589 20.5595 74.7668 26.3968 79.0293C32.2329 83.293 40.9299 85.5853 45.866 78.755C45.9342 78.6619 46.0243 78.537 46.1327 78.3864C43.9295 74.5574 41.9493 69.1402 40.6729 63.3397Z" fill="#1E83F7"/>
<path d="M74.9007 59.8885C70.5979 60.8118 64.8628 61.031 58.9804 60.4591C52.7241 59.8518 47.0317 58.4607 42.584 56.4795C43.5985 65.0547 46.5701 73.9569 49.8767 78.5941C49.8998 78.626 49.9218 78.6566 49.9413 78.6835C54.8761 85.5138 63.5731 83.2215 69.4104 78.9578C75.2466 74.6941 80.1023 67.0862 75.1674 60.2571C75.0992 60.164 75.0091 60.0391 74.9007 59.8885Z" fill="#18C249"/>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

BIN
docs/static/img/screenshot-dark.webp vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 254 KiB

BIN
docs/static/img/screenshot-light.webp vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 250 KiB

View file

@ -11,13 +11,13 @@ module.exports = {
colors: { colors: {
// Light Theme // Light Theme
'immich-primary': '#4250af', 'immich-primary': '#4250af',
'immich-bg': 'white', 'immich-bg': '#f9f8fb',
'immich-fg': 'black', 'immich-fg': 'black',
'immich-gray': '#F6F6F4', 'immich-gray': '#F6F6F4',
// Dark Theme // Dark Theme
'immich-dark-primary': '#adcbfa', 'immich-dark-primary': '#adcbfa',
'immich-dark-bg': 'black', 'immich-dark-bg': '#070a14',
'immich-dark-fg': '#e5e7eb', 'immich-dark-fg': '#e5e7eb',
'immich-dark-gray': '#212121', 'immich-dark-gray': '#212121',
}, },