.holo { --space: 5%; --angle: 133deg; --imgsize: 50%; mix-blend-mode: color-dodge; z-index: 50; background-image: var(--imgurl), repeating-linear-gradient(0deg, rgb(255, 119, 115) calc(var(--space)*1), rgba(255, 237, 95, 1) calc(var(--space)*2), rgba(168, 255, 95, 1) calc(var(--space)*3), rgba(131, 255, 247, 1) calc(var(--space)*4), rgba(120, 148, 255, 1) calc(var(--space)*5), rgb(216, 117, 255) calc(var(--space)*6), rgb(255, 119, 115) calc(var(--space)*7)), repeating-linear-gradient(var(--angle), #0e152e 0%, hsl(180, 10%, 60%) 3.8%, hsl(180, 29%, 66%) 4.5%, hsl(180, 10%, 60%) 5.2%, #0e152e 10%, #0e152e 12%), radial-gradient(farthest-corner circle at var(--mx) var(--my), rgba(0, 0, 0, .1) 12%, rgba(0, 0, 0, .15) 20%, rgba(0, 0, 0, .25) 120%); background-size: var(--imgsize), 400% 400%, 400% 400%, 400%; background-blend-mode: exclusion, hue, hard-light; background-position: center, 0% var(--posy), var(--posx) var(--posy), var(--posx) var(--posy); filter: brightness(calc((var(--hyp)*0.1) + 0.5)) contrast(2) saturate(1.5); } .holo::after { content: ""; position: absolute; inset: 0; z-index: 50; background-image: var(--imgurl), repeating-linear-gradient(0deg, rgb(255, 119, 115) calc(var(--space)*1), rgba(255, 237, 95, 1) calc(var(--space)*2), rgba(168, 255, 95, 1) calc(var(--space)*3), rgba(131, 255, 247, 1) calc(var(--space)*4), rgba(120, 148, 255, 1) calc(var(--space)*5), rgb(216, 117, 255) calc(var(--space)*6), rgb(255, 119, 115) calc(var(--space)*7)), repeating-linear-gradient(var(--angle), #0e152e 0%, hsl(180, 10%, 60%) 3.8%, hsl(180, 29%, 66%) 4.5%, hsl(180, 10%, 60%) 5.2%, #0e152e 10%, #0e152e 12%); background-size: var(--imgsize), 400% 400%, 400% 400%; /* Made both dimensions equal */ background-position: center, 0% var(--posy), calc(var(--posx) * -1) calc(var(--posy) * -1); background-blend-mode: exclusion, hue, hard-light; mix-blend-mode: exclusion; filter: brightness(calc((var(--hyp)*0.1) + .8)) contrast(1.6) saturate(1.4); } @layer base { :root { --background: 0 0% 100%; --foreground: 0 0% 3.9%; --card: 0 0% 100%; --card-foreground: 0 0% 3.9%; --popover: 0 0% 100%; --popover-foreground: 0 0% 3.9%; --primary: 0 0% 9%; --primary-foreground: 0 0% 98%; --secondary: 0 0% 96.1%; --secondary-foreground: 0 0% 9%; --muted: 0 0% 96.1%; --muted-foreground: 0 0% 45.1%; --accent: 0 0% 96.1%; --accent-foreground: 0 0% 9%; --destructive: 0 84.2% 60.2%; --destructive-foreground: 0 0% 98%; --border: 0 0% 89.8%; --input: 0 0% 89.8%; --ring: 0 0% 3.9%; --chart-1: 12 76% 61%; --chart-2: 173 58% 39%; --chart-3: 197 37% 24%; --chart-4: 43 74% 66%; --chart-5: 27 87% 67%; --radius: 0.5rem; } .dark { --background: 0 0% 3.9%; --foreground: 0 0% 98%; --card: 0 0% 3.9%; --card-foreground: 0 0% 98%; --popover: 0 0% 3.9%; --popover-foreground: 0 0% 98%; --primary: 0 0% 98%; --primary-foreground: 0 0% 9%; --secondary: 0 0% 14.9%; --secondary-foreground: 0 0% 98%; --muted: 0 0% 14.9%; --muted-foreground: 0 0% 63.9%; --accent: 0 0% 14.9%; --accent-foreground: 0 0% 98%; --destructive: 0 62.8% 30.6%; --destructive-foreground: 0 0% 98%; --border: 0 0% 14.9%; --input: 0 0% 14.9%; --ring: 0 0% 83.1%; --chart-1: 220 70% 50%; --chart-2: 160 60% 45%; --chart-3: 30 80% 55%; --chart-4: 280 65% 60%; --chart-5: 340 75% 55%; } } @layer base { * { @apply border-border; } body { @apply bg-background text-foreground; } }