memoscan
← all memos

Memo 0xf41d62fb…e7f338 on Ethereum

<!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:#3f427d;--color2:#000;--pos1:0%;--pos2:8.33%;--pos3:25%;--pos4:41.67%;--pos5:58.33%;--pos6:75%;--pos7:91.67%;--color2-1:#c6c6c6;--color2-2:#000;--pos2-1:0%;--pos2-2:12.5%;--pos2-3:37.5%;--pos2-4:62.5%;--pos2-5:87.5%;--color3-1:#000000;--color3-2:#000;--color4-1:#000000;--color4-2:#000;--pos3-1:0%;--pos3-2:50%;--pos3-3:100%;}:root{--color1: #3f427d; --color2-1: #c6c6c6; --color3-1: #000000; --color4-1: #000000;}</style></head><body style="margin:0;background-color:black;width:100vw;height:100vh;overflow:hidden;"><div id="puzzle-container"><div class="gradient-container gradient-right" data-x="0" data-y="0" data-width="0.38" data-height="0.09" style="left: 0px; top: 0px; width: 247.76px; height: 58.68px; --clip-path: polygon(0% 0%, 102% 0%, 117% 99%, 0% 14%); background-size: 495.52px 58.68px; animation-duration: 91s;"></div><div class="gradient-container gradient-down" data-x="0" data-y="0.09" data-width="0.38" data-height="0.91" style="left: 0px; top: 58.68px; width: 247.76px; height: 593.32px; --clip-path: polygon(0% -9%, 117% 0%, 91% 100%, 0% 100%); background-size: 247.76px 1186.64px; animation-duration: 80s;"></div><div class="gradient-container gradient-right" data-x="0.38" data-y="0" data-width="0.5704" data-height="0.5800000000000001" style="left: 247.76px; top: 0px; width: 371.901px; height: 378.16px; --clip-path: polygon(1% 0%, 114% 0%, 92% 103%, 10% 107%); background-size: 743.802px 378.16px; animation-duration: 41s;"></div><div class="gradient-container gradient-down" data-x="0.9504" data-y="0" data-width="0.049600000000000005" data-height="0.5800000000000001" style="left: 619.661px; top: 0px; width: 32.3392px; height: 378.16px; --clip-path: polygon(155% 0%, 100% 0%, 100% 102%, -92% 103%); background-size: 32.3392px 756.32px; animation-duration: 1s;"></div><div class="gradient-container gradient-left" data-x="0.38" data-y="0.5800000000000001" data-width="0.01871408" data-height="0.07979999999999998" style="left: 247.76px; top: 378.16px; width: 12.2016px; height: 52.0296px; --clip-path: polygon(315% 47%, -143% 85%, 486% 87%, 273% 198%); background-size: 24.4032px 52.0296px; animation-duration: 50s;"></div><div class="gradient-container gradient-left" data-x="0.39871407999999997" data-y="0.5800000000000001" data-width="0.24862992000000003" data-height="0.07979999999999998" style="left: 259.962px; top: 378.16px; width: 162.107px; height: 52.0296px; --clip-path: polygon(-18% 85%, 70% -77%, 106% 1%, 29% 87%); background-size: 324.213px 52.0296px; animation-duration: 23s;"></div><div class="gradient-container gradient-down" data-x="0.647344" data-y="0.5800000000000001" data-width="0.005455999999999994" data-height="0.07979999999999998" style="left: 422.068px; top: 378.16px; width: 3.55731px; height: 52.0296px; --clip-path: polygon(-1348% -77%, -11% 23%, 83% 77%, 269% 1%); background-size: 3.55731px 104.059px; animation-duration: 38s;"></div><div class="gradient-container gradient-left" data-x="0.38" data-y="0.6598" data-width="0.2728" data-height="0.3402" style="left: 247.76px; top: 430.19px; width: 177.866px; height: 221.81px; --clip-path: polygon(19% 23%, 100% -5%, 113% 100%, -12% 100%); background-size: 355.731px 221.81px; animation-duration: 52s;"></div><div class="gradient-container gradient-right" data-x="0.6527999999999999" data-y="0.5800000000000001" data-width="0.3472" data-height="0.025199999999999997" style="left: 425.626px; top: 378.16px; width: 226.374px; height: 16.4304px; --clip-path: polygon(-2% 74%, 100% 45%, 100% 85%, -20% 269%); background-size: 452.749px 16.4304px; animation-duration: 88s;"></div><div class="gradient-container gradient-down" data-x="0.6527999999999999" data-y="0.6052000000000001" data-width="0.052079999999999994" data-height="0.22108799999999995" style="left: 425.626px; top: 394.59px; width: 33.9562px; height: 144.149px; --clip-path: polygon(-135% 19%, 205% -13%, 160% 100%, -150% 97%); background-size: 33.9562px 288.299px; animation-duration: 45s;"></div><div class="gradient-container gradient-right" data-x="0.70488" data-y="0.6052000000000001" data-width="0.29512000000000005" data-height="0.22108799999999995" style="left: 459.582px; top: 394.59px; width: 192.418px; height: 144.149px; --clip-path: polygon(19% -13%, 100% -2%, 100% 120%, 11% 100%); background-size: 384.836px 144.149px; animation-duration: 37s;"></div><div class="gradient-container gradient-up" data-x="0.6527999999999999" data-y="0.826288" data-width="0.006944" data-height="0.17371199999999998" style="left: 425.626px; top: 538.74px; width: 4.52749px; height: 113.26px; --clip-path: polygon(-1125% -4%, -651% -27%, 894% 100%, 515% 100%); background-size: 4.52749px 226.52px; animation-duration: 40s;"></div><div class="gradient-container gradient-left" data-x="0.659744" data-y="0.826288" data-width="0.340256" data-height="0.17371199999999998" style="left: 430.153px; top: 538.74px; width: 221.847px; height: 113.26px; --clip-path: polygon(-15% -27%, 100% 26%, 100% 100%, 16% 100%); background-size: 443.694px 113.26px; animation-duration: 96s;"></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>