diff --git a/loader/resources/blanks/baseCircle_BigAlt_Blue.png b/loader/resources/blanks/baseCircle_BigAlt_Blue.png
index ef69e647..953f7383 100644
Binary files a/loader/resources/blanks/baseCircle_BigAlt_Blue.png and b/loader/resources/blanks/baseCircle_BigAlt_Blue.png differ
diff --git a/loader/resources/blanks/baseCircle_BigAlt_Cyan.png b/loader/resources/blanks/baseCircle_BigAlt_Cyan.png
index 40130cba..8f2f1da4 100644
Binary files a/loader/resources/blanks/baseCircle_BigAlt_Cyan.png and b/loader/resources/blanks/baseCircle_BigAlt_Cyan.png differ
diff --git a/loader/resources/blanks/baseCircle_BigAlt_Gray.png b/loader/resources/blanks/baseCircle_BigAlt_Gray.png
index aa77f001..64c5c240 100644
Binary files a/loader/resources/blanks/baseCircle_BigAlt_Gray.png and b/loader/resources/blanks/baseCircle_BigAlt_Gray.png differ
diff --git a/loader/resources/blanks/baseCircle_BigAlt_Green.png b/loader/resources/blanks/baseCircle_BigAlt_Green.png
index d22bc68f..ee3f545d 100644
Binary files a/loader/resources/blanks/baseCircle_BigAlt_Green.png and b/loader/resources/blanks/baseCircle_BigAlt_Green.png differ
diff --git a/loader/resources/blanks/baseCircle_BigAlt_Pink.png b/loader/resources/blanks/baseCircle_BigAlt_Pink.png
index 4891b1f5..d40d434d 100644
Binary files a/loader/resources/blanks/baseCircle_BigAlt_Pink.png and b/loader/resources/blanks/baseCircle_BigAlt_Pink.png differ
diff --git a/loader/resources/blanks/baseCircle_Big_Blue.png b/loader/resources/blanks/baseCircle_Big_Blue.png
index 128d1331..8913ab1e 100644
Binary files a/loader/resources/blanks/baseCircle_Big_Blue.png and b/loader/resources/blanks/baseCircle_Big_Blue.png differ
diff --git a/loader/resources/blanks/baseCircle_Big_Cyan.png b/loader/resources/blanks/baseCircle_Big_Cyan.png
index 5b6a0bea..834f543e 100644
Binary files a/loader/resources/blanks/baseCircle_Big_Cyan.png and b/loader/resources/blanks/baseCircle_Big_Cyan.png differ
diff --git a/loader/resources/blanks/baseCircle_Big_Gray.png b/loader/resources/blanks/baseCircle_Big_Gray.png
index 1cc9c125..3bb96f9f 100644
Binary files a/loader/resources/blanks/baseCircle_Big_Gray.png and b/loader/resources/blanks/baseCircle_Big_Gray.png differ
diff --git a/loader/resources/blanks/baseCircle_Big_Green.png b/loader/resources/blanks/baseCircle_Big_Green.png
index ec3f451c..74134ffe 100644
Binary files a/loader/resources/blanks/baseCircle_Big_Green.png and b/loader/resources/blanks/baseCircle_Big_Green.png differ
diff --git a/loader/resources/blanks/baseCircle_Big_Pink.png b/loader/resources/blanks/baseCircle_Big_Pink.png
index 889eeee1..e55c4002 100644
Binary files a/loader/resources/blanks/baseCircle_Big_Pink.png and b/loader/resources/blanks/baseCircle_Big_Pink.png differ
diff --git a/loader/resources/blanks/baseCircle_Large_Blue.png b/loader/resources/blanks/baseCircle_Large_Blue.png
index 3a42af72..4a9a73eb 100644
Binary files a/loader/resources/blanks/baseCircle_Large_Blue.png and b/loader/resources/blanks/baseCircle_Large_Blue.png differ
diff --git a/loader/resources/blanks/baseCircle_Large_Cyan.png b/loader/resources/blanks/baseCircle_Large_Cyan.png
index cea77e2f..902a477a 100644
Binary files a/loader/resources/blanks/baseCircle_Large_Cyan.png and b/loader/resources/blanks/baseCircle_Large_Cyan.png differ
diff --git a/loader/resources/blanks/baseCircle_Large_Gray.png b/loader/resources/blanks/baseCircle_Large_Gray.png
index 3cecc3ab..62e4cb53 100644
Binary files a/loader/resources/blanks/baseCircle_Large_Gray.png and b/loader/resources/blanks/baseCircle_Large_Gray.png differ
diff --git a/loader/resources/blanks/baseCircle_Large_Green.png b/loader/resources/blanks/baseCircle_Large_Green.png
index 6100ff10..4eb4cd73 100644
Binary files a/loader/resources/blanks/baseCircle_Large_Green.png and b/loader/resources/blanks/baseCircle_Large_Green.png differ
diff --git a/loader/resources/blanks/baseCircle_Large_Pink.png b/loader/resources/blanks/baseCircle_Large_Pink.png
index 97b3d246..5793b4c9 100644
Binary files a/loader/resources/blanks/baseCircle_Large_Pink.png and b/loader/resources/blanks/baseCircle_Large_Pink.png differ
diff --git a/loader/resources/blanks/baseCircle_MediumAlt_Blue.png b/loader/resources/blanks/baseCircle_MediumAlt_Blue.png
index b5cdf449..372da7ea 100644
Binary files a/loader/resources/blanks/baseCircle_MediumAlt_Blue.png and b/loader/resources/blanks/baseCircle_MediumAlt_Blue.png differ
diff --git a/loader/resources/blanks/baseCircle_MediumAlt_Cyan.png b/loader/resources/blanks/baseCircle_MediumAlt_Cyan.png
index daed179f..d78d6a09 100644
Binary files a/loader/resources/blanks/baseCircle_MediumAlt_Cyan.png and b/loader/resources/blanks/baseCircle_MediumAlt_Cyan.png differ
diff --git a/loader/resources/blanks/baseCircle_MediumAlt_Gray.png b/loader/resources/blanks/baseCircle_MediumAlt_Gray.png
index aa7a993f..43373211 100644
Binary files a/loader/resources/blanks/baseCircle_MediumAlt_Gray.png and b/loader/resources/blanks/baseCircle_MediumAlt_Gray.png differ
diff --git a/loader/resources/blanks/baseCircle_MediumAlt_Green.png b/loader/resources/blanks/baseCircle_MediumAlt_Green.png
index d1afa1f0..0b7ec5d9 100644
Binary files a/loader/resources/blanks/baseCircle_MediumAlt_Green.png and b/loader/resources/blanks/baseCircle_MediumAlt_Green.png differ
diff --git a/loader/resources/blanks/baseCircle_MediumAlt_Pink.png b/loader/resources/blanks/baseCircle_MediumAlt_Pink.png
index 9717f081..dc230c6e 100644
Binary files a/loader/resources/blanks/baseCircle_MediumAlt_Pink.png and b/loader/resources/blanks/baseCircle_MediumAlt_Pink.png differ
diff --git a/loader/resources/blanks/baseCircle_Medium_Blue.png b/loader/resources/blanks/baseCircle_Medium_Blue.png
index 964b312d..215ae638 100644
Binary files a/loader/resources/blanks/baseCircle_Medium_Blue.png and b/loader/resources/blanks/baseCircle_Medium_Blue.png differ
diff --git a/loader/resources/blanks/baseCircle_Medium_Cyan.png b/loader/resources/blanks/baseCircle_Medium_Cyan.png
index 01589f7a..4836f7b6 100644
Binary files a/loader/resources/blanks/baseCircle_Medium_Cyan.png and b/loader/resources/blanks/baseCircle_Medium_Cyan.png differ
diff --git a/loader/resources/blanks/baseCircle_Medium_Gray.png b/loader/resources/blanks/baseCircle_Medium_Gray.png
index 663f92ce..30b1e9b0 100644
Binary files a/loader/resources/blanks/baseCircle_Medium_Gray.png and b/loader/resources/blanks/baseCircle_Medium_Gray.png differ
diff --git a/loader/resources/blanks/baseCircle_Medium_Green.png b/loader/resources/blanks/baseCircle_Medium_Green.png
index ecf70e53..98d73ccf 100644
Binary files a/loader/resources/blanks/baseCircle_Medium_Green.png and b/loader/resources/blanks/baseCircle_Medium_Green.png differ
diff --git a/loader/resources/blanks/baseCircle_Medium_Pink.png b/loader/resources/blanks/baseCircle_Medium_Pink.png
index 8ca18621..4306bde4 100644
Binary files a/loader/resources/blanks/baseCircle_Medium_Pink.png and b/loader/resources/blanks/baseCircle_Medium_Pink.png differ
diff --git a/loader/resources/blanks/baseCircle_SmallAlt_Blue.png b/loader/resources/blanks/baseCircle_SmallAlt_Blue.png
index a72d42c8..350c22fe 100644
Binary files a/loader/resources/blanks/baseCircle_SmallAlt_Blue.png and b/loader/resources/blanks/baseCircle_SmallAlt_Blue.png differ
diff --git a/loader/resources/blanks/baseCircle_SmallAlt_Cyan.png b/loader/resources/blanks/baseCircle_SmallAlt_Cyan.png
index 1e1583bd..c2313642 100644
Binary files a/loader/resources/blanks/baseCircle_SmallAlt_Cyan.png and b/loader/resources/blanks/baseCircle_SmallAlt_Cyan.png differ
diff --git a/loader/resources/blanks/baseCircle_SmallAlt_Gray.png b/loader/resources/blanks/baseCircle_SmallAlt_Gray.png
index 5319559a..4855b3e7 100644
Binary files a/loader/resources/blanks/baseCircle_SmallAlt_Gray.png and b/loader/resources/blanks/baseCircle_SmallAlt_Gray.png differ
diff --git a/loader/resources/blanks/baseCircle_SmallAlt_Green.png b/loader/resources/blanks/baseCircle_SmallAlt_Green.png
index 811f2fc3..44d44c68 100644
Binary files a/loader/resources/blanks/baseCircle_SmallAlt_Green.png and b/loader/resources/blanks/baseCircle_SmallAlt_Green.png differ
diff --git a/loader/resources/blanks/baseCircle_SmallAlt_Pink.png b/loader/resources/blanks/baseCircle_SmallAlt_Pink.png
index 41c6334b..ba13ae83 100644
Binary files a/loader/resources/blanks/baseCircle_SmallAlt_Pink.png and b/loader/resources/blanks/baseCircle_SmallAlt_Pink.png differ
diff --git a/loader/resources/blanks/baseCircle_Small_Blue.png b/loader/resources/blanks/baseCircle_Small_Blue.png
index 49eed3bc..2709e8f5 100644
Binary files a/loader/resources/blanks/baseCircle_Small_Blue.png and b/loader/resources/blanks/baseCircle_Small_Blue.png differ
diff --git a/loader/resources/blanks/baseCircle_Small_Cyan.png b/loader/resources/blanks/baseCircle_Small_Cyan.png
index 3f539bc0..681110a0 100644
Binary files a/loader/resources/blanks/baseCircle_Small_Cyan.png and b/loader/resources/blanks/baseCircle_Small_Cyan.png differ
diff --git a/loader/resources/blanks/baseCircle_Small_Gray.png b/loader/resources/blanks/baseCircle_Small_Gray.png
index be7b3608..529350f9 100644
Binary files a/loader/resources/blanks/baseCircle_Small_Gray.png and b/loader/resources/blanks/baseCircle_Small_Gray.png differ
diff --git a/loader/resources/blanks/baseCircle_Small_Green.png b/loader/resources/blanks/baseCircle_Small_Green.png
index 34830d5d..9f482e12 100644
Binary files a/loader/resources/blanks/baseCircle_Small_Green.png and b/loader/resources/blanks/baseCircle_Small_Green.png differ
diff --git a/loader/resources/blanks/baseCircle_Small_Pink.png b/loader/resources/blanks/baseCircle_Small_Pink.png
index ecbf9d99..94d5e059 100644
Binary files a/loader/resources/blanks/baseCircle_Small_Pink.png and b/loader/resources/blanks/baseCircle_Small_Pink.png differ
diff --git a/loader/resources/blanks/baseCircle_Tiny_Blue.png b/loader/resources/blanks/baseCircle_Tiny_Blue.png
index f6f5e734..d021baf6 100644
Binary files a/loader/resources/blanks/baseCircle_Tiny_Blue.png and b/loader/resources/blanks/baseCircle_Tiny_Blue.png differ
diff --git a/loader/resources/blanks/baseCircle_Tiny_Cyan.png b/loader/resources/blanks/baseCircle_Tiny_Cyan.png
index ea69dd86..7fc8e5bd 100644
Binary files a/loader/resources/blanks/baseCircle_Tiny_Cyan.png and b/loader/resources/blanks/baseCircle_Tiny_Cyan.png differ
diff --git a/loader/resources/blanks/baseCircle_Tiny_Gray.png b/loader/resources/blanks/baseCircle_Tiny_Gray.png
index 4d3d9d53..ed3009f5 100644
Binary files a/loader/resources/blanks/baseCircle_Tiny_Gray.png and b/loader/resources/blanks/baseCircle_Tiny_Gray.png differ
diff --git a/loader/resources/blanks/baseCircle_Tiny_Green.png b/loader/resources/blanks/baseCircle_Tiny_Green.png
index 8be15fca..0a8705b9 100644
Binary files a/loader/resources/blanks/baseCircle_Tiny_Green.png and b/loader/resources/blanks/baseCircle_Tiny_Green.png differ
diff --git a/loader/resources/blanks/baseCircle_Tiny_Pink.png b/loader/resources/blanks/baseCircle_Tiny_Pink.png
index afa3f94a..97746afd 100644
Binary files a/loader/resources/blanks/baseCircle_Tiny_Pink.png and b/loader/resources/blanks/baseCircle_Tiny_Pink.png differ
diff --git a/loader/resources/blanks/svgs/baseCircle_Big.svg b/loader/resources/blanks/svgs/baseCircle_Big.svg
new file mode 100644
index 00000000..9081cb98
--- /dev/null
+++ b/loader/resources/blanks/svgs/baseCircle_Big.svg
@@ -0,0 +1,27 @@
+<svg width="216" height="226" viewBox="0 0 216 226" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g filter="url(#filter0_d_732_175)">
+<circle cx="108" cy="113" r="103" fill="white"/>
+</g>
+<circle cx="108" cy="113" r="95" fill="black"/>
+<circle cx="108" cy="113" r="86" fill="url(#paint0_linear_732_175)"/>
+<path d="M108 199C155.496 199 194 160.496 194 113H22C22 160.496 60.5035 199 108 199Z" fill="url(#paint1_linear_732_175)"/>
+<defs>
+<filter id="filter0_d_732_175" x="5" y="10" width="210.1" height="213" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
+<feFlood flood-opacity="0" result="BackgroundImageFix"/>
+<feColorMatrix in="SourceAlpha" type="matrix" 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="4.1" dy="7"/>
+<feComposite in2="hardAlpha" operator="out"/>
+<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.4 0"/>
+<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_732_175"/>
+<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_732_175" result="shape"/>
+</filter>
+<linearGradient id="paint0_linear_732_175" x1="22" y1="199" x2="194" y2="199" gradientUnits="userSpaceOnUse">
+<stop stop-color="#D6FF5A"/>
+<stop offset="1" stop-color="#66CC11"/>
+</linearGradient>
+<linearGradient id="paint1_linear_732_175" x1="22" y1="113.348" x2="194" y2="113.348" gradientUnits="userSpaceOnUse">
+<stop stop-color="#90FF44"/>
+<stop offset="1" stop-color="#449906"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/loader/resources/blanks/svgs/baseCircle_BigAlt.svg b/loader/resources/blanks/svgs/baseCircle_BigAlt.svg
new file mode 100644
index 00000000..c797d7ce
--- /dev/null
+++ b/loader/resources/blanks/svgs/baseCircle_BigAlt.svg
@@ -0,0 +1,27 @@
+<svg width="225" height="243" viewBox="0 0 225 243" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g filter="url(#filter0_d_732_207)">
+<circle cx="112" cy="120" r="102" fill="white"/>
+</g>
+<circle cx="112" cy="120" r="93.5" fill="black"/>
+<circle cx="112" cy="120" r="85.5" fill="url(#paint0_linear_732_207)"/>
+<path d="M112 205.5C159.22 205.5 197.5 167.22 197.5 120H26.5C26.5 167.22 64.7797 205.5 112 205.5Z" fill="url(#paint1_linear_732_207)"/>
+<defs>
+<filter id="filter0_d_732_207" x="10" y="18" width="211" height="218" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
+<feFlood flood-opacity="0" result="BackgroundImageFix"/>
+<feColorMatrix in="SourceAlpha" type="matrix" 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="7" dy="14"/>
+<feComposite in2="hardAlpha" operator="out"/>
+<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.4 0"/>
+<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_732_207"/>
+<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_732_207" result="shape"/>
+</filter>
+<linearGradient id="paint0_linear_732_207" x1="26.5" y1="205.5" x2="197.5" y2="205.5" gradientUnits="userSpaceOnUse">
+<stop stop-color="#D6FF5A"/>
+<stop offset="1" stop-color="#66CC11"/>
+</linearGradient>
+<linearGradient id="paint1_linear_732_207" x1="26.5" y1="120.346" x2="197.5" y2="120.346" gradientUnits="userSpaceOnUse">
+<stop stop-color="#90FF44"/>
+<stop offset="1" stop-color="#449906"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/loader/resources/blanks/svgs/baseCircle_Large.svg b/loader/resources/blanks/svgs/baseCircle_Large.svg
new file mode 100644
index 00000000..d99d20ce
--- /dev/null
+++ b/loader/resources/blanks/svgs/baseCircle_Large.svg
@@ -0,0 +1,27 @@
+<svg width="321" height="333" viewBox="0 0 321 333" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g filter="url(#filter0_d_727_17)">
+<circle cx="160.5" cy="163.5" r="148.5" fill="white"/>
+</g>
+<circle cx="160.5" cy="163.5" r="137" fill="black"/>
+<circle cx="160.5" cy="163.5" r="124" fill="url(#paint0_linear_727_17)"/>
+<path d="M160.5 287.5C228.983 287.5 284.5 231.983 284.5 163.5H36.5C36.5 231.983 92.0167 287.5 160.5 287.5Z" fill="url(#paint1_linear_727_17)"/>
+<defs>
+<filter id="filter0_d_727_17" x="12" y="15" width="304.905" height="310.834" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
+<feFlood flood-opacity="0" result="BackgroundImageFix"/>
+<feColorMatrix in="SourceAlpha" type="matrix" 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="7.90537" dy="13.8344"/>
+<feComposite in2="hardAlpha" operator="out"/>
+<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.4 0"/>
+<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_727_17"/>
+<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_727_17" result="shape"/>
+</filter>
+<linearGradient id="paint0_linear_727_17" x1="36.5" y1="287.5" x2="284.5" y2="287.5" gradientUnits="userSpaceOnUse">
+<stop stop-color="#D6FF5A"/>
+<stop offset="1" stop-color="#66CC11"/>
+</linearGradient>
+<linearGradient id="paint1_linear_727_17" x1="36.5" y1="164.002" x2="284.5" y2="164.002" gradientUnits="userSpaceOnUse">
+<stop stop-color="#90FF44"/>
+<stop offset="1" stop-color="#449906"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/loader/resources/blanks/svgs/baseCircle_Medium.svg b/loader/resources/blanks/svgs/baseCircle_Medium.svg
new file mode 100644
index 00000000..d97126a3
--- /dev/null
+++ b/loader/resources/blanks/svgs/baseCircle_Medium.svg
@@ -0,0 +1,27 @@
+<svg width="187" height="196" viewBox="0 0 187 196" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g filter="url(#filter0_d_910_101)">
+<ellipse cx="93.5" cy="98" rx="87.5" ry="87" fill="white"/>
+</g>
+<ellipse cx="93.5" cy="98" rx="80.5" ry="81" fill="black"/>
+<circle cx="93.5" cy="98" r="73" fill="url(#paint0_linear_910_101)"/>
+<path d="M93.5 171C133.817 171 166.5 138.317 166.5 98H20.5C20.5 138.317 53.1832 171 93.5 171Z" fill="url(#paint1_linear_910_101)"/>
+<defs>
+<filter id="filter0_d_910_101" x="6" y="11" width="178.556" height="182" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
+<feFlood flood-opacity="0" result="BackgroundImageFix"/>
+<feColorMatrix in="SourceAlpha" type="matrix" 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="3.55575" dy="8"/>
+<feComposite in2="hardAlpha" operator="out"/>
+<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.4 0"/>
+<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_910_101"/>
+<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_910_101" result="shape"/>
+</filter>
+<linearGradient id="paint0_linear_910_101" x1="20.5" y1="171" x2="166.5" y2="171" gradientUnits="userSpaceOnUse">
+<stop stop-color="#D6FF5A"/>
+<stop offset="1" stop-color="#66CC11"/>
+</linearGradient>
+<linearGradient id="paint1_linear_910_101" x1="20.5" y1="98.2955" x2="166.5" y2="98.2955" gradientUnits="userSpaceOnUse">
+<stop stop-color="#90FF44"/>
+<stop offset="1" stop-color="#449906"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/loader/resources/blanks/svgs/baseCircle_MediumAlt.svg b/loader/resources/blanks/svgs/baseCircle_MediumAlt.svg
new file mode 100644
index 00000000..704526f8
--- /dev/null
+++ b/loader/resources/blanks/svgs/baseCircle_MediumAlt.svg
@@ -0,0 +1,27 @@
+<svg width="210" height="228" viewBox="0 0 210 228" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g filter="url(#filter0_d_910_124)">
+<ellipse cx="105" cy="113.5" rx="94" ry="93.5" fill="white"/>
+</g>
+<circle cx="105" cy="113.5" r="86" fill="black"/>
+<circle cx="105" cy="113.5" r="78.5" fill="url(#paint0_linear_910_124)"/>
+<path d="M105 192C148.354 192 183.5 156.854 183.5 113.5H26.5C26.5 156.854 61.6456 192 105 192Z" fill="url(#paint1_linear_910_124)"/>
+<defs>
+<filter id="filter0_d_910_124" x="11" y="20" width="195" height="202" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
+<feFlood flood-opacity="0" result="BackgroundImageFix"/>
+<feColorMatrix in="SourceAlpha" type="matrix" 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="7" dy="15"/>
+<feComposite in2="hardAlpha" operator="out"/>
+<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.4 0"/>
+<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_910_124"/>
+<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_910_124" result="shape"/>
+</filter>
+<linearGradient id="paint0_linear_910_124" x1="26.5" y1="192" x2="183.5" y2="192" gradientUnits="userSpaceOnUse">
+<stop stop-color="#D6FF5A"/>
+<stop offset="1" stop-color="#66CC11"/>
+</linearGradient>
+<linearGradient id="paint1_linear_910_124" x1="26.5" y1="113.818" x2="183.5" y2="113.818" gradientUnits="userSpaceOnUse">
+<stop stop-color="#90FF44"/>
+<stop offset="1" stop-color="#449906"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/loader/resources/blanks/svgs/baseCircle_Small.svg b/loader/resources/blanks/svgs/baseCircle_Small.svg
new file mode 100644
index 00000000..9a945e53
--- /dev/null
+++ b/loader/resources/blanks/svgs/baseCircle_Small.svg
@@ -0,0 +1,27 @@
+<svg width="154" height="164" viewBox="0 0 154 164" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g filter="url(#filter0_d_910_130)">
+<circle cx="77" cy="82" r="71.9497" fill="white"/>
+</g>
+<circle cx="77.0001" cy="82" r="66.3614" fill="black"/>
+<circle cx="77" cy="82" r="60" fill="url(#paint0_linear_910_130)"/>
+<path d="M77 142C110.137 142 137 115.137 137 82H17C17 115.137 43.8629 142 77 142Z" fill="url(#paint1_linear_910_130)"/>
+<defs>
+<filter id="filter0_d_910_130" x="5.05029" y="10.0503" width="147.899" height="150.899" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
+<feFlood flood-opacity="0" result="BackgroundImageFix"/>
+<feColorMatrix in="SourceAlpha" type="matrix" 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="4" dy="7"/>
+<feComposite in2="hardAlpha" operator="out"/>
+<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.4 0"/>
+<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_910_130"/>
+<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_910_130" result="shape"/>
+</filter>
+<linearGradient id="paint0_linear_910_130" x1="17" y1="142" x2="137" y2="142" gradientUnits="userSpaceOnUse">
+<stop stop-color="#D6FF5A"/>
+<stop offset="1" stop-color="#66CC11"/>
+</linearGradient>
+<linearGradient id="paint1_linear_910_130" x1="17" y1="82.2429" x2="137" y2="82.2429" gradientUnits="userSpaceOnUse">
+<stop stop-color="#90FF44"/>
+<stop offset="1" stop-color="#449906"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/loader/resources/blanks/svgs/baseCircle_SmallAlt.svg b/loader/resources/blanks/svgs/baseCircle_SmallAlt.svg
new file mode 100644
index 00000000..55702ba1
--- /dev/null
+++ b/loader/resources/blanks/svgs/baseCircle_SmallAlt.svg
@@ -0,0 +1,27 @@
+<svg width="166" height="176" viewBox="0 0 166 176" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g filter="url(#filter0_d_911_204)">
+<ellipse cx="83.0529" cy="87.614" rx="78.1505" ry="77.7348" fill="white"/>
+</g>
+<circle cx="83.0526" cy="87.614" r="71.4994" fill="black"/>
+<circle cx="83" cy="87.614" r="64" fill="url(#paint0_linear_911_204)"/>
+<path d="M83 151.614C118.346 151.614 147 122.96 147 87.614H19C19 122.96 47.6538 151.614 83 151.614Z" fill="url(#paint1_linear_911_204)"/>
+<defs>
+<filter id="filter0_d_911_204" x="4.90234" y="9.87921" width="160.301" height="163.47" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
+<feFlood flood-opacity="0" result="BackgroundImageFix"/>
+<feColorMatrix in="SourceAlpha" type="matrix" 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="4" dy="8"/>
+<feComposite in2="hardAlpha" operator="out"/>
+<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.4 0"/>
+<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_911_204"/>
+<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_911_204" result="shape"/>
+</filter>
+<linearGradient id="paint0_linear_911_204" x1="19" y1="151.614" x2="147" y2="151.614" gradientUnits="userSpaceOnUse">
+<stop stop-color="#D6FF5A"/>
+<stop offset="1" stop-color="#66CC11"/>
+</linearGradient>
+<linearGradient id="paint1_linear_911_204" x1="19" y1="87.8731" x2="147" y2="87.8731" gradientUnits="userSpaceOnUse">
+<stop stop-color="#90FF44"/>
+<stop offset="1" stop-color="#449906"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/loader/resources/blanks/svgs/baseCircle_Tiny.svg b/loader/resources/blanks/svgs/baseCircle_Tiny.svg
new file mode 100644
index 00000000..23950ef4
--- /dev/null
+++ b/loader/resources/blanks/svgs/baseCircle_Tiny.svg
@@ -0,0 +1,27 @@
+<svg width="106" height="116" viewBox="0 0 106 116" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g filter="url(#filter0_d_911_217)">
+<ellipse cx="52.7393" cy="57.7456" rx="48.4141" ry="48.1565" fill="white"/>
+</g>
+<circle cx="52.7395" cy="57.7456" r="44.2937" fill="black"/>
+<circle cx="52.7393" cy="57.7456" r="39.5" fill="url(#paint0_linear_911_217)"/>
+<path d="M52.7393 97.2456C74.5545 97.2456 92.2393 79.5609 92.2393 57.7456H13.2393C13.2393 79.5609 30.924 97.2456 52.7393 97.2456Z" fill="url(#paint1_linear_911_217)"/>
+<defs>
+<filter id="filter0_d_911_217" x="4.3252" y="9.58908" width="100.828" height="103.313" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
+<feFlood flood-opacity="0" result="BackgroundImageFix"/>
+<feColorMatrix in="SourceAlpha" type="matrix" 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="4" dy="7"/>
+<feComposite in2="hardAlpha" operator="out"/>
+<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.4 0"/>
+<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_911_217"/>
+<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_911_217" result="shape"/>
+</filter>
+<linearGradient id="paint0_linear_911_217" x1="13.2393" y1="97.2456" x2="92.2393" y2="97.2456" gradientUnits="userSpaceOnUse">
+<stop stop-color="#D6FF5A"/>
+<stop offset="1" stop-color="#66CC11"/>
+</linearGradient>
+<linearGradient id="paint1_linear_911_217" x1="13.2393" y1="57.9055" x2="92.2393" y2="57.9055" gradientUnits="userSpaceOnUse">
+<stop stop-color="#90FF44"/>
+<stop offset="1" stop-color="#449906"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/loader/resources/blanks/svgs/gen.py b/loader/resources/blanks/svgs/gen.py
new file mode 100644
index 00000000..c67f6908
--- /dev/null
+++ b/loader/resources/blanks/svgs/gen.py
@@ -0,0 +1,42 @@
+import subprocess
+
+# you must run this in the same directory as the script!
+# and also you must have rsvg-convert
+# on ubuntu you can get this with `apt install librsvg2-bin`
+
+sizes = [
+    "Large",
+    "Big",
+    "BigAlt",
+    "Medium",
+    "MediumAlt",
+    "Small",
+    "SmallAlt",
+    "Tiny",
+]
+
+# the green gradient colors we are replacing in the base svgs
+color_from = ["#D6FF5A", "#66CC11", "#90FF44", "#449906"]
+
+# each pair of colors represents a gradient,
+# first pair is for the top part of the button,
+# second pair is for the bottom.
+colors = {
+    "Green": ["#D6FF5A", "#66CC11", "#90FF44", "#449906"],
+    "Pink": ["#FACCFC", "#FF71FF", "#FBB1FF", "#FB58FF"],
+    "Cyan": ["#58FDFA", "#13D5EA", "#44F9F6", "#0B9FBE"],
+    "Blue": ["#1AF1F8", "#0AB4FF", "#23DCFA", "#0077FA"],
+    "Gray": ["#DEDEE0", "#979997", "#CACCCA", "#747472"],
+    # "DarkPurple": ["#41384b", "#2f2937", "#393142", "#221e28"],
+}
+
+for size in sizes:
+    with open(f"baseCircle_{size}.svg", "r") as file:
+        svg_base = file.read()
+    for name, cols in colors.items():
+        svg = svg_base
+        out = f"../baseCircle_{size}_{name.title()}.png"
+        print(f"Generating {out}")
+        for color_orig, color_to in zip(color_from, cols):
+            svg = svg.replace(color_orig, color_to)
+        subprocess.run(["rsvg-convert", "-o", out], input=svg.encode())