0xac29c60b…f451sent to0x6a4aa35b…a79e·#23,982,405·view on Etherscan
<!doctype html><html><head><meta charset="utf-8"><title>shards</title><style>
:root {
/* Pattern 1: 7 bands */
--color1: #bb44dd;
--color2: #000;
--pos1: 0%;
--pos2: 8.33%;
--pos3: 25%;
--pos4: 41.67%;
--pos5: 58.33%;
--pos6: 75%;
--pos7: 91.67%;
/* Pattern 2: 5 bands */
--color2-1: #6486f5;
--color2-2: #000;
--pos2-1: 0%;
--pos2-2: 12.5%;
--pos2-3: 37.5%;
--pos2-4: 62.5%;
--pos2-5: 87.5%;
/* Pattern 3: 3 bands */
--color3-1: #ffffff;
--color3-2: #000;
--color4-1: #ff00cc;
--color4-2: #000;
--pos3-1: 0%;
--pos3-2: 50%;
--pos3-3: 100%;
}
body {
background-color: black;
margin: 0;
padding: 0;
width: 100vw;
height: 100vh;
overflow: hidden;
}
.gradient-container {
position: absolute;
overflow: hidden;
transition: all 0.3s ease;
clip-path: var(--clip-path);
/* Emboss effect */
box-shadow: inset 2px 2px 5px rgba(255, 255, 255, 0.4),
inset -2px -2px 5px rgba(0, 0, 0, 0.4);
/* Add more depth with a subtle border */
}
.gradient-up {
background-image: repeating-linear-gradient(
to bottom,
var(--color1) var(--pos1),
var(--color2) var(--pos2),
var(--color1) var(--pos3),
var(--color2) var(--pos4),
var(--color1) var(--pos5),
var(--color2) var(--pos6),
var(--color1) var(--pos7)
);
animation: moveUpwards 5s linear infinite;
}
.gradient-down {
background-image: repeating-linear-gradient(
to bottom,
var(--color2-1) var(--pos2-1),
var(--color2-2) var(--pos2-2),
var(--color2-1) var(--pos2-3),
var(--color2-2) var(--pos2-4),
var(--color2-1) var(--pos2-5)
);
animation: moveDownwards 5s linear infinite;
}
.gradient-left {
background-image: repeating-linear-gradient(
to right,
var(--color3-1) var(--pos3-1),
var(--color3-2) var(--pos3-2),
var(--color3-1) var(--pos3-3)
);
animation: moveLeft 5s linear infinite;
}
.gradient-right {
background-image: repeating-linear-gradient(
to right,
var(--color4-1) var(--pos1),
var(--color4-2) var(--pos2),
var(--color4-1) var(--pos3),
var(--color4-2) var(--pos4),
var(--color4-1) var(--pos5),
var(--color4-2) var(--pos6),
var(--color4-1) var(--pos7)
);
animation: moveRight 5s linear infinite;
}
.strobe {
background-color: #000;
}
@keyframes strobeEffect {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
@keyframes moveUpwards {
0% {
background-position: 0 100%;
}
100% {
background-position: 0 -100%;
}
}
@keyframes moveDownwards {
0% {
background-position: 0 -100%;
}
100% {
background-position: 0 100%;
}
}
@keyframes moveLeft {
0% {
background-position: 100% 0;
}
100% {
background-position: -100% 0;
}
}
@keyframes moveRight {
0% {
background-position: -100% 0;
}
100% {
background-position: 100% 0;
}
}
:root{--color1:#B4ff00;--color2:#000;--pos1:0%;--pos2:8.33%;--pos3:25%;--pos4:41.67%;--pos5:58.33%;--pos6:75%;--pos7:91.67%;--color2-1:#FF00CC;--color2-2:#000;--pos2-1:0%;--pos2-2:12.5%;--pos2-3:37.5%;--pos2-4:62.5%;--pos2-5:87.5%;--color3-1:#FFFFFF;--color3-2:#000;--color4-1:#783f7d;--color4-2:#000;--pos3-1:0%;--pos3-2:50%;--pos3-3:100%;}:root{--color1: #B4ff00; --color2-1: #FF00CC; --color3-1: #FFFFFF; --color4-1: #783f7d;}</style></head><body style="margin:0;background-color:black;width:100vw;height:100vh;overflow:hidden;"><div id="puzzle-container"><div class="gradient-container gradient-left" data-x="0" data-y="0" data-width="0.018799999999999997" data-height="0.18094670999999998" style="left: 0px; top: 0px; width: 7.52px; height: 72.378684px; --clip-path: polygon(0% 0%, 100% 0%, 100% 76%, 0% 112%); background-size: 15.04px 72.378684px; animation-duration: 48s;"></div><div class="gradient-container gradient-left" data-x="0" data-y="0.18094670999999998" data-width="0.018799999999999997" data-height="0.20404629" style="left: 0px; top: 72.378684px; width: 7.52px; height: 81.618516px; --clip-path: polygon(0% 11%, 100% -21%, 100% 130%, 0% 92%); background-size: 15.04px 81.618516px; animation-duration: 54s;"></div><div class="gradient-container gradient-left" data-x="0" data-y="0.384993" data-width="0.018799999999999997" data-height="0.011906999999999996" style="left: 0px; top: 153.9972px; width: 7.52px; height: 4.7628px; --clip-path: polygon(0% -133%, 100% 508%, 100% 204%, 0% -365%); background-size: 15.04px 4.7628px; animation-duration: 3s;"></div><div class="gradient-container gradient-up" data-x="0" data-y="0.3969" data-width="0.018799999999999997" data-height="0.03932544000000001" style="left: 0px; top: 158.76px; width: 7.52px; height: 15.730176px; --clip-path: polygon(0% -141%, 100% 32%, 100% -10%, 0% 156%); background-size: 7.52px 31.460352px; animation-duration: 33s;"></div><div class="gradient-container gradient-up" data-x="0" data-y="0.43622543999999996" data-width="0.018799999999999997" data-height="0.05005056000000001" style="left: 0px; top: 174.490176px; width: 7.52px; height: 20.020224px; --clip-path: polygon(0% 44%, 100% -86%, 100% 11%, 0% 197%); background-size: 7.52px 40.040448px; animation-duration: 94s;"></div><div class="gradient-container gradient-up" data-x="0" data-y="0.486276" data-width="0.009212" data-height="0.0037240000000000073" style="left: 0px; top: 194.5104px; width: 3.6848px; height: 1.4896px; --clip-path: polygon(0% 1310%, 100% -95%, 100% -1316%, 0% 2112%); background-size: 3.6848px 2.9792px; animation-duration: 100s;"></div><div class="gradient-container gradient-left" data-x="0.009212" data-y="0.486276" data-width="0.009588" data-height="0.0037240000000000073" style="left: 3.6848px; top: 194.5104px; width: 3.8352px; height: 1.4896px; --clip-path: polygon(0% -95%, 100% -1194%, 100% -1333%, 0% -1316%); background-size: 7.6704px 1.4896px; animation-duration: 8s;"></div><div class="gradient-container gradient-right" data-x="0.018799999999999997" data-y="0" data-width="0.9212" data-height="0.49" style="left: 7.52px; top: 0px; width: 368.48px; height: 196px; --clip-path: polygon(0% 0%, 101% 0%, 104% 85%, 0% 89%); background-size: 736.96px 196px; animation-duration: 89s;"></div><div class="gradient-container gradient-right" data-x="0" data-y="0.49" data-width="0.94" data-height="0.51" style="left: 0px; top: 196px; width: 376px; height: 204px; --clip-path: polygon(0% 15%, 104% -14%, 93% 100%, 0% 100%); background-size: 752px 204px; animation-duration: 1s;"></div><div class="gradient-container gradient-down" data-x="0.94" data-y="0" data-width="0.06" data-height="0.92" style="left: 376px; top: 0px; width: 24px; height: 368px; --clip-path: polygon(10% 0%, 100% 0%, 100% 106%, 102% 104%); background-size: 24px 736px; animation-duration: 92s;"></div><div class="gradient-container gradient-left" data-x="0.94" data-y="0.92" data-width="0.06" data-height="0.0416" style="left: 376px; top: 368px; width: 24px; height: 16.64px; --clip-path: polygon(102% 94%, 100% 142%, 100% 39%, -128% 287%); background-size: 48px 16.64px; animation-duration: 18s;"></div><div class="gradient-container gradient-left" data-x="0.94" data-y="0.9616" data-width="0.024" data-height="0.009216" style="left: 376px; top: 384.64px; width: 9.6px; height: 3.6864px; --clip-path: polygon(-321% 846%, 389% -714%, 167% -386%, -159% -748%); background-size: 19.2px 3.6864px; animation-duration: 78s;"></div><div class="gradient-container gradient-up" data-x="0.94" data-y="0.9708159999999999" data-width="0.024" data-height="0.029184" style="left: 376px; top: 388.3264px; width: 9.6px; height: 11.6736px; --clip-path: polygon(-159% -268%, 167% -153%, 9% 100%, -268% 100%); background-size: 9.6px 23.3472px; animation-duration: 17s;"></div><div class="gradient-container gradient-right" data-x="0.9640000000000001" data-y="0.9616" data-width="0.036000000000000004" data-height="0.0384" style="left: 385.6px; top: 384.64px; width: 14.4px; height: 15.36px; --clip-path: polygon(193% -171%, 100% -66%, 100% 100%, -60% 100%); background-size: 28.8px 15.36px; animation-duration: 47s;"></div></div><script>function layoutShards(){var vw=window.innerWidth;var vh=window.innerHeight;document.querySelectorAll(".gradient-container").forEach(function(div){var x=parseFloat(div.dataset.x||0);var y=parseFloat(div.dataset.y||0);var w=parseFloat(div.dataset.width||0);var h=parseFloat(div.dataset.height||0);div.style.left=(x*vw)+"px";div.style.top=(y*vh)+"px";div.style.width=(w*vw)+"px";div.style.height=(h*vh)+"px";if(div.classList.contains("gradient-left")||div.classList.contains("gradient-right")){div.style.backgroundSize=(w*vw*2)+"px "+(h*vh)+"px";}else{div.style.backgroundSize=(w*vw)+"px "+(h*vh*2)+"px";}});}window.addEventListener("resize",layoutShards);window.addEventListener("load",layoutShards);layoutShards();</script></body></html>