concoction

Объявление

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » concoction » ХТМЛ и журнал » Тестовое сообщение


Тестовое сообщение

Сообщений 151 страница 180 из 297

151

[html]<style>
img {
  --b: 8px;  /* border thickness*/
  --s: 60px; /* size of the corner*/
  --g: 14px; /* the gap*/
  --c: #EDC951;
 
  padding: calc(var(--b) + var(--g));
  background-image:
    conic-gradient(from  90deg at top    var(--b) left  var(--b),#0000 25%,var(--c) 0),
    conic-gradient(from -90deg at bottom var(--b) right var(--b),#0000 25%,var(--c) 0);
  background-position:
    var(--_p,0%) var(--_p,0%),
    calc(100% - var(--_p,0%)) calc(100% - var(--_p,0%));
  background-size: var(--s) var(--s);
  background-repeat: no-repeat;
  cursor: pointer;
  transition:
    background-position .3s var(--_i,.3s),
    background-size .3s calc(.3s - var(--_i,.3s));
}
img.alt {
  background-image:
    conic-gradient(from 180deg at top    var(--b) right var(--b),#0000 25%,var(--c) 0),
    conic-gradient(from   0deg at bottom var(--b) left  var(--b),#0000 25%,var(--c) 0);
  background-position:
    calc(100% - var(--_p,0%)) var(--_p,0%),
    var(--_p,0%) calc(100% - var(--_p,0%));
}
img:hover {
  background-size: calc(100% - var(--g)) calc(100% - var(--g));
  --_p: calc(var(--g)/2);
  --_i: 0s;
}

</style>

<img src="https://picsum.photos/id/133/200/200" alt="two old cars in front of a garage">
<img src="https://picsum.photos/id/183/200/200" alt="a very old volkswagen van" class="alt" style="--g: 20px;--b:5px;--s: 80px;--c:#6A4A3C;">
[/html]

0

152

[html]
<style>
:root { 
  --purple: rgb(123, 31, 162);
  --violet: rgb(103, 58, 183);
  --pink: rgb(244, 143, 177);
}

@keyframes background-pan {
  from {
    background-position: 0% center;
  }
 
  to {
    background-position: -200% center;
  }
}

@keyframes scale {
  from, to {
    transform: scale(0);
  }
 
  50% {
    transform: scale(1);
  }
}

@keyframes rotate {
  from {
    transform: rotate(0deg);
  }
 
  to {
    transform: rotate(180deg);
  }
}

h1 {
  color: white;
  font-family: "Rubik", sans-serif;
  font-size: clamp(2em, 2vw, 4em);
  font-weight: 400;
  margin: 0px;
  padding: 20px;
  text-align: center;
}

h1 > .magic {
  display: inline-block;
  position: relative;
}

h1 > .magic > .magic-star {
  --size: clamp(20px, 1.5vw, 30px);
 
  animation: scale 700ms ease forwards;
  display: block;
  height: var(--size);
  left: var(--star-left);
  position: absolute;
  top: var(--star-top);
  width: var(--size);
}

h1 > .magic > .magic-star > svg {
  animation: rotate 1000ms linear infinite;
  display: block;
  opacity: 0.7;
}

h1 > .magic > .magic-star > svg > path {
  fill: var(--violet);
}

h1 > .magic > .magic-text {
  animation: background-pan 3s linear infinite;
  background: linear-gradient(
    to right,
    var(--purple),
    var(--violet),
    var(--pink),
    var(--purple)
  );
  background-size: 200%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  white-space: nowrap;
}

/* -- YouTube Link Styles -- */

#source-link {
  top: 60px;
}

#source-link > i {
  color: rgb(94, 106, 210);
}

#yt-link { 
  top: 10px;
}

#yt-link > i {
  color: rgb(239, 83, 80);
}

.meta-link {
  align-items: center;
  backdrop-filter: blur(3px);
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 6px;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.1);
  cursor: pointer; 
  display: inline-flex;
  gap: 5px;
  left: 10px;
  padding: 10px 20px;
  position: fixed;
  text-decoration: none;
  transition: background-color 600ms, border-color 600ms;
  z-index: 10000;
}

.meta-link:hover {
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.meta-link > i, .meta-link > span {
  height: 20px;
  line-height: 20px;
}

.meta-link > span {
  color: white;
  font-family: "Rubik", sans-serif;
  transition: color 600ms;
}
</style>
<script>
let index = 0,
    interval = 1000;

const rand = (min, max) =>
  Math.floor(Math.random() * (max - min + 1)) + min;

const animate = star => {
  star.style.setProperty("--star-left", `${rand(-10, 100)}%`);
  star.style.setProperty("--star-top", `${rand(-40, 80)}%`);

  star.style.animation = "none";
  star.offsetHeight;
  star.style.animation = "";
}

for(const star of document.getElementsByClassName("magic-star")) {
  setTimeout(() => {
    animate(star);
   
    setInterval(() => animate(star), 1000);
  }, index++ * (interval / 3))
}

/* -- ↓↓↓ If you want the sparkle effect to only occur on hover, replace lines 16 and on with this code ↓↓↓ -- */

// let timeouts = [],
//     intervals = [];

// const magic = document.querySelector(".magic");

// magic.onmouseenter = () => {
//   let index = 1;
 
//   for(const star of document.getElementsByClassName("magic-star")) {
//     timeouts.push(setTimeout(() => { 
//       animate(star);
     
//       intervals.push(setInterval(() => animate(star), 1000));
//     }, index++ * 300));
//   };
// }

// magic.onmouseleave = onMouseLeave = () => {
//   for(const t of timeouts) clearTimeout(t); 
//   for(const i of intervals) clearInterval(i);
 
//   timeouts = [];
//   intervals = [];
// }
</script>
<h1>
  Sometimes I'll start a line of code and I
  <span class="magic">
    <span class="magic-star">
      <svg viewBox="0 0 512 512">
      <path d="M512 255.1c0 11.34-7.406 20.86-18.44 23.64l-171.3 42.78l-42.78 171.1C276.7 504.6 267.2 512 255.9 512s-20.84-7.406-23.62-18.44l-42.66-171.2L18.47 279.6C7.406 276.8 0 267.3 0 255.1c0-11.34 7.406-20.83 18.44-23.61l171.2-42.78l42.78-171.1C235.2 7.406 244.7 0 256 0s20.84 7.406 23.62 18.44l42.78 171.2l171.2 42.78C504.6 235.2 512 244.6 512 255.1z" />
      </svg>
    </span>
    <span class="magic-star">
      <svg viewBox="0 0 512 512">
      <path d="M512 255.1c0 11.34-7.406 20.86-18.44 23.64l-171.3 42.78l-42.78 171.1C276.7 504.6 267.2 512 255.9 512s-20.84-7.406-23.62-18.44l-42.66-171.2L18.47 279.6C7.406 276.8 0 267.3 0 255.1c0-11.34 7.406-20.83 18.44-23.61l171.2-42.78l42.78-171.1C235.2 7.406 244.7 0 256 0s20.84 7.406 23.62 18.44l42.78 171.2l171.2 42.78C504.6 235.2 512 244.6 512 255.1z" />
      </svg>
    </span>
    <span class="magic-star">
      <svg viewBox="0 0 512 512">
      <path d="M512 255.1c0 11.34-7.406 20.86-18.44 23.64l-171.3 42.78l-42.78 171.1C276.7 504.6 267.2 512 255.9 512s-20.84-7.406-23.62-18.44l-42.66-171.2L18.47 279.6C7.406 276.8 0 267.3 0 255.1c0-11.34 7.406-20.83 18.44-23.61l171.2-42.78l42.78-171.1C235.2 7.406 244.7 0 256 0s20.84 7.406 23.62 18.44l42.78 171.2l171.2 42.78C504.6 235.2 512 244.6 512 255.1z" />
      </svg>
    </span>
    <span class="magic-text">don't even know</span>
  </span>
  where it's going.
</h1>

<a id="source-link" class="meta-link" href="https://linear.app/readme" target="_blank">
  <i class="fa-solid fa-link"></i>
  <span class="roboto-mono">Source</span>
</a>

<a id="yt-link" class="meta-link" href="https://youtu.be/yu0Cm4BqQv0" target="_blank">
  <i class="fa-brands fa-youtube"></i>
  <span>4 min tutorial</span>
</a>
[/html]

0

153

[html]
<style>
/* ---- reset ---- */
.github {
  bottom: 10px;
  right: 10px;
  position: fixed;
  border-radius: 10px;
  background: #fff;
  padding: 0 12px 6px 12px;
  border: 1px solid #000;
}

.github a:hover,
.github a:link,
.github a:visited,
.github a:active {
  color: #000;
  text-decoration: none;
}

.github img {
  height: 30px;
}

.github #gh-project {
  font-size: 20px;
  padding-left: 5px;
  font-weight: bold;
  vertical-align: bottom;
}

</style>
<script>
tsParticles.load({
  particles: {
    number: {
      value: 80,
      density: {
        enable: true,
        area: 800
      }
    },
    color: {
      value: ["#2EB67D", "#ECB22E", "#E01E5B", "#36C5F0"]
    },
    shape: {
      type: "circle"
    },
    opacity: {
      value: 1
    },
    size: {
      value: { min: 1, max: 8 }
    },
    links: {
      enable: true,
      distance: 150,
      color: "#808080",
      opacity: 0.4,
      width: 1
    },
    move: {
      enable: true,
      speed: 5,
      direction: "none",
      random: false,
      straight: false,
      outModes: "out"
    }
  },
  interactivity: {
    events: {
      onHover: {
        enable: true,
        mode: "grab"
      },
      onClick: {
        enable: true,
        mode: "push"
      }
    },
    modes: {
      grab: {
        distance: 140,
        links: {
          opacity: 1
        }
      },
      push: {
        quantity: 4
      }
    }
  }
});

</script>
<!-- tsParticles container -->
<div id="tsparticles"></div>
<!-- https://github.com/matteobruni/tsparticles -->
<div class="github">
  <a class="btn btn-link" href="https://github.com/matteobruni/tsparticles" title="Find more info on GitHub">
    <img class="img-fluid" id="gh-mark" src="https://particles.js.org/images/GitHub-Mark-120px-plus.png" alt="">
    <span id="gh-project">tsParticles</span>
  </a>
  <div>
    <a class="github-button" href="https://github.com/matteobruni/tsparticles" data-icon="octicon-star" aria-label="Star matteobruni/tsparticles on GitHub">Star</a>
    <a class="github-button" href="https://github.com/matteobruni/tsparticles/fork" data-icon="octicon-repo-forked" aria-label="Fork matteobruni/tsparticles on GitHub">Fork</a>
  </div>
</div>
<script async="" defer="" src="https://buttons.github.io/buttons.js"></script>
[/html]

0

154

Код:
<!-- Убрать название Доп.Полей -->
<script type="text/javascript">
var A=[1,2,3]
$(".post .post-author li").each(function (){
for(var i in A){if($(this).hasClass("pa-fld"+A[i])){
$(this).html($(this).html().replace(/^[^:]*:/,''));}};});
</script>

0

155

[html]<script>
const getRandom = (min, max) => Math.floor(Math.random()*(max-min+1)+min);

const square= document.querySelector('#square');
setInterval(() => {
   square.style.left= getRandom(0, 300 - 200)+'px'; // 👈🏼 Horizontally
   square.style.top = getRandom(0, 300 - 200)+'px'; // 👈🏼 Vertically
   
}, 500); // every 1/2 second
</script>
<style>
#space {
  width: 300px;
  height: 300px;
  background-color: #eee
}
#square {

width: 200px;
height:200px;
position: relative;
background-color: #8e4435
}
</style>
<div id="space">
  <div id="square">

   </div>

</div>[/html]

0

156

[html]
<style>
body {
  margin: 0 auto;
  width: 100%;
  text-align: center;
}
button {
  margin: 0 auto;
  width: 200px;
  height: 3em;
  //border: 1px solid lightgray;
  //border-radius: 5px;
  background-image: linear-gradient (to bottom,
    white 10%,
    lightgray 15%,
    gray 85%,
    black 100%);
}
#response {
   //border: 1px solid lightgray;
    margin: 0 auto;
  line-height: 3em;
  color: orange;
  font-family: sans-serif;
  font-size: 2em;
}
</style>
<script>
function randomAlerts() {
    var alerts = new Array (
    "Nice one!",
    "I bet it's fancy!",
    "Whazzit, whosa! Wowza!",
    "That is a neat ride!",
    "Live long and prosper.");
   
    i = Math.floor(Math.random()*alerts.length);
    var div = document.getElementById('response');
    div.innerText = alerts[i];
}
</script>
<button onClick="randomAlerts();">Click Me</button>
<div id="response"></div>
[/html]





0

157

[html]
<style>
* {
  margin: 0;
padding: 0;
}

html,
body {
height: 100%;
overflow: hidden;
}

html {
background-color: #222;
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAGklEQVQIW2NkYGD4D8SMQAwGcAY2AbBKDBUAVuYCBQPd34sAAAAASUVORK5CYII=);
background-repeat: repeat;
}

h1,
h2 {
font-size: 24px;
}

p {
margin: 10px 0 10px 0;
font-size: 16px;
line-height: 1.32;
}

a {
color: #7aa76d;
text-decoration: none;

-webkit-transition: 0.15s color ease;
   -moz-transition: 0.15s color ease;
    -ms-transition: 0.15s color ease;
     -o-transition: 0.15s color ease;
        transition: 0.15s color ease;
}
a:hover {
    color: #91cd85;
}

small {
display: block;
margin-top: 15px;
padding-top: 15px;
color: #333;
font-size: 0.85em;
border-top: 1px dashed #ccc;

-webkit-text-size-adjust: none;
}

button {
border: 0px;
padding: 8px 10px;
margin: 5px 0px;
border-radius: 1px;
  outline: 0;

cursor: pointer;
color: #fff;
background: #7aa76d;
font-size: 15px;

-webkit-transition: 0.15s background ease;
   -moz-transition: 0.15s background ease;
    -ms-transition: 0.15s background ease;
     -o-transition: 0.15s background ease;
        transition: 0.15s background ease;
}
button:hover {
    background: #91cd85;
}
button:active {
    background: #60895a;
}
button+button {
    margin-left: 5px;
}

.sharing {
margin-top: 50px;
}

body {
background: #fff;

font-family: 'Lato', Helvetica, sans-serif;
font-size: 16px;
color: #222;
}
.avgrund-active body {
    -webkit-transform: scale( 0.9 );
       -moz-transform: scale( 0.9 );
        -ms-transform: scale( 0.9 );
         -o-transform: scale( 0.9 );
            transform: scale( 0.9 );
}

.avgrund-cover {
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 1;
visibility: hidden;
opacity: 0;
background: rgba( 0, 0, 0, 0.5 );
}
.avgrund-active .avgrund-cover {
    visibility: visible;
    opacity: 1;
}

.avgrund-contents {
position: relative;
padding: 20px;
max-width: 400px;
height: 100%;
margin: auto;
}
.avgrund-active .avgrund-contents {
    -webkit-filter: blur(2px);
       -moz-filter: blur(2px);
        -ms-filter: blur(2px);
         -o-filter: blur(2px);
            filter: blur(2px);
}
.no-blur.avgrund-active .avgrund-contents {
    -webkit-filter: none;
       -moz-filter: none;
        -ms-filter: none;
         -o-filter: none;
            filter: none;
}

.avgrund-popup {
position: absolute;
width: 340px;
height: 130px;
left: 50%;
top: 50%;
margin: -130px 0 0 -190px;
visibility: hidden;
opacity: 0;
z-index: 2;
padding: 20px;

background: white;
box-shadow: 0px 0px 20px rgba( 0, 0, 0, 0.6 );
border-radius: 3px;

-webkit-transform: scale( 0.8 );
   -moz-transform: scale( 0.8 );
    -ms-transform: scale( 0.8 );
     -o-transform: scale( 0.8 );
        transform: scale( 0.8 );
}
.avgrund-active .avgrund-popup {
    visibility: visible;
    opacity: 1;

    -webkit-transform: scale( 1.1 );
       -moz-transform: scale( 1.1 );
        -ms-transform: scale( 1.1 );
         -o-transform: scale( 1.1 );
            transform: scale( 1.1 );
}
.avgrund-popup.stack {
    -webkit-transform: scale( 1.5 );
       -moz-transform: scale( 1.5 );
        -ms-transform: scale( 1.5 );
         -o-transform: scale( 1.5 );
            transform: scale( 1.5 );
}
.avgrund-active .avgrund-popup.stack {
    -webkit-transform: scale( 1.1 );
       -moz-transform: scale( 1.1 );
        -ms-transform: scale( 1.1 );
         -o-transform: scale( 1.1 );
            transform: scale( 1.1 );
}

.avgrund-ready body,
.avgrund-ready .avgrund-contents,
.avgrund-ready .avgrund-popup,
.avgrund-ready .avgrund-cover {
-webkit-transform-origin: 50% 50%;
   -moz-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
     -o-transform-origin: 50% 50%;
        transform-origin: 50% 50%;

-webkit-transition: 0.3s all cubic-bezier(0.250, 0.460, 0.450, 0.940);
   -moz-transition: 0.3s all cubic-bezier(0.250, 0.460, 0.450, 0.940);
    -ms-transition: 0.3s all cubic-bezier(0.250, 0.460, 0.450, 0.940);
     -o-transition: 0.3s all cubic-bezier(0.250, 0.460, 0.450, 0.940);
        transition: 0.3s all cubic-bezier(0.250, 0.460, 0.450, 0.940);
}
.avgrund-ready .avgrund-popup.no-transition {
-webkit-transition: none;
   -moz-transition: none;
    -ms-transition: none;
     -o-transition: none;
        transition: none;
}
</style>
<script>
(function(){

  var container = document.documentElement,
    popup = document.querySelector( '.avgrund-popup' ),
    cover = document.querySelector( '.avgrund-cover' ),
    currentState = null;

  addClass( container, 'avgrund-ready' );

// Deactivate on ESC
function onDocumentKeyUp( event ) {
    if( event.keyCode === 27 ) {
    deactivate();
    }
}

// Deactivate on click outside
function onDocumentClick( event ) {
    if( event.target === cover ) {
    deactivate();
    }
}

function activate( state ) {
    document.addEventListener( 'keyup', onDocumentKeyUp, false );
    document.addEventListener( 'click', onDocumentClick, false );

    removeClass( popup, currentState );
    addClass( popup, 'no-transition' );
    addClass( popup, state );

    setTimeout( function() {
    removeClass( popup, 'no-transition' );
    addClass( container, 'avgrund-active' );
    }, 0 );

    currentState = state;
}

function deactivate() {
    document.removeEventListener( 'keyup', onDocumentKeyUp, false );
    document.removeEventListener( 'click', onDocumentClick, false );

    removeClass( container, 'avgrund-active' );
}

function disableBlur() {
    addClass( document.documentElement, 'no-blur' );
}

function addClass( element, name ) {
    element.className = element.className.replace( /\s+$/gi, '' ) + ' ' + name;
}

function removeClass( element, name ) {
    element.className = element.className.replace( name, '' );
}

window.avgrund = {
    activate: activate,
    deactivate: deactivate,
    disableBlur: disableBlur
}

})();
</script>
<article class="avgrund-contents">
  <h1>Avgrund</h1>
  <p>
    A modal concept with a visible level of depth between the page and modal layers. Click a button below to give it a try.
</p>
<button onclick="avgrund.activate( 'stack' );">Stack it</button>
<button onclick="avgrund.activate();">Grow it</button>
<p>
    Uses CSS transforms to scale components and CSS filters to blur the page.
</p>
<p>
    <em>Avgrund</em> is Swedish for abyss.
</p>
</article>

<div class="avgrund-cover"></div>

<aside class="avgrund-popup">
<h2>That's all, folks</h2>
<p>
    You can hit ESC or click outside to close the modal. Give it a go to see the reverse transition.
</p>
<button onclick="avgrund.deactivate();">Close</button>
</aside>
[/html]

0

158

[html]<style>
.me {
  background-image: url(https://i.pinimg.com/236x/25/16/b6/2516 … d9bd22.jpg);
  background-size: cover;
}
.container {
  align-items: center;
  /*       background: #F1EEF1;
  border: 1px solid #D2D1D4;
  */      display: flex;
  height: 360px;
  justify-content: center;
  width: 360px;
}
.email {
  background: #DEDBDF;
  border-radius: 16px;
  height: 32px;
  overflow: hidden;
  position: relative;
  width: 162px;
  -webkit-tap-highlight-color: transparent;
  transition: width 300ms cubic-bezier(0.4, 0.0, 0.2, 1),
    height 300ms cubic-bezier(0.4, 0.0, 0.2, 1),
    box-shadow 300ms cubic-bezier(0.4, 0.0, 0.2, 1),
    border-radius 300ms cubic-bezier(0.4, 0.0, 0.2, 1);
}
.email:not(.expand) {
  cursor: pointer;
}
.email:not(.expand):hover {
  background: #C2C0C2;
}
.from {
  position: absolute;
  transition: opacity 200ms 100ms cubic-bezier(0.0, 0.0, 0.2, 1);
}
.from-contents {
  display: flex;
  flex-direction: row;
  transform-origin: 0 0;
  transition: transform 300ms cubic-bezier(0.4, 0.0, 0.2, 1);
}
.to {
  opacity: 0;
  position: absolute;
  transition: opacity 100ms cubic-bezier(0.4, 0.0, 1, 1);
}
.to-contents {
  transform: scale(.55);
  transform-origin: 0 0;
  transition: transform 300ms cubic-bezier(0.4, 0.0, 0.2, 1);
}
.avatar {
  border-radius: 12px;
  height: 24px;
  left: 6px;
  position: relative;
  top: 4px;
  width: 24px;
}
.name {
  font-size: 14px;
  line-height: 32px;
  margin-left: 10px;
}
.top {
  background: #6422EB;
  display: flex;
  flex-direction: row;
  height: 70px;
  transition: height 300ms cubic-bezier(0.4, 0.0, 0.2, 1);
  width: 300px;
}
.avatar-large {
  border-radius: 21px;
  height: 42px;
  margin-left: 12px;
  position: relative;
  top: 14px;
  width: 42px;
}
.name-large {
  color: #efd8ef;
  font-size: 16px;
  line-height: 70px;
  margin-left: 20px;
}
.x-touch {
  align-items: center;
  align-self: center;
  cursor: pointer;
  display: flex;
  height: 50px;
  justify-content: center;
  margin-left: auto;
  width: 50px;
}
.x {
  background: #BA87F9;
  border-radius: 10px;
  height: 20px;
  position: relative;
  width: 20px;
}
.x-touch:hover .x {
  background: #CB9AFB;
}
.line1 {
  background: #6422EB;
  height: 12px;
  position: absolute;
  transform: translateX(9px) translateY(4px) rotate(45deg);
  width: 2px;
}
.line2 {
  background: #6422EB;
  height: 12px;
  position: absolute;
  transform: translateX(9px) translateY(4px) rotate(-45deg);
  width: 2px;
}
.bottom {
  background: #FFF;
  color:  #444247;
  font-size: 14px;
  height: 200px;
  padding-top: 5px;
  width: 300px;
}
.row {
  align-items: center;
  display: flex;
  flex-direction: row;
  height: 60px;
}
.twitter {
  margin-left: 16px;
  height: 30px;
  position: relative;
  top: 0px;
  width: 30px;
}
.medium {
  height: 30px;
  margin-left: 16px;
  position: relative;
  width: 30px;
}
.link {
  margin-left: 16px;
}
.link a {
  color:  #444247;
  text-decoration: none;
}
.link a:hover {
  color:  #777579;
}
.email.expand {
  border-radius: 6px;
  box-shadow: 0 10px 20px rgba(0,0,0,0.10), 0 6px 6px rgba(0,0,0,0.16);
  height: 200px;
  width: 300px;
}
.expand .from {
  opacity: 0;
  transition: opacity 100ms cubic-bezier(0.4, 0.0, 1, 1);
}
.expand .from-contents {
  transform: scale(1.91);
}
.expand .to {
  opacity: 1;
  transition: opacity 200ms 100ms cubic-bezier(0.0, 0.0, 0.2, 1);
}
.expand .to-contents {
  transform: scale(1);
}
</style>
<script>

</script>
<div class="container">
  <div class="email" onclick="this.classList.add('expand')">
    <div class="from">
      <div class="from-contents">
        <div class="avatar me"></div>
        <div class="name">Mikael Ainalem</div>
      </div>
    </div>
    <div class="to">
      <div class="to-contents">
        <div class="top">
          <div class="avatar-large me"></div>
          <div class="name-large">Mikael Ainalem</div>
          <div class="x-touch" onclick="document.querySelector('.email').classList.remove('expand');event.stopPropagation();">
            <div class="x">
              <div class="line1"></div>
              <div class="line2"></div>
            </div>
          </div>
        </div>
        <div class="bottom">
          <div class="row">
            <svg class="twitter" viewBox="0 0 300 244.18703">
              <g transform="translate(-539.17946,-568.85777)" id="layer1">
                <path id="path3611" style="fill:#1da1f2;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 633.89823,812.04479 c 112.46038,0 173.95627,-93.16765 173.95627,-173.95625 0,-2.64628 -0.0539,-5.28062 -0.1726,-7.90305 11.93799,-8.63016 22.31446,-19.39999 30.49762,-31.65984 -10.95459,4.86937 -22.74358,8.14741 -35.11071,9.62551 12.62341,-7.56929 22.31446,-19.54304 26.88583,-33.81739 -11.81284,7.00307 -24.89517,12.09297 -38.82383,14.84055 -11.15723,-11.88436 -27.04079,-19.31655 -44.62892,-19.31655 -33.76374,0 -61.14426,27.38052 -61.14426,61.13233 0,4.79784 0.5364,9.46458 1.58538,13.94057 -50.81546,-2.55686 -95.87353,-26.88582 -126.02546,-63.87991 -5.25082,9.03545 -8.27852,19.53111 -8.27852,30.73006 0,21.21186 10.79366,39.93837 27.20766,50.89296 -10.03077,-0.30992 -19.45363,-3.06348 -27.69044,-7.64676 -0.009,0.25652 -0.009,0.50661 -0.009,0.78077 0,29.60957 21.07478,54.3319 49.0513,59.93435 -5.13757,1.40062 -10.54335,2.15158 -16.12196,2.15158 -3.93364,0 -7.76596,-0.38716 -11.49099,-1.1026 7.78383,24.2932 30.35457,41.97073 57.11525,42.46543 -20.92578,16.40207 -47.28712,26.17062 -75.93712,26.17062 -4.92898,0 -9.79834,-0.28036 -14.58427,-0.84634 27.05868,17.34379 59.18936,27.46396 93.72193,27.46396"/>
              </g>
            </svg>
            <div class="link"><a href="https://twitter.com/mikaelainalem">@mikaelainalem</a></div>
          </div>
          <div class="row">
            <svg class="medium" viewBox="0 0 24 24">
              <style type="text/css" id="style2">
                .st0{fill:#3DD87F;}
                .st1{fill:#FFFFFF;}
              </style>
              <g id="Page-1" transform="translate(0,1)">
                <g id="Monogram">
                  <rect id="Rectangle-path" x="0" y="-1" class="st0" width="24" height="24" style="fill:#000000;fill-opacity:1;stroke-width:1.090909"/>
                  <path id="Shape" class="st1" d="m 6.3,7.6 c 0,-0.2 -0.1,-0.4 -0.2,-0.5 l -1.3,-1.7 v -0.2 h 4.3 l 3.3,7.3 2.9,-7.3 h 4.1 v 0.2 l -1.2,1.1 c -0.1,0.1 -0.2,0.2 -0.1,0.3 v 8.3 c 0,0.1 0,0.3 0.1,0.3 l 1.2,1.1 v 0.2 h -5.8 v -0.2 l 1.2,-1.2 c 0.1,-0.1 0.1,-0.2 0.1,-0.3 v -6.6 l -3.3,8.4 h -0.4 l -4,-8.4 v 5.6 c 0,0.2 0,0.5 0.2,0.6 l 1.6,1.9 v 0.2 h -4.4 v -0.2 l 1.5,-1.8 c 0.2,-0.2 0.2,-0.4 0.2,-0.6 z" inkscape:connector-curvature="0" style="fill:#ffffff"/>
                </g>
              </g>
            </svg>
            <div class="link"><a href="https://medium.com/@mikael_ainalem">@mikael_ainalem</a></div>
          </div>
        </div>
      </div>
    </div>
  </div>
</div>

[/html]

0

159

[html]<style>
/* Base styling*/
body {
  background-color: lightgrey;
  max-width: 768px;
  margin: 0 auto;
  padding: 1em 0;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

/* Popover styling */

a {
  text-decoration: none;
}

.popover__title {
  font-size: 24px;
  line-height: 36px;
  text-decoration: none;
  color: rgb(228, 68, 68);
  text-align: center;
  padding: 15px 0;
}

.popover__wrapper {
  position: relative;
  margin-top: 1.5rem;
  display: inline-block;
}
.popover__content {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  left: -150px;
  transform: translate(0, 10px);
  background-color: #bfbfbf;
  padding: 1.5rem;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
  width: auto;
}
.popover__content:before {
  position: absolute;
  z-index: -1;
  content: "";
  right: calc(50% - 10px);
  top: -8px;
  border-style: solid;
  border-width: 0 10px 10px 10px;
  border-color: transparent transparent #bfbfbf transparent;
  transition-duration: 0.3s;
  transition-property: transform;
}
.popover__wrapper:hover .popover__content {
  z-index: 10;
  opacity: 1;
  visibility: visible;
  transform: translate(0, -20px);
  transition: all 0.5s cubic-bezier(0.75, -0.02, 0.2, 0.97);
}
.popover__message {
  text-align: center;
}

</style>
<div class="popover__wrapper">
  <a href="#">
    <h2 class="popover__title">Hover:me</h2>
  </a>
  <div class="popover__content">
    <p class="popover__message">Joseph Francis "Joey" Tribbiani, Jr.</p>
    <img alt="Joseph Francis Joey Tribbiani, Jr." src="https://media.giphy.com/media/11SIBu3s72Co8w/giphy.gif">
  </div>
</div>[/html]

0

160

<!-- Сворачивание до загрузки -->
<style id=tst222>.yelloweye, .book, #toggler, #lights, #replaceobject, #shine, #shine1, #shine2, #shine3, #shine4, #f-top, #fireflyes, #ffly, #togglePreview {display:none!important}</style>
<script>$(document).ready(function(){$("style.#tst222").replaceWith("")})</script>
<!-- Конец -->

0

161

[html]
<style>
.heading-design {
    cursor: pointer;
    background-color: #fff;
    border-bottom: solid 1px #212121;
    padding: 2rem;
    transition: background-color 0.5s ease;
}

.heading-design:hover {
    background-color: #ff9800;
    border-bottom: solid 1px #ff9800;
}

.heading-prog {
    cursor: pointer;
    background-color: #fff;
    border-bottom: solid 1px #212121;
    padding: 2rem;
    transition: background-color 0.5s ease;
    transition: color 0.5s ease;
}

.heading-prog:hover {
    color: #eeeeee;
    background-color: #212121;
    border-bottom: solid 1px #212121;
}

.heading-music {
    cursor: pointer;
    background-color: #fff;
    border-bottom: solid 1px #212121;
    padding: 2rem;
    transition: background-color 0.5s ease;
}

.heading-music:hover {
    background-color: #ff6f61;
    border-bottom: solid 1px #ff6f61;
}

.tab-content {
    display: none;
}

.left-content {
    padding-left: 4rem;
    padding-top: 4rem;
    font-size: 3.75rem;
}

.right-content {
    padding-left: 4rem;
    padding-top: 4rem;
}

.img-custwidth {
    padding-top: 4rem;
    width: 512px;
}

</style>
<script>
// Author: Nicholas Fazzolari
// Basic tab switching code in pure ES6

// TODO:   Add default tab open feature with an on off switch
//         Make the event listener assignments general

function openTab(tabName) {
    let i;
    let tabContent;
   
    tabContent = document.getElementsByClassName("tab-content");
   
    for (i = 0; i < tabContent.length; i++) {
        tabContent[i].style.display = "none";
    }
   
    document.getElementById(tabName).style.display = "flex";
}

// This needs to DRY'ed up so it can be used with a CMS
let designLinkEl = document.getElementById("DesignLink");
let progLinkEl = document.getElementById("ProgLink");
let musicLinkEl = document.getElementById("SupportLink");

designLinkEl.addEventListener("click", function(){openTab("Design")}, false);
progLinkEl.addEventListener("click", function(){openTab("Programming")}, false);
musicLinkEl.addEventListener("click", function(){openTab("Support")}, false);
</script>
<div class="container-fluid">
    <div class="row">
        <div id="DesignLink" class="col-sm-4 heading-design">
            <h5 class="mb-0">01.</h5>
            <h1 class="mb-0"><strong>Design</strong></h1>
        </div>
        <div id="ProgLink" class="col-sm-4 heading-prog">
            <h5 class="mb-0">02.</h5>
            <h1 class="mb-0"><strong>Programming</strong></h1>
        </div>
        <div id="SupportLink" class="col-sm-4 heading-music">
            <h5 class="mb-0">03.</h5>
            <h1 class="mb-0"><strong>Support</strong></h1>
        </div>
    </div>
</div>

<div id="Design" class="container-fluid tab-content">
    <div class="container-fluid">
        <div class="row">
            <div class="col-sm-6 left-content">
                <strong>Design is Human.</strong>
                <img src="http://nickfazz.me/codepen_assets/vectors/head_vector_styled.svg" alt="Line art of human head." class="imf-fluid img-custwidth">
            </div>
        <div class="col-sm-6 right-content">
            <h3><strong>Design is human. Design is making ideas real.</strong></h3>
            <p>Human centered design is at the core of product development. Empathetic communication with the client is a key part of the development process from the beginning until the product launch and support phases.</p>
            <p>Design thinking is iterative, and cyclic. Combining raw creative out with theoretical structure is the best way to deliver high quality products to clients. Listening and guiding are core communication principles between the developer and client.</p>
            <p>When developing new web sites and applications our job as a development studio is to meet client needs through empathetic research and interaction. Listening to the client is key when solving in an unfamiliar domain of expertise. Guiding must be approached as a craft of finess to bridge the gulf between possible and not possible.</p>
        </div>
    </div>
        <div class="row">
        </div>
    </div>
</div>
<div id="Programming" class="container-fluid tab-content">
    <div class="container-fluid">
        <div class="row">
            <div class="col-sm-6 left-content">
                <strong>Programming Delivers Solutions.</strong><br>
                <img src="http://nickfazz.me/codepen_assets/vectors/code_art.svg" alt="Binary digits and line art." class="imf-fluid img-custwidth">
            </div>
            <div class="col-sm-6 right-content">
                <h3><strong>Programming Delivers Solutions. Engineering and Development Thrive on Strong Design.</strong></h3>
            <p>Using current software development technologies and proven best practices in software engineering, coupled with a formal background in computer science drives and delivers high quality web development solutions.</p>
            <p>Adaptive development methods ensure cross-device and cross-platform consistent software solutions.</p>
            <p>Understanding client levels of technical knowledge is important. We understand that some clients require to be more involved in the development process than others. Transparency is a key factor which addresses security and technical issues across domains. When working with clients from the science and engineering field open communication and input regarding technology is welcome. We are always open to learning and compormise.</p>
            </div>
        </div>
    </div>
</div>
<div id="Support" class="container-fluid tab-content">
    <div class="container-fluid">
        <div class="row">
            <div class="col-sm-6 left-content">
                <strong>Support is Trust.</strong>
                <img src="http://nickfazz.me/codepen_assets/vectors/support_vector.svg" alt="Line art of key." class="imf-fluid img-custwidth">
            </div>
            <div class="col-sm-6 right-content">
                <h3><strong>Support is Trust. Product Life Cycle Beyond Development.</strong></h3>
            <p>Client support is rooted in the mindset of client empathy and need. Delivering emerging technologies to strengthen the product and both user and client experience are integral to our support role.</p>
            <p>Security features are updated to protect against current threats to protect the business, technology, and users. Best practices are communicated and implemented with the client and user in mind.</p>
            <p>Support is an ongoing role which extends the development period of the software. Scale, security and usability are key support concepts which we deliver in our product support role.</p>
            </div>
        </div>
    </div>
</div>
[/html]

0

162

[html]<style>
$Mahogany : #620808;
$AppleBlossom : #a53f3f;
$GoldenSand : #f4ce74;
$EggWhite : #ffe9c1;
$OrangeRoughy : #d5441c;
$mainfont : "JF Flat Regular";

@font-face {
    font-family: "JF Flat Regular";
    src: url('https://f9ir.github.io/acc/acc/font/JF-Flat-regular.eot');
    src: url('https://f9ir.github.io/acc/acc/font/JF-Flat-regular.eot?#iefix') format('embedded-opentype'),
    url('https://f9ir.github.io/acc/acc/font/JF-Flat-regular.svg#JF Flat Regular') format('svg'),
    url('https://f9ir.github.io/acc/acc/font/JF-Flat-regular.woff') format('woff'),
    url('https://f9ir.github.io/acc/acc/font/JF-Flat-regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

body{
  background: #f6704b;
}

*{
  margin: 0;
  padding: 0;
}
.accordion{
    margin:50px auto;
    width: 380px;
    background: #ccc;
    cursor: pointer;
    .item{
        height: 100px;
        h3{
            display: inline-block;
            vertical-align: middle;
            height: 100%;
            padding-left: 50px;
            font-family: $mainfont;
            font-size: 20px;
            font-weight: 400;
        }
        img{
            padding-left: 15px;
            width: 30px;
            vertical-align: middle;
        }
        h3:before{
            content: "";
            display: inline-block;
            vertical-align: middle;
            height: 100%;
        }
    }
    .item:first-of-type{
        background: $Mahogany;
        color: $GoldenSand;
    }
    .item:nth-of-type(2){
        background: $AppleBlossom;
        color: $EggWhite;
    }
    .item:nth-of-type(3){
        background: $GoldenSand;
        color: $Mahogany;
    }
    .item:nth-of-type(4){
        background: $EggWhite;
        color: $OrangeRoughy;
    }
    .item:last-of-type{
        background: $OrangeRoughy;
        color: $EggWhite;
    }
    p{
        font-family: $mainfont;
        font-size: 18px;
        font-weight: 400;
        padding: 15px;
        display: none;
        box-shadow: inset 0 3px 7px rgba(#000, 0.2);
    }
    p:first-of-type{
        background: $Mahogany;
        color: $GoldenSand;
    }
    p:nth-of-type(2){
        background: $AppleBlossom;
        color: $EggWhite;
    }
    p:nth-of-type(3){
        background: $GoldenSand;
        color: $Mahogany;
       
    }
    p:nth-of-type(4){
        background: $EggWhite;
        color: $OrangeRoughy;
    }
    p:last-of-type{
        background: $OrangeRoughy;
        color: $EggWhite;
    }
}
</style>
<script>
(function ($) {
    'use strict';
    $('.item').on("click", function () {
        $(this).next().slideToggle(100);
        $('p').not($(this).next()).slideUp('fast');
    });
}(jQuery));
</script>
   <section class="accordion">
       <div class="item">
            <img src="https://f9ir.github.io/acc/acc/img/Location-Pin.png" alt="">
            <h3>Location</h3>
       </div>
            <p>t is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. The point of using Lorem Ipsum is that it has a more-or-less normal distribution of letters, as opposed to using</p>
        <div class="item">
            <img src="https://f9ir.github.io/acc/acc/img/Headphones.png" alt="">
            <h3>Music</h3>
       </div>
        <p>t is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. The point of using Lorem Ipsum is that it has a more-or-less normal distribution of letters, as opposed to using</p>
        <div class="item">
            <img src="https://f9ir.github.io/acc/acc/img/Lightbulb.png" alt="">
            <h3>Notes</h3>
       </div>
            <p>t is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. The point of using Lorem Ipsum is that it has a more-or-less normal distribution of letters, as opposed to using</p>
        <div class="item">
            <img src="https://f9ir.github.io/acc/acc/img/Bookmarks.png" alt="">
            <h3>Books</h3>
       </div>
            <p>t is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. The point of using Lorem Ipsum is that it has a more-or-less normal distribution of letters, as opposed to using</p>
        <div class="item">
            <img src="https://f9ir.github.io/acc/acc/img/Lightning-Bolt.png" alt="">
            <h3>Tendances</h3>
       </div>
           <p>t is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. The point of using Lorem Ipsum is that it has a more-or-less normal distribution of letters, as opposed to using</p>
   </section>
[/html]

0

163

[html]
<style>
#myProgress {
  width: 420px;
   background-color: #d9d9f2;
  cursor: pointer;
  border-radius: 10px;
}

#myBar {
  width: 0%;
  height: 5px;
  background-color: #ffc266;
  border-radius: 10px;
}

.logo {
  fill: red;
}

.btn-action{
  cursor: pointer;
  padding-top: 10px;
  width: 30px;
}

.btn-ctn, .infos-ctn{
  display: flex;
  align-items: center;
  justify-content: center;
}
.infos-ctn{
padding-top: 20px;
}

.btn-ctn > div {
padding: 5px;
margin-top: 18px;
margin-bottom: 18px;
}

.infos-ctn > div {
margin-bottom: 8px;
color: #ffc266;
}

.first-btn{
  margin-left: 3px;
}

.duration{
  margin-left: 10px;
}

.title{
  margin-left: 10px;
  width: 210px;
  text-align: center;
}

.player-ctn{
  border-radius: 15px;
  width: 420px;
  padding: 10px;
  background-color: #373737;
  margin:auto;
  margin-top: 5px;
}

.playlist-track-ctn{
  display: flex;
  background-color: #464646;
  margin-top: 3px;
  border-radius: 5px;
  cursor: pointer;
}
.playlist-track-ctn:last-child{
  /*border: 1px solid #ffc266; */
}

.playlist-track-ctn > div{
  margin:10px;
}
.playlist-info-track{
  width: 80%;
}
.playlist-info-track,.playlist-duration{
  padding-top: 7px;
  padding-bottom: 7px;
  color: #e9cc95;
  font-size: 14px;
  pointer-events: none;
}
.playlist-ctn{
   padding-bottom: 20px;
}
.active-track{
  background: #4d4d4d;
  color: #ffc266 !important;
  font-weight: bold;
 
}

.active-track > .playlist-info-track,.active-track >.playlist-duration,.active-track > .playlist-btn-play{
  color: #ffc266 !important;
}

.playlist-btn-play{
  pointer-events: none;
  padding-top: 5px;
  padding-bottom: 5px;
}
.fas{
  color: #ffc266;
  font-size: 20px;
}
</style>
<script>
  function createTrackItem(index,name,duration){
    var trackItem = document.createElement('div');
    trackItem.setAttribute("class", "playlist-track-ctn");
    trackItem.setAttribute("id", "ptc-"+index);
    trackItem.setAttribute("data-index", index);
    document.querySelector(".playlist-ctn").appendChild(trackItem);

    var playBtnItem = document.createElement('div');
    playBtnItem.setAttribute("class", "playlist-btn-play");
    playBtnItem.setAttribute("id", "pbp-"+index);
    document.querySelector("#ptc-"+index).appendChild(playBtnItem);

    var btnImg = document.createElement('i');
    btnImg.setAttribute("class", "fas fa-play");
    btnImg.setAttribute("height", "40");
    btnImg.setAttribute("width", "40");
    btnImg.setAttribute("id", "p-img-"+index);
    document.querySelector("#pbp-"+index).appendChild(btnImg);

    var trackInfoItem = document.createElement('div');
    trackInfoItem.setAttribute("class", "playlist-info-track");
    trackInfoItem.innerHTML = name
    document.querySelector("#ptc-"+index).appendChild(trackInfoItem);

    var trackDurationItem = document.createElement('div');
    trackDurationItem.setAttribute("class", "playlist-duration");
    trackDurationItem.innerHTML = duration
    document.querySelector("#ptc-"+index).appendChild(trackDurationItem);
  }

  var listAudio = [
    {
      name:"Artist 1 - audio 1",
      file:"https://www.soundhelix.com/examples/mp3/SoundHelix-Song-10.mp3",
      duration:"08:47"
    },
    {
      name:"Artist 2 - audio 2",
      file:"https://www.soundhelix.com/examples/mp3/SoundHelix-Song-5.mp3",
      duration:"05:53"
    },
    {
      name:"Artist 4 - audio 4",
      file:"https://file-examples.com/wp-content/uploads/2017/11/file_example_MP3_1MG.mp3",
      duration:"07:27"
    },
    {
      name:"Artist 3 - audio 3",
      file:"https://file-examples.com/wp-content/uploads/2017/11/file_example_MP3_1MG.mp3",
      duration:"00:27"
    }
  ]

  for (var i = 0; i < listAudio.length; i++) {
      createTrackItem(i,listAudio[i].name,listAudio[i].duration);
  }
  var indexAudio = 0;

  function loadNewTrack(index){
    var player = document.querySelector('#source-audio')
    player.src = listAudio[index].file
    document.querySelector('.title').innerHTML = listAudio[index].name
    this.currentAudio = document.getElementById("myAudio");
    this.currentAudio.load()
    this.toggleAudio()
    this.updateStylePlaylist(this.indexAudio,index)
    this.indexAudio = index;
  }

  var playListItems = document.querySelectorAll(".playlist-track-ctn");

  for (let i = 0; i < playListItems.length; i++){
    playListItems[i].addEventListener("click", getClickedElement.bind(this));
  }

  function getClickedElement(event) {
    for (let i = 0; i < playListItems.length; i++){
      if(playListItems[i] == event.target){
        var clickedIndex = event.target.getAttribute("data-index")
        if (clickedIndex == this.indexAudio ) { // alert('Same audio');
            this.toggleAudio()
        }else{
            loadNewTrack(clickedIndex);
        }
      }
    }
  }

  document.querySelector('#source-audio').src = listAudio[indexAudio].file
  document.querySelector('.title').innerHTML = listAudio[indexAudio].name

  var currentAudio = document.getElementById("myAudio");

  currentAudio.load()
 
  currentAudio.onloadedmetadata = function() {
        document.getElementsByClassName('duration')[0].innerHTML = this.getMinutes(this.currentAudio.duration)
  }.bind(this);

  var interval1;

  function toggleAudio() {

    if (this.currentAudio.paused) {
      document.querySelector('#icon-play').style.display = 'none';
      document.querySelector('#icon-pause').style.display = 'block';
      document.querySelector('#ptc-'+this.indexAudio).classList.add("active-track");
      this.playToPause(this.indexAudio)
      this.currentAudio.play();
    }else{
      document.querySelector('#icon-play').style.display = 'block';
      document.querySelector('#icon-pause').style.display = 'none';
      this.pauseToPlay(this.indexAudio)
      this.currentAudio.pause();
    }
  }

  function pauseAudio() {
    this.currentAudio.pause();
    clearInterval(interval1);
  }

  var timer = document.getElementsByClassName('timer')[0]

  var barProgress = document.getElementById("myBar");

  var width = 0;

  function onTimeUpdate() {
    var t = this.currentAudio.currentTime
    timer.innerHTML = this.getMinutes(t);
    this.setBarProgress();
    if (this.currentAudio.ended) {
      document.querySelector('#icon-play').style.display = 'block';
      document.querySelector('#icon-pause').style.display = 'none';
      this.pauseToPlay(this.indexAudio)
      if (this.indexAudio < listAudio.length-1) {
          var index = parseInt(this.indexAudio)+1
          this.loadNewTrack(index)
      }
    }
  }

  function setBarProgress(){
    var progress = (this.currentAudio.currentTime/this.currentAudio.duration)*100;
    document.getElementById("myBar").style.width = progress + "%";
  }

  function getMinutes(t){
    var min = parseInt(parseInt(t)/60);
    var sec = parseInt(t%60);
    if (sec < 10) {
      sec = "0"+sec
    }
    if (min < 10) {
      min = "0"+min
    }
    return min+":"+sec
  }

  var progressbar = document.querySelector('#myProgress')
  progressbar.addEventListener("click", seek.bind(this));

  function seek(event) {
    var percent = event.offsetX / progressbar.offsetWidth;
    this.currentAudio.currentTime = percent * this.currentAudio.duration;
    barProgress.style.width = percent*100 + "%";
  }

  function forward(){
    this.currentAudio.currentTime = this.currentAudio.currentTime + 5
    this.setBarProgress();
  }

  function rewind(){
    this.currentAudio.currentTime = this.currentAudio.currentTime - 5
    this.setBarProgress();
  }

  function next(){
    if (this.indexAudio <listAudio.length-1) {
        var oldIndex = this.indexAudio
        this.indexAudio++;
        updateStylePlaylist(oldIndex,this.indexAudio)
        this.loadNewTrack(this.indexAudio);
    }
  }

  function previous(){
    if (this.indexAudio>0) {
        var oldIndex = this.indexAudio
        this.indexAudio--;
        updateStylePlaylist(oldIndex,this.indexAudio)
        this.loadNewTrack(this.indexAudio);
    }
  }

  function updateStylePlaylist(oldIndex,newIndex){
    document.querySelector('#ptc-'+oldIndex).classList.remove("active-track");
    this.pauseToPlay(oldIndex);
    document.querySelector('#ptc-'+newIndex).classList.add("active-track");
    this.playToPause(newIndex)
  }

  function playToPause(index){
    var ele = document.querySelector('#p-img-'+index)
    ele.classList.remove("fa-play");
    ele.classList.add("fa-pause");
  }

  function pauseToPlay(index){
    var ele = document.querySelector('#p-img-'+index)
    ele.classList.remove("fa-pause");
    ele.classList.add("fa-play");
  }

  function toggleMute(){
    var btnMute = document.querySelector('#toggleMute');
    var volUp = document.querySelector('#icon-vol-up');
    var volMute = document.querySelector('#icon-vol-mute');
    if (this.currentAudio.muted == false) {
       this.currentAudio.muted = true
       volUp.style.display = "none"
       volMute.style.display = "block"
    }else{
      this.currentAudio.muted = false
      volMute.style.display = "none"
      volUp.style.display = "block"
    }
  }
</script>
<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <link href="https://fonts.googleapis.com/css?family=Roboto&display=swap" rel="stylesheet">
    <script src="https://kit.fontawesome.com/a062562745.js" crossorigin="anonymous"></script>
    <link rel=stylesheet href="style.css" media=all>
  </head>
  <body>

<audio id="myAudio" ontimeupdate="onTimeUpdate()">
  <!-- <source src="audio.ogg" type="audio/ogg"> -->
  <source id="source-audio" src="" type="audio/mpeg">
  Your browser does not support the audio element.
</audio>

<div class="player-ctn">
  <div class="infos-ctn">
    <div class="timer">00:00</div>
    <div class="title"></div>
    <div class="duration">00:00</div>
  </div>
  <div id="myProgress">
    <div id="myBar"></div>
  </div>
  <div class="btn-ctn">
     <div class="btn-action first-btn" onclick="previous()">
        <div id="btn-faws-back">
          <i class='fas fa-step-backward'></i>
        </div>
     </div>
     <div class="btn-action" onclick="rewind()">
        <div id="btn-faws-rewind">
          <i class='fas fa-backward'></i>
        </div>
     </div>
     <div class="btn-action" onclick="toggleAudio()">
        <div id="btn-faws-play-pause">
          <i class='fas fa-play' id="icon-play"></i>
          <i class='fas fa-pause' id="icon-pause" style="display: none"></i>
        </div>
     </div>
     <div class="btn-play" onclick="forward()">
        <div id="btn-faws-forward">
          <i class='fas fa-forward'></i>
        </div>
     </div>
     <div class="btn-action" onclick="next()">
        <div id="btn-faws-next">
          <i class='fas fa-step-forward'></i>
        </div>
     </div>
     <div class="btn-mute" id="toggleMute" onclick="toggleMute()">
        <div id="btn-faws-volume">
          <i id="icon-vol-up" class='fas fa-volume-up'></i>
          <i id="icon-vol-mute" class='fas fa-volume-mute' style="display: none"></i>
        </div>
     </div>
  </div>
  <div class="playlist-ctn"></div>
</div>
<script src=app.js></script>

  </body>
</html>

[/html]

0

164

[html]
<style>
ol {
list-style: none;
margin: 0;
padding: 0;
}
ol li {
margin: 0;
list-style: decimal outside;
}
* {
-webkit-tap-highlight-color: rgba(0,0,0,0);
-webkit-tap-highlight-color: transparent;
}
a, a:focus, a:active, a:hover, a:visited {
text-decoration: none;
}
a[href], a[href]:active, a[href]:visited {
color: #ddd;
outline: 0 none;
text-decoration: underline;
}
a[href]:hover, a[href]:focus {
color: #bbb;
}
/* << reset */

/* page style */
.page {
position: relative;
margin: 0 auto;
width: 70%;
min-width: 300px;
max-width: 700px;
}
.ellipsis {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Audio Player */
.player-wrap {
position: relative;
margin: 0 0 1em;
padding: 0;
background-color: #222;
}
.player-wrap.enabled {
padding-bottom: 4em;
}
.player-wrap .button {
float: left;
display: none;
margin: 1.5em 2em;
width: 5em;
height: 5em;
background-color: #333;
line-height: 5em;
text-align: center;
border-radius: 25%;
}
.player-wrap .button:hover {
  background-color: #444;
cursor: pointer;
}
.player-wrap.enabled .button {
display: block;
}
.player-wrap .info {
margin-left: 10em;
}
.player-wrap h1 {
padding: 1.5em 0;
}
.player-wrap .action {
font-style: italic;
}
.player-wrap .player {
position: absolute;
  display: none;
left: 0;
bottom: 0;
padding: 0 1em 0 6em;
width: 100%;
height: 1em;
background-color: #333;
font-size: 2em;
box-sizing: border-box;
}
.player-wrap.enabled .player {
display: block;
}
.player-wrap .player svg {
margin: .25em;
width: .5em;
height: .5em;
fill: currentColor;
}
.player-wrap .player div {
display: block;
height: 1em;
}
.player-wrap audio,
.player-wrap .player .pause {
display: none;
}
.player-wrap .playpause, .player-wrap .timer,
.player-wrap .prev, .player-wrap .next {
position: absolute;
left: 0;
bottom: 0;
display: block;
height: 1em;
line-height: 1em;
vertical-align: top;
text-align: center;
}
.player-wrap .playpause,
.player-wrap .prev, .player-wrap .next {
width: 1em;
cursor: pointer;
}
.player-wrap .playpause {
left: 1em;
}
.player-wrap .next {
left: auto;
right: 0;
}
.player-wrap .playpause:hover,
.player-wrap .prev:hover, .player-wrap .next:hover {
background-color: #444;
}
.player-wrap .playpause, .player-wrap .play, .player-wrap .pause,
.player-wrap .prev::-moz-focus-inner,
.player-wrap .next::-moz-focus-inner {
border: 0;
padding: 0;
}
.player-wrap .timer {
left: 2em;
width: 4em;
}
.player-wrap .timer div {
display: inline-block;
height: 100%;
vertical-align: top;
font-size: .45em;
}
.player-wrap .seek {
box-sizing: border-box;
margin: 0;
padding: 0;
width: 100%;
height: 100%;
}
.playlist-wrap {
background-color: #222;
}
.playlist-wrap li {
margin: 0 0 0 3em;
padding: .25em 0 .25em .5em;
list-style: decimal outside;
}
.playlist-wrap li.sel {
background-color: #333;
}
.playlist-wrap li:hover {
background-color: #444;
}

/* >> input[type=range] class: seek */
input.seek[type=range] {
box-sizing: border-box;
background-color: transparent;
vertical-align: top;
font-size: 1em;
-webkit-appearance: none;
}
input.seek[type=range]:focus {
outline: none;
}
input.seek[type=range]::-webkit-slider-runnable-track {
box-sizing: border-box;
width: 98%;
height: .17em;
background-color: #eee;
cursor: pointer;
border-radius: .1em;
transition: all .2s ease;
}
input.seek[type=range]::-webkit-slider-thumb {
box-sizing: border-box;
width: .17em;
height: .7em;
margin-top: -.27em;
border-radius: .1em;
background-color: #eee;
cursor: pointer;
-webkit-appearance: none;
}
input.seek[type=range]:focus::-webkit-slider-runnable-track {
background-color: #eee;
}
input.seek[type=range]::-moz-range-track {
box-sizing: border-box;
border: 0 solid #eee;
width: 98%;
height: .17em;
background-color: #eee;
cursor: pointer;
border-radius: .1em;
transition: all .2s ease;
}
input.seek[type=range]::-moz-range-thumb {
box-sizing: border-box;
border: 0 solid #eee;
width: .17em;
height: .7em;
background-color: #eee;
cursor: pointer;
border-radius: .1em;
}
input.seek[type=range]::-ms-track {
box-sizing: border-box;
border: 0 none;
width: 98%;
height: .17em;
background-color: transparent;
color: transparent;
cursor: pointer;
transition: all .2s ease;
}
input.seek[type=range]::-ms-fill-lower {
background-color: #eee;
border-radius: .1em;
}
input.seek[type=range]::-ms-fill-upper {
background-color: #eee;
border-radius: .1em;
}
input.seek[type=range]::-ms-thumb {
margin-top: -.01em;
box-sizing: border-box;
width: .17em;
height: .7em;
background-color: #eee;
cursor: pointer;
border-radius: .1em;
}
input.seek[type=range]:focus::-ms-fill-lower {
background-color: #eee;
}
input.seek[type=range]:focus::-ms-fill-upper {
background-color: #eee;
}
/* << input[type=range] class: seek */

</style>
<script>
// HTML5 audio player + playlist controls
var jsPlayer = document.querySelector('.player-wrap');
if (jsPlayer) {
jsPlayer = {
    wrap: jsPlayer,
    player: (jsPlayer.querySelector('audio') || { play: function(){}, pause: function(){} }),
    play: (jsPlayer.querySelector('.play') || {}),
    pause: (jsPlayer.querySelector('.pause') || {}),
    seek: (jsPlayer.querySelector('.seek') || {}),
    prev: (jsPlayer.querySelector('.prev') || {}),
    next: (jsPlayer.querySelector('.next') || {}),
    button: (jsPlayer.querySelector('.button') || { style: {} }),
    wrapList: (document.querySelector('.playlist-wrap') || {}),
    action: (jsPlayer.querySelector('.action') || {}),
    title: (jsPlayer.querySelector('.title') || {}),
    current: (jsPlayer.querySelector('.current') || {}),
    duration: (jsPlayer.querySelector('.duration') || {}),
    trackCount: 0,
    seeking: null,
    playing: false,
    tracks: [],
    track: [],
    idx: 0
};

jsPlayer.playClicked = function jsPlayerPlayClicked(){
    jsPlayer.button.style.visibility = 'hidden';
    jsPlayer.pause.style.display = 'block';
    jsPlayer.play.style.display = 'none';
    jsPlayer.playing = true;
    jsPlayer.action.innerHTML = 'Now Playing&hellip;';
    jsPlayer.player.play();
    jsPlayer.updateSeek();
};
jsPlayer.pauseClicked = function jsPlayerPauseClicked(){
    jsPlayer.play.style.display = 'block';
    jsPlayer.pause.style.display = 'none';
    clearTimeout(jsPlayer.seeking);
    jsPlayer.playing = false;
    jsPlayer.action.innerHTML = 'Paused&hellip;';
    jsPlayer.player.pause();
};
jsPlayer.loadPlaylist = function jaPlayerLoadPlaylist(){
    jsPlayer.playlist = jsPlayer.wrapList? jsPlayer.wrapList.querySelectorAll('ol > li') : [];
    var len = jsPlayer.playlist.length,
    tmp, i;
    for (i = 0; i < len; i++) {
    if (!jsPlayer.playlist[i].dataset) {
        jsPlayer.playlist[i].dataset = {};
    }
    tmp = jsPlayer.playlist[i].querySelector('a');
    if (tmp && !jsPlayer.playlist[i].dataset.idx) {
        jsPlayer.playlist[i].dataset.idx = i + 1;
        jsPlayer.trackCount++;
        jsPlayer.tracks.push({
        "file": tmp.href,
        "name": (tmp.textContent || tmp.innerText).replace(/^\s+|\s+$/g, ''),
        "track": i + 1
        });
    }
    }
};
jsPlayer.loadTrack = function jsPlayerLoadTrack(idx){
    var len = jsPlayer.playlist.length,
    i;
    for (i=0; i < len; i++) {
    if (jsPlayer.playlist[i].classList) {
        if (i === idx) {
        jsPlayer.playlist[i].classList.add('sel');
        } else {
        jsPlayer.playlist[i].classList.remove('sel');
        }
    }
    }
    jsPlayer.title.innerHTML = jsPlayer.tracks[idx].name;
    jsPlayer.player.src = jsPlayer.tracks[idx].file + '.mp3';
};
jsPlayer.playTrack = function jsPlayerPlayTrack(idx){
    jsPlayer.loadTrack(idx);
    jsPlayer.playing = true;
    jsPlayer.playClicked();
};
jsPlayer.init = function jsPlayerInit(){
    var track = (jsPlayer.wrap && jsPlayer.wrap.dataset && jsPlayer.wrap.dataset.url)? jsPlayer.wrap : null,
    tmp, i;
    if (!!document.createElement('audio').canPlayType('audio/mpeg')) {
    if (jsPlayer.wrapList && jsPlayer.wrapList.querySelectorAll('ol > li').length > 0) {
        jsPlayer.loadPlaylist();
    } else if (track) {
        jsPlayer.tracks = [{
        "file": track.dataset.url,
        "name": (track.dataset.title || ''),
        "track": 1
        }];
    }
    if (jsPlayer.tracks.length > 0) {
        if (jsPlayer.player) {
        jsPlayer.player.addEventListener('ended', function playerEnded(){
            if (jsPlayer.idx + 1 < jsPlayer.trackCount) {
            jsPlayer.idx++;
            jsPlayer.playTrack(jsPlayer.idx);
            } else {
            jsPlayer.action.innerHTML = 'Paused&hellip;';
            jsPlayer.player.pause();
            jsPlayer.idx = 0;
            jsPlayer.loadTrack(jsPlayer.idx);
            }
        }, true);
        jsPlayer.player.addEventListener('loadeddata', function playerLoadeddata(){
            jsPlayer.setDuration();
        }, true);
        }
        if (jsPlayer.play) {
        jsPlayer.play.addEventListener('click', jsPlayer.playClicked, true);
        }
        if (jsPlayer.pause) {
        jsPlayer.pause.addEventListener('click', jsPlayer.pauseClicked, true);
        }
        if (jsPlayer.button) {
        jsPlayer.button.addEventListener('click', function buttonClicked(event){
            event.preventDefault();
            jsPlayer.playClicked();
        }, true);
        }
        if (jsPlayer.prev) {
        jsPlayer.prev.addEventListener('click', function prevClicked(event){
            event.preventDefault();
            if (jsPlayer.idx - 1 > -1) {
            jsPlayer.idx--;
            jsPlayer.loadTrack(jsPlayer.idx);
            if (jsPlayer.playing) {
                jsPlayer.action.innerHTML = 'Now Playing&hellip;';
                jsPlayer.player.play();
            }
            } else {
            jsPlayer.action.innerHTML = 'Paused&hellip;';
            jsPlayer.playing = false;
            jsPlayer.player.pause();
            jsPlayer.idx = 0;
            jsPlayer.loadTrack(jsPlayer.idx);
            }
        }, true);
        }
        if (jsPlayer.next) {
        jsPlayer.next.addEventListener('click', function nextClicked(event){
            event.preventDefault();
            if (jsPlayer.idx + 1 < jsPlayer.trackCount) {
            jsPlayer.idx++;
            jsPlayer.loadTrack(jsPlayer.idx);
            if (jsPlayer.playing) {
                jsPlayer.action.innerHTML = 'Now Playing&hellip;';
                jsPlayer.player.play();
            }
            } else {
            jsPlayer.action.innerHTML = 'Paused&hellip;';
            jsPlayer.playing = false;
            jsPlayer.player.pause();
            jsPlayer.idx = 0;
            jsPlayer.loadTrack(jsPlayer.idx);
            }
        }, true);
        }
        if (jsPlayer.seek) {
        jsPlayer.seek.addEventListener('mousedown', function seekClicked(){
            clearTimeout(jsPlayer.seeking);
            jsPlayer.action.innerHTML = 'Paused&hellip;';
            jsPlayer.player.pause();
        }, true);
        jsPlayer.seek.addEventListener('mouseup', function seekReleased(){
            jsPlayer.player.currentTime = jsPlayer.seek.value * jsPlayer.player.duration / 100;
            jsPlayer.updateSeek();
            if (jsPlayer.playing) {
            jsPlayer.action.innerHTML = 'Now Playing&hellip;';
            jsPlayer.player.play();
            }
        }, true);
        }
        if (jsPlayer.wrapList) {
        jsPlayer.wrapList.addEventListener('click', function listClicked(event){
            var parent = event.target.parentNode;
            if (parent.parentNode.tagName.toLowerCase() === 'ol') {
            event.preventDefault();
            var len = jsPlayer.playlist.length,
            i;
            for (i = 0; i < len; i++) {
                if (parent.dataset.idx == i + 1) {
                jsPlayer.idx = i;
                jsPlayer.playTrack(jsPlayer.idx);
                i = len;
                }
            }
            }
        }, true);
        }
        jsPlayer.setDuration = function setDuration() {
        jsPlayer.duration.innerHTML = jsPlayer.formatTime(jsPlayer.player.duration);
        jsPlayer.current.innerHTML = jsPlayer.formatTime(jsPlayer.player.currentTime);
        jsPlayer.seek.value = jsPlayer.player.currentTime / jsPlayer.player.duration;
        };
        jsPlayer.updateSeek = function updateSeek() {
        jsPlayer.seek.value = 100 * jsPlayer.player.currentTime / jsPlayer.player.duration;
        jsPlayer.current.innerHTML = jsPlayer.formatTime(jsPlayer.player.currentTime);
        if (jsPlayer.playing) {
            jsPlayer.seeking = setTimeout(jsPlayer.updateSeek, 500);
        }
        };
        jsPlayer.formatTime = function formatTime(val) {
        var h = 0, m = 0, s;
        val = parseInt(val, 10);
        if (val > 60 * 60) {
            h = parseInt(val / (60 * 60), 10);
            val -= h * 60 * 60;
        }
        if (val > 60) {
            m = parseInt(val / 60, 10);
            val -= m * 60;
        }
        s = val;
        val = (h > 0)? h + ':' : '';
        val += (m > 0)? ((m < 10 && h > 0)? '0' : '') + m + ':' : '0:';
        val += ((s < 10)? '0' : '') + s;
        return val;
        };
    }
    }
    if (jsPlayer.tracks.length > 0) {
    jsPlayer.wrap.className += ' enabled';
    jsPlayer.loadTrack(jsPlayer.idx);
    }
};
jsPlayer.init();
}

</script>

<div class="page">
<div class="player-wrap" data-url="//archive.org/download/mythium/JLS_ATI" data-title="All This Is - Joe L.'s Studio">
    <div class="button">Play</div>
    <div class="info">
      <h1>Album: Mythium</h1>
      <p class="action">&nbsp;</p>
      <p class="title ellipsis"></p>
    </div>
    <div class="player">
    <audio preload></audio>
    <div class="playpause">
        <div class="play"><svg viewBox="0 0 14 14"><path d="M0,0 L0,14 L11,7 L0,0 Z"/></svg></div>
        <div class="pause"><svg viewBox="0 0 14 14"><path d="M0,14 L4,14 L4,0 L0,0 L0,14 L0,14 Z M8,0 L8,14 L12,14 L12,0 L8,0 L8,0 Z"/></svg></div>
    </div>
    <div class="timer">
        <div class="current">0:00:00</div>
        <div>/</div>
        <div class="duration">0:00:00</div>
    </div>
    <div><input type="range" min="0" max="100" step=".1" value="0" class="seek"></div>
    <div class="prev"><svg viewBox="0 0 12 12"><path d="M3.5,6 L12,12 L12,0 L3.5,6 Z M0,0 L0,12 L2,12 L2,0 L0,0 L0,0 Z"/></svg></div>
    <div class="next"><svg viewBox="0 0 12 12"><path d="M0,12 L8.5,6 L0,0 L0,12 L0,12 Z M10,0 L10,12 L12,12 L12,0 L10,0 L10,0 Z"/></svg></div>
    </div>
</div>
<div class="playlist-wrap">
    <ol>
    <li><a href="//archive.org/download/mythium/JLS_ATI">All This Is - Joe L.'s Studio</a></li>
    <li><a href="//archive.org/download/mythium/BS_TF">The Forsaken - Broadwing Studio (Final Mix)</a></li>
    <li><a href="//archive.org/download/mythium/BS_ATKM">All The King's Men - Broadwing Studio (Final Mix)</a></li>
    <li><a href="//archive.org/download/mythium/BSFM_TF">The Forsaken - Broadwing Studio (First Mix)</a></li>
    <li><a href="//archive.org/download/mythium/BSFM_ATKM">All The King's Men - Broadwing Studio (First Mix)</a></li>
    <li><a href="//archive.org/download/mythium/AC_ATI">All This Is - Alternate Cuts</a></li>
    <li><a href="//archive.org/download/mythium/AC_ATKMTake_1">All The King's Men (Take 1) - Alternate Cuts</a></li>
    <li><a href="//archive.org/download/mythium/AC_ATKMTake_2">All The King's Men (Take 2) - Alternate Cuts</a></li>
    <li><a href="//archive.org/download/mythium/AC_M">Magus - Alternate Cuts</a></li>
    <li><a href="//archive.org/download/mythium/AC_TSOWAfucked_up">The State Of Wearing Address (fucked up) - Alternate Cuts</a></li>
    <li><a href="//archive.org/download/mythium/PNY04-05_M">Magus - Popeye's (New Years '04 - '05)</a></li>
    <li><a href="//archive.org/download/mythium/PNY04-05_OTW">On The Waterfront - Popeye's (New Years '04 - '05)</a></li>
    <li><a href="//archive.org/download/mythium/PNY04-05_T">Trance - Popeye's (New Years '04 - '05)</a></li>
    <li><a href="//archive.org/download/mythium/PNY04-05_TF">The Forsaken - Popeye's (New Years '04 - '05)</a></li>
    <li><a href="//archive.org/download/mythium/PNY04-05_TSOWA">The State Of Wearing Address - Popeye's (New Years '04 - '05)</a></li>
    <li><a href="//archive.org/download/mythium/PVD_M">Magus - Popeye's (Valentine's Day '05)</a></li>
    <li><a href="//archive.org/download/mythium/PVD_T">Trance - Popeye's (Valentine's Day '05)</a></li>
    <li><a href="//archive.org/download/mythium/PVD_TSOWA">The State Of Wearing Address - Popeye's (Valentine's Day '05)</a></li>
    <li><a href="//archive.org/download/mythium/SSB01_08_04_ATI">All This Is - Smith St. Basement (01/08/04)</a></li>
    <li><a href="//archive.org/download/mythium/SSB01_08_04_M">Magus - Smith St. Basement (01/08/04)</a></li>
    <li><a href="//archive.org/download/mythium/SSB06_06_03_BTPE">Beneath The Painted Eye - Smith St. Basement (06/06/03)</a></li>
    <li><a href="//archive.org/download/mythium/SSB06_06_03_I">Innocence - Smith St. Basement (06/06/03)</a></li>
    <li><a href="//archive.org/download/mythium/SSB06_06_03_M">Magus - Smith St. Basement (06/06/03)</a></li>
    <li><a href="//archive.org/download/mythium/SSB06_06_03_ME">Madness Explored - Smith St. Basement (06/06/03)</a></li>
    <li><a href="//archive.org/download/mythium/SSB06_06_03_TF">The Forsaken - Smith St. Basement (06/06/03)</a></li>
    <li><a href="//archive.org/download/mythium/SSB12_28_03_ATI">All This Is - Smith St. Basement (12/28/03)</a></li>
    <li><a href="//archive.org/download/mythium/SSB12_28_03_M">Magus - Smith St. Basement (12/28/03)</a></li>
    <li><a href="//archive.org/download/mythium/SSB12_28_03_ME">Madness Explored - Smith St. Basement (12/28/03)</a></li>
    <li><a href="//archive.org/download/mythium/SSB12_28_03_T">Trance - Smith St. Basement (12/28/03)</a></li>
    <li><a href="//archive.org/download/mythium/SSB12_28_03_TF">The Forsaken - Smith St. Basement (12/28/03)</a></li>
    <li><a href="//archive.org/download/mythium/SSB___11_03_ATITake_1">All This Is (Take 1) - Smith St. Basement (Nov. '03)</a></li>
    <li><a href="//archive.org/download/mythium/SSB___11_03_ATITake_2">All This Is (Take 2) - Smith St. Basement (Nov. '03)</a></li>
    <li><a href="//archive.org/download/mythium/SSB___11_03_BTPETake_1">Beneath The Painted Eye (Take 1) - Smith St. Basement (Nov. '03)</a></li>
    <li><a href="//archive.org/download/mythium/SSB___11_03_BTPETake_2">Beneath The Painted Eye (Take 2) - Smith St. Basement (Nov. '03)</a></li>
    <li><a href="//archive.org/download/mythium/SSB___11_03_TFTake_1">The Forsaken (Take 1) - Smith St. Basement (Nov. '03)</a></li>
    <li><a href="//archive.org/download/mythium/SSB___11_03_TFTake_2">The Forsaken (Take 2) - Smith St. Basement (Nov. '03)</a></li>
    </ol>
</div>
</div>

[/html]

0

165

[html]
<script>
"use strict"; // Paul Slaymaker, paul25882@gmail.com
const body=document.getElementsByTagName("body").item(0);
body.style.background="#000";
const TP=2*Math.PI;
const CSIZE=400;

const ctx=(()=>{
  let d=document.createElement("div");
  d.style.textAlign="center";
  body.append(d);
  let c=document.createElement("canvas");
  c.width=c.height=2*CSIZE;
  d.append(c);
  return c.getContext("2d");
})();
ctx.translate(CSIZE,CSIZE);
ctx.lineCap="round";

onresize=()=>{
  let D=Math.min(window.innerWidth,window.innerHeight)-40;
  ctx.canvas.style.width=D+"px";
  ctx.canvas.style.height=D+"px";
}

const getRandomInt=(min,max,low)=>{
  if (low) return Math.floor(Math.random()*Math.random()*(max-min))+min;
  else return Math.floor(Math.random()*(max-min))+min;
}

var hues=[];
var colors=new Array(4);
var getHues=()=>{
  let h=[];
  let hueCount=4;
  let hr=Math.round(90/hueCount);
  //let hue=getRandomInt(-10,10);
  let hue=getRandomInt(0,360);
  for (let i=0; i<hueCount; i++) {
    let hd=(hue+Math.round(240/hueCount)*i+getRandomInt(-hr,hr))%360;
    h.splice(getRandomInt(0,h.length+1),0,hd);
  }
  return h;
}

var setColors=()=>{
  hues=getHues();
  colors[0]="hsl("+hues[0]+",100%,40%)";
  colors[1]="hsl("+hues[1]+",100%,50%)";
  colors[2]="hsl("+hues[2]+",100%,50%)";
  colors[3]="hsl("+hues[3]+",100%,50%)";
}

const C=8;

var Line=function(idx,rdx) {
  this.a=idx*TP/C;
  this.rdx=rdx;
  let f=2/C;
  this.f1x=Math.cos(this.a-f);
  this.f1y=Math.sin(this.a-f);
  this.f2x=Math.cos(this.a+f);
  this.f2y=Math.sin(this.a+f);
  this.dp1=new DOMPoint();
  this.dp2=new DOMPoint();
  this.setLine=()=>{
    let r=radii[this.rdx];
    this.dp1.x=Math.round(r*this.f1x);
    this.dp1.y=Math.round(r*this.f1y);
    this.dp2.x=Math.round(r*this.f2x);
    this.dp2.y=Math.round(r*this.f2y);
  }
  this.setLine();
}

var SW=true;

var getNextTraveler=(index)=>{
  for (let i=index+1; i<index+1+ta.length; i++) {
    let ix=i%ta.length;
    if (ta[ix].arcCounter==ta[index].arcCounter) return ta[ix];
  }
  return false;
}

var setPass=()=>{
  let ridx=getRandomInt(0,ta.length);
  for (let i=0; i<ta.length; i++) {
    let tindx=(i+ridx)%ta.length;
    let ptrav=ta[tindx];
    if (ptrav.t!=0) continue;
    if (ptrav.type.length>0) continue;
    let trav2=getNextTraveler(tindx);
    if (!trav2) return;
    if (trav2.type.length>0) continue;
    let r0=lset[ptrav.pathIndex][ptrav.arcCounter].rdx;
    let r1=lset[trav2.pathIndex][trav2.arcCounter].rdx;
    if (Math.abs(r0-r1)>1) {
      let rr0=lset[ptrav.pathIndex][(ptrav.arcCounter+1)%C].rdx;
      let rr1=lset[trav2.pathIndex][(trav2.arcCounter+1)%C].rdx;
      if (rr0==rr1) continue;
      ptrav.type="p";
      trav2.type="h";
    }
  }
}

var Trav=function(idx) {
  this.pathIndex=0; //getRandomInt(0,lset.length);
  this.arcCounter=Math.trunc(idx/TPA); // trav per arc, TCOUNT=TPA*8
  this.t=0;
  this.tf=speed*ls2[lset[this.pathIndex][this.arcCounter].rdx+"-"+lset[this.pathIndex][(this.arcCounter+1)%C].rdx];
  let q=SW?Math.trunc(idx/6):getRandomInt(0,3);
  this.rad=[22,38,54][q];
  this.col=colors[q+1];
  this.type="";
  this.stepArc=()=>{
    this.arcCounter=++this.arcCounter%C;
    if (nodes[this.arcCounter][iset[this.arcCounter][this.pathIndex]].length>1) {
       let ca=nodes[this.arcCounter][iset[this.arcCounter][this.pathIndex]];
       this.pathIndex=ca[getRandomInt(0,ca.length)];
    }

    let a2=(this.arcCounter+1)%C;
    this.tf=speed*ls2[lset[this.pathIndex][this.arcCounter].rdx+"-"+lset[this.pathIndex][a2].rdx];
  }
  this.step=()=>{
    this.t++;
    if (this.type=="p") {
if (this.t==STOP/2) {
  this.stepArc();
  this.t=0;
  this.type="";
}
    } else if (this.type=="h") {
       if (this.t==STOP) {
this.type="h2";
this.t=0;
       }
    } else if (this.type=="h2") {
      if (this.t==STOP/2) {
this.stepArc();
this.t=0;
this.type="";
      }
    } else {
      if (this.t==STOP) {
this.stepArc();
this.t=0;
      }
    }
  }
  this.getDashOffset=()=>{
    if (this.type=="h") {
      return -this.tf*(STOP/4+this.t/2);
    } else if (this.type=="h2") {
      return -this.tf*(3*STOP/4+this.t/2);
    } else if (this.type[0]=="p") {
      return -2*this.tf*this.t;
    } else {
      return -this.tf*this.t;
    }
  }
  this.draw=()=>{
    ctx.lineDashOffset=this.getDashOffset();
    ctx.setLineDash([1,4000]);
    ctx.lineWidth=this.rad;
    ctx.strokeStyle=this.col;
    ctx.stroke(pa[this.pathIndex][this.arcCounter]);
  }
}

var radii=[150,220,290,360];
var iset=new Array(C);
var lset=[new Array(C),new Array(C),new Array(C),new Array(C), new Array(C)];
var nodes=new Array(C);

var setRadii=()=>{
  for (let i=0; i<C; i++) {
    let is=new Array(lset.length);
    for (let i=0; i<lset.length; i++) {
      is[i]=getRandomInt(0,radii.length);
    }
    is.sort();
    iset[i]=is;
  }
}

var setLinesAndNodes=()=>{
  for (let i=0; i<C; i++) {
    nodes[i]=[];
    for (let j=0; j<lset.length; j++) {
      lset[j][i]=new Line(i,iset[i][j]);
      if (nodes[i][iset[i][j]]) {
nodes[i][iset[i][j]].push(j);
      } else {
nodes[i][iset[i][j]]=[j];
      }
    }
  }
}

var pa=new Array(lset.length);
var dpath;
var setPaths=()=>{
  dpath=new Path2D();
  for (let l=0; l<lset.length; l++) {
    let lp=lset[l];
    let a2=new Array(C);
    for (let i=0; i<C; i++) {
      let p=new Path2D();
      let i0=i;
      let i1=(i+1)%C;
    let x=(lp[i0].dp1.x+lp[i0].dp2.x)/2;
    let y=(lp[i0].dp1.y+lp[i0].dp2.y)/2;
      p.moveTo(x,y);
      x=Math.round((lp[i1].dp1.x+lp[i1].dp2.x)/2);
      y=Math.round((lp[i1].dp1.y+lp[i1].dp2.y)/2);
      p.bezierCurveTo(lp[i0].dp2.x,lp[i0].dp2.y,lp[i1].dp1.x,lp[i1].dp1.y,x,y);
      dpath.addPath(p);
      a2[i]=p;
    }
    pa[l]=a2;
  }
}

var draw=()=>{
  ctx.clearRect(-CSIZE,-CSIZE,2*CSIZE,2*CSIZE);
  ctx.setLineDash([]);
  ctx.lineWidth=3;
  ctx.strokeStyle=colors[0];
  ctx.stroke(dpath);
  for (let i=0; i<ta.length; i++) ta[i].draw();
}

function start() {
  if (stopped) {
    stopped=false;
    requestAnimationFrame(animate);
  } else {
    stopped=true;
  }
}
ctx.canvas.addEventListener("click", start, false);

var stopped=true;
var s=0;
var rotationRate=-0.005;
function animate(ts) {
  if (stopped) return;
  if (s++>1800) {
    if (s==1840) reset();
    if (s-1800<40) {
      ctx.globalAlpha=(1840-s)/40;
    } else {
      ctx.globalAlpha=(s-1840)/40;
    }
    if (s==1880) { ctx.globalAlpha=1; s=0; }
  }
  for (let i=0; i<ta.length; i++) ta[i].step();
  if (SW) setPass();
  draw();
  ctx.rotate(rotationRate);
  requestAnimationFrame(animate);
}

var ls2={
  "0-0":0.113,    //
  "0-1":0.157,    //
  "1-0":0.157,    //
  "0-2":0.217,    //
  "2-0":0.217,    //
  "0-3":0.283,    //
  "3-0":0.283,    //
  "1-1":0.167,    //
  "1-2":0.206,    //
  "2-1":0.206,    //
  "1-3":0.261,    //
  "3-1":0.261,    //
  "2-2":0.220,    //
  "2-3":0.256,    //
  "3-2":0.256,    //
  "3-3":0.273,    //
};

var speed=20;    // 5,10,20,25,50
var STOP=1000/speed;    // speed 100
var setSpeed=()=>{
speed=Math.random()<0.5?10:20;
STOP=1000/speed;    // speed 100
}

const TPA=2; // trav per arc
const TCOUNT=TPA*C;
var ta=new Array(TCOUNT);
var setTravelers=()=>{
  for (let i=0; i<TCOUNT; i++) {
    ta[i]=new Trav(i);
    ta[i].t=STOP/TPA*(i%TPA);
  }
}

var reset=()=>{
  setRadii();
  setLinesAndNodes();
  setPaths();
  setColors();
setSpeed();
  SW=Math.random()<0.5;
  setTravelers();
  ctx.transform([1,-1][getRandomInt(0,2)],0,0,1,0,0);
  rotationRate=-0.003-0.008*Math.random();
}

onresize();

reset();
start();
</script>
[/html]

0

166

[html]
<style>
* {
  box-sizing: border-box;
}

html {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 100vw;
  min-height: 100vh;
}

body {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 90vw;
  height: 90vh;
  background: grey;
}

.items {
  display: flex;
  flex-direction: column;
  align-items: center;
  perspective: 500px;
  animation: rotate infinite linear 20s;
}

.item {
  position: relative;
  display: inline-block;
  overflow: visible; 
  width: 50px;
  height: 5px;
  margin: 2px 0;
 
  display: flex;
  justify-content: space-between;
 
  animation: rotate2 infinite linear 2s, hue linear infinite 2s;
 
  background: linear-gradient(0deg, transparent 0%, transparent 40%, #2a6ae9 50%, transparent 60%, transparent 100%);
 
  &:before, &:after {
    content: "";
    position: relative;
    border-radius: 50%;
    width: 5px;
    height: 5px;
    display: block;
    background: white;
    box-shadow: 0px 0px 10px 2px #2a6ae9,
      0px 0px 0px 1px black;
  }
 
  &:before {
    animation-delay: 1s;
  }
}

@for $i from 1 through 100  {
  .item:nth-child(n + #{$i}) {
    animation-delay: -5s + ($i *.13s);
  }
}

@keyframes rotate {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@keyframes rotate2 {
  0% { transform: rotateY(0deg); }
  100% { transform: rotateY(360deg); }
}
@keyframes hue {
  0% { filter: hue-rotate(0deg); }
  0% { filter: hue-rotate(360deg); }
}
</style>
<div class="items">
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
</div>

[/html]

0

167

[html]
<style>
.fancy {
  --b: 6px;   /* control the border thickness */
  --w: 80px;  /* control the width of the line*/
  --g: 15px;  /* control the gap */
  --c: #0B486B;

  width: fit-content;
  padding: 0 1em;
  line-height: 1.6em;
  border: 1px solid;
  color: #fff;
  background:
    conic-gradient(from   45deg at left ,var(--c) 25%,#0000 0) 0,
    conic-gradient(from -135deg at right,var(--c) 25%,#0000 0) 100%;
  background-size: 51% 100%;
  background-origin: border-box;
  background-repeat: no-repeat;
  border-image:
     linear-gradient(
       #0000      calc(50% - var(--b)/2),
       var(--c) 0 calc(50% + var(--b)/2),
       #0000    0)
    1/0 var(--w)/calc(var(--w) + var(--g));
  margin-inline: auto;
}

p {
  font-size: 1.3rem;
  text-align: justify;
  margin-inline: max(20px, 50% - 800px/2);
}
h1 {
  font-size: 2.3rem;
}
h2 {
  font-size: 1.8rem;
}

body {
  font-family: system-ui, sans-serif;
}
</style>
<script>

</script>

<h1 class="fancy">Main Title</h1>
    <p>Croissant tiramisu candy canes danish dragée lemon drops. Tart dessert dragée fruitcake bear claw danish gingerbread. Croissant gingerbread chocolate cake apple pie sweet roll cotton candy. Jelly jelly icing toffee cotton candy. Soufflé tart sweet roll chocolate sesame snaps fruitcake carrot cake. Wafer biscuit cotton candy sweet icing.
    </p>   
    <h2 class="fancy" style="--w: 50vw;--c: #C44D58;--b:4px;--g: 40px">Croissant tiramisu candy canes danish dragée lemon drops.</h2>
    <p>Croissant tiramisu candy canes danish dragée lemon drops. Tart dessert dragée fruitcake bear claw danish gingerbread. Croissant gingerbread chocolate cake apple pie sweet roll cotton candy. Jelly jelly icing toffee cotton candy. Soufflé tart sweet roll chocolate sesame snaps fruitcake carrot cake. Wafer biscuit cotton candy sweet icing.
    </p>
<h2 class="fancy" style="--w: 50vw;--c: #8A9B0F;--b:4px;--g:-5px">Another Title</h2>
    <p>Croissant tiramisu candy canes danish dragée lemon drops. Tart dessert dragée fruitcake bear claw danish gingerbread. Croissant gingerbread chocolate cake apple pie sweet roll cotton candy. Jelly jelly icing toffee cotton candy. Soufflé tart sweet roll chocolate sesame snaps fruitcake carrot cake. Wafer biscuit cotton candy sweet icing.
    </p>

[/html]

0

168

#pun-index .category h2, #pun-stats h2 {
    background: #5c617b;
    width: 1010px;
    height: 30px;
    padding: 0 !important;
    border: none;
    margin-top: -6px !important;
    margin-bottom: 2px !important;
    text-align: right;
    margin-left: -10px;
    font-family: Alice;
}

0

169

[hideprofile][html]<style>
*,
*::after,
*::before {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  --background-color: hsl(180, 20%, 90%);

  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;

  min-height: 100vh;
  padding: 2rem;

  color: hsla(0, 0%, 0%, .6);
  background: var(--background-color);
  text-align: center;
}

h1 {
  font-size: 3.2rem;
  padding-top: 2rem;
}

h1+p {
  font-size: 1.8rem;
  padding: 2rem 0 3rem;
}

.main {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.wrap {
  margin: 2rem;

  transform-style: preserve-3d;
  transform: perspective(100rem);

  cursor: pointer;
}

.container {
  --rX: 0;
  --rY: 0;
  --bX: 50%;
  --bY: 80%;

  width: 30rem;
  height: 36rem;
  border: 1px solid var(--background-color);
  border-radius: 1.6rem;
  padding: 4rem;

  display: flex;
  align-items: flex-end;

  position: relative;
  transform: rotateX(calc(var(--rX) * 1deg)) rotateY(calc(var(--rY) * 1deg));

  background: linear-gradient(hsla(0, 0%, 100%, .1), hsla(0, 0%, 100%, .1)), url("https://images.unsplash.com/photo-1559113513-d5e09c78b9dd?ixlib=rb-1.2.1&q=80&fm=jpg&crop=entropy&cs=tinysrgb&w=1080&fit=max&ixid=eyJhcHBfaWQiOjF9");
  background-position: var(--bX) var(--bY);
  background-size: 40rem auto;
  box-shadow: 0 0 3rem .5rem hsla(0, 0%, 0%, .2);

  transition: transform .6s 1s;
}

.container::before,
.container::after {
  content: "";

  width: 2rem;
  height: 2rem;
  border: 1px solid #fff;

  position: absolute;
  z-index: 2;

  opacity: .3;
  transition: .3s;
}

.container::before {
  top: 2rem;
  right: 2rem;

  border-bottom-width: 0;
  border-left-width: 0;
}

.container::after {
  bottom: 2rem;
  left: 2rem;

  border-top-width: 0;
  border-right-width: 0;
}

.container--active {
  transition: none;
}

.container--2 {
  filter: hue-rotate(80deg) saturate(140%);
}

.container--3 {
  filter: hue-rotate(160deg) saturate(140%);
}

.container p {
  color: hsla(0, 0%, 100%, .6);
  font-size: 2.2rem;
}

.wrap:hover .container::before,
.wrap:hover .container::after {
  width: calc(100% - 4rem);
  height: calc(100% - 4rem);
}

.abs-site-link {
  position: fixed;
  bottom: 20px;
  left: 20px;
  color: hsla(0, 0%, 0%, .6);
  font-size: 1.6rem;
}
</style>
<script>
// by
// abubakersaeed.netlify.com | @AbubakerSaeed96
// ============================================

// Inspiration:
// Tilt.js: https://gijsroge.github.io/tilt.js/
// Andy Merskin's parallax depth cards pen: https://codepen.io/andymerskin/full/XNMWvQ/

// Thank You for Viewing

class parallaxTiltEffect {

  constructor({element, tiltEffect}) {

    this.element = element;
    this.container = this.element.querySelector(".container");
    this.size = [300, 360];
    [this.w, this.h] = this.size;

    this.tiltEffect = tiltEffect;

    this.mouseOnComponent = false;

    this.handleMouseMove = this.handleMouseMove.bind(this);
    this.handleMouseEnter = this.handleMouseEnter.bind(this);
    this.handleMouseLeave = this.handleMouseLeave.bind(this);
    this.defaultStates = this.defaultStates.bind(this);
    this.setProperty = this.setProperty.bind(this);
    this.init = this.init.bind(this);

    this.init();
  }

  handleMouseMove(event) {
    const {offsetX, offsetY} = event;

    let X;
    let Y;

    if (this.tiltEffect === "reverse") {
      X = ((offsetX - (this.w/2)) / 3) / 3;
      Y = (-(offsetY - (this.h/2)) / 3) / 3;
    }

    else if (this.tiltEffect === "normal") {
      X = (-(offsetX - (this.w/2)) / 3) / 3;
      Y = ((offsetY - (this.h/2)) / 3) / 3;
    }

    this.setProperty('--rY', X.toFixed(2));
    this.setProperty('--rX', Y.toFixed(2));

    this.setProperty('--bY', (80 - (X/4).toFixed(2)) + '%');
    this.setProperty('--bX', (50 - (Y/4).toFixed(2)) + '%');
  }

  handleMouseEnter() {
    this.mouseOnComponent = true;
    this.container.classList.add("container--active");
  }

  handleMouseLeave() {
    this.mouseOnComponent = false;
    this.defaultStates();
  }

  defaultStates() {
    this.container.classList.remove("container--active");
    this.setProperty('--rY', 0);
    this.setProperty('--rX', 0);
    this.setProperty('--bY', '80%');
    this.setProperty('--bX', '50%');
  }

  setProperty(p, v) {
    return this.container.style.setProperty(p, v);
  }

  init() {
    this.element.addEventListener('mousemove', this.handleMouseMove);
    this.element.addEventListener('mouseenter', this.handleMouseEnter);
    this.element.addEventListener('mouseleave', this.handleMouseLeave);
  }

}

const $ = e => document.querySelector(e);

const wrap1 = new parallaxTiltEffect({
  element: $('.wrap--1'),
  tiltEffect: 'reverse'
});

const wrap2 = new parallaxTiltEffect({
  element: $('.wrap--2'),
  tiltEffect: 'normal'
});

const wrap3 = new parallaxTiltEffect({
  element: $('.wrap--3'),
  tiltEffect: 'reverse'
});
</script>
<h1>Parallax Tilt Effect Cards</h1>
<p>Hover over the cards.</p>

<section class="main">

  <div class="wrap wrap--1">
    <div class="container container--1">
      <p>01. Normal</p>
    </div>
  </div>

  <div class="wrap wrap--2">
    <div class="container container--2">
      <p>02. Reverse</p>
    </div>
  </div>

  <div class="wrap wrap--3">
    <div class="container container--3">
      <p>03. Normal</p>
    </div>
  </div>

</section>

[/html]

0

170

[html]
<style>

body
{
  background-color:#141019;
  background: radial-gradient(at 50% -20%, #908392, #0d060e) fixed;
}

#handboy
{
   animation: swing ease-in-out 1.3s infinite alternate;
    transform-origin: 98% 98%;
    transform-box: fill-box;
   
}

#girllight
{
   animation: swing ease-in-out 1.3s infinite alternate;
    transform-origin: 0% 97%;
    transform-box: fill-box;
}

#hairgirl
{
    animation: swinghair ease-in-out 1.3s infinite alternate;
   transform-origin: 60% 0%;
    transform-box: fill-box;
 
}

#zero
{
  transform-origin:bottom;
  transform-box:fill-box;
 
}

/*************swing************/
@keyframes swing {
    0% { transform: rotate(10deg); }
    100% { transform: rotate(-10deg); }
}

/*************swing hair************/
@keyframes swinghair {
    0% { transform: rotate(6deg); }
    100% { transform: rotate(-6deg); }
}
</style>
<script>
anime({
  targets: '.row svg',
  translateY: 10,
  autoplay: true,
  loop: true,
  easing: 'easeInOutSine',
  direction: 'alternate'
});

anime({
  targets: '#zero',
  translateX: 10,
  autoplay: true,
  loop: true,
  easing: 'easeInOutSine',
  direction: 'alternate',
  scale: [{value: 1}, {value: 1.4}, {value: 1, delay: 250}],
    rotateY: {value: '+=180', delay: 200},
});

</script>
<a  target="_blank" href="https://codepen.io/uiswarup/full/ZExprjr">
  <div class="container">
  <div class="row">
    <div class="col-sm-12 col-md-12 mt-5 mb-5">
      <svg width="100%" height="auto" viewBox="0 0 636 324" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="OBJECTS">
<g id="Group">
<path id="Vector" d="M101.3 255.2C101.3 255.2 111.1 272.6 181.8 280.5C252.5 288.4 288.2 314.9 333.1 322.8C378 330.7 433.6 278.5 481.8 286.5C530 294.4 588.2 264.2 592.8 255.2H101.3Z" fill="#2F1829"/>
<path id="Vector_2" d="M611.9 251.7H601.4L140.8 251.8C140.8 251.8 136.1 248.1 128.9 241.8C125.8 239.1 122.2 235.9 118.3 232.3C116.9 231 115.4 229.6 113.9 228.2C100.2 215.3 83.6 198.2 70.1 180.1C55.9 161 45.1 140.6 44.8 122.6C44.8 122.2 44.8 121.8 44.8 121.4C45 104 48.4 85.1 56.9 67.7C61.9 57.5 68.5 47.8 77.3 39C100.1 16.2 137.1 0.300011 194.5 0.800011C261.4 1.30001 330.8 26.3 393.5 60.8C406.6 68 419.4 75.7 431.9 83.6C441.1 89.5 450.1 95.5 458.8 101.6C483.1 118.6 505.6 136.4 525.5 153.8C570.6 193.1 602.3 230.4 611.9 251.7Z" fill="url(#paint0_linear)"/>
<path id="Vector_3" opacity="0.45" d="M611.9 251.7H601.4L140.8 251.8C140.8 251.8 136.1 248.1 128.9 241.8C125.8 239.1 122.2 235.9 118.3 232.3C116.9 231 115.4 229.6 113.9 228.2C100.2 215.3 83.6 198.2 70.1 180.1C55.9 161 45.1 140.6 44.8 122.6C50.5 119.6 63.9 113.5 75 116.3C89.5 119.9 92.6 137.2 92.6 137.2C92.6 137.2 103 128.8 113.9 132.8C124.8 136.8 126.5 148.4 126.5 148.4C126.5 148.4 139.4 141.8 150.9 144.6C162.5 147.4 171.8 158.6 159.4 165.9C147.1 173.1 133.3 167.5 132.9 167.4C133.1 167.6 137.9 174.2 129.1 182.2C120.1 190.4 154.6 197.5 154.6 197.5C154.6 197.5 155.9 175.1 179 177.6C202.1 180.1 220.8 192.6 220.8 192.6C220.8 192.6 222 158.3 240.5 152C259 145.7 268.5 165.9 268.5 165.9C268.5 165.9 309.5 139.4 323.4 164.1C337.3 188.8 337.9 193.5 337.9 193.5C337.9 193.5 349.8 128.5 387 131.5C424.2 134.5 431.1 160.3 430.5 162.9C429.9 165.5 441.2 146.2 452.4 156.7C463.6 167.2 470.1 181.8 470.1 181.8L529 174.9C529 174.9 523 163.3 525.4 153.8C570.6 193.1 602.3 230.4 611.9 251.7Z" fill="url(#paint1_linear)"/>
<path id="Vector_4" d="M431.9 83.6H257.8C279.6 83.6 283.9 75.7 296.8 71.4C297.4 71.2 298 71 298.6 70.9C310.7 67.8 320.6 74.7 328.3 74.4C336.4 74.1 345.3 65.5 354.6 62.5C357.7 61.5 361 61.8 364.3 62.6C370.8 64.1 377.6 67.4 384.5 66.1C390.5 65 391 62.5 393.4 60.8C406.6 68 419.5 75.6 431.9 83.6Z" fill="url(#paint2_linear)"/>
<path id="Vector_5" d="M206.5 67.7H56.9C61.8 57.7 68.3 48.1 76.9 39.4C77 39.3 77.2 39.1 77.3 39C80.8 38.3 84.6 37.8 88.7 37.6C112.4 36.6 117.4 54.5 117.4 54.5C117.4 54.5 123.6 46.2 134.8 50.2C146 54.2 142.1 59.1 151 61.8C152.2 62.1 153.4 62.2 154.7 62.1C163.2 61.4 173.9 52.1 183.4 55.5C194.4 59.4 187.3 67.7 206.5 67.7Z" fill="url(#paint3_linear)"/>
<path id="Vector_6" d="M631.8 258.5H75.5C73.6 258.5 72.1 257 72.1 255.1C72.1 253.2 73.6 251.7 75.5 251.7H631.8C633.7 251.7 635.2 253.2 635.2 255.1C635.2 257 633.7 258.5 631.8 258.5Z" fill="#2F1829"/>
<path id="Vector_7" opacity="0.25" d="M364.4 62.5C354.5 65 343.3 75.8 336 77.4C326.9 79.4 316.3 74.8 306 72.2C302.9 71.4 300.5 71 298.6 70.8C310.7 67.7 320.6 74.6 328.3 74.3C336.4 74 345.3 65.4 354.6 62.4C357.8 61.4 361 61.7 364.4 62.5Z" fill="white"/>
<path id="Vector_8" opacity="0.25" d="M154.7 62.1C145.8 66.8 141.6 56.2 133.9 52.7C125 48.7 118.7 61.2 116.1 59C113.5 56.9 112.3 47.6 102.2 42.8C96.5 40.1 85.4 39.5 77 39.5C77.1 39.4 77.3 39.2 77.4 39.1C80.9 38.4 84.7 37.9 88.8 37.7C112.5 36.7 117.5 54.6 117.5 54.6C117.5 54.6 123.7 46.3 134.9 50.3C146.1 54.3 142.2 59.2 151.1 61.9C152.2 62.1 153.5 62.2 154.7 62.1Z" fill="white"/>
<path id="Vector_9" d="M394.9 40.3C394.9 40.3 457.4 96.1 482.1 88.5C507 80.9 351.2 7.20001 394.9 40.3Z" fill="url(#paint4_linear)"/>
<path id="Vector_10" d="M35 97C35 97 13.7 134.4 50.9 173.8C59.5 182.9 60.5 199.9 43.3 200.8C26.1 201.7 -0.599994 159.8 0.300006 126.1C1.30001 92.4 40.8 77.1 35 97Z" fill="url(#paint5_linear)"/>
<path id="Vector_11" d="M461 295.7C461 295.7 425 303.6 415.8 315.9C411.3 321.9 429.2 321 444.5 314.4C460.5 307.5 473.6 294.9 461 295.7Z" fill="#2F1829"/>
<path id="Vector_12" d="M200.2 293.4C200.2 293.4 214.2 293.1 226.5 297.9C238.8 302.7 241.5 317.4 229.2 319.2C217 321 189.1 304.7 190.7 298.1C191.9 293.1 200.2 293.4 200.2 293.4Z" fill="#2F1829"/>
</g>
<path id="Vector_13" d="M136.3 213.7L128.4 241.1C125.3 238.4 121.7 235.2 117.8 231.6L116.1 228.4C116.1 228.4 119.1 193.2 109.2 179.1C118.7 185.7 123.3 212.4 123.3 212.4L121.8 214.4H123.3C123.3 214.4 125.7 218.9 126.6 225.5C132.7 193.9 126.8 178.6 126.6 178.1C126.8 178.4 131.6 184.2 134.4 193.8C137.3 203.6 136.2 209.7 136.2 209.7L133.8 213.6H136.3V213.7Z" fill="black"/>
<g id="Group_2">
<g id="Group_3">
<path id="Vector_14" d="M376.1 240.6C376.1 240.6 378.7 238.3 380.6 235.8C380.9 235.4 381.3 234.9 381.5 234.5L382.7 235.9L382.3 233.7C382.3 233.7 390.4 230.9 393.3 223.1C391.5 231.6 388.1 238 384.1 240.9C382.3 242.2 380.5 242.8 378.6 242.7C372.3 242.5 376.1 240.6 376.1 240.6Z" fill="#F3475C"/>
<g id="Group_4" opacity="0.25">
<path id="Vector_15" opacity="0.25" d="M393.3 223.1C392.6 225.3 391.8 227.5 390.8 229.6C389.8 231.7 388.7 233.7 387.4 235.6C386.1 237.5 384.5 239.3 382.6 240.6C380.7 242 378.3 242.7 376 242.6C375.9 242.6 375.8 242.5 375.8 242.4C375.8 242.3 375.9 242.2 376 242.2C378.3 242.4 380.5 241.7 382.4 240.4C384.3 239.1 385.9 237.4 387.2 235.5C388.6 233.6 389.7 231.6 390.7 229.5C391.7 227.5 392.5 225.3 393.3 223.1Z" fill="white"/>
</g>
<path id="Vector_16" opacity="0.25" d="M376.1 240.6C376.1 240.6 378.7 238.3 380.6 235.8C381.4 238.2 383.1 240 384.1 240.9C382.3 242.2 380.5 242.8 378.6 242.7C372.3 242.5 376.1 240.6 376.1 240.6Z" fill="black"/>
</g>
<path id="Vector_17" d="M313.5 225.2C313.5 225.2 294.9 207.7 297.9 184.4C299.8 195.2 307.7 208.1 307.7 208.1L306.7 211L310.2 210.3C310.2 210.3 314.6 183.7 304.7 170.8C318.1 184.6 317.9 205.1 317.9 205.1L315.4 208.9L317.9 210C317.9 210 315 220 323.7 216.1C332.4 212.3 337.9 179.2 330 170.8C339.4 178.9 337.9 206.8 337.9 207.7C337.9 208.6 333.8 212.4 333.8 212.4L336.9 214.7C336.9 214.7 335 233.6 313.5 225.2Z" fill="black"/>
<path id="Vector_18" d="M398.8 250C398.8 250 392.3 243.9 393.4 235.8C394.1 239.6 396.8 244 396.8 244L396.5 245L397.7 244.8C397.7 244.8 399.2 235.5 395.8 231.1C400.4 235.9 400.4 243 400.4 243L399.5 244.3L400.4 244.7C400.4 244.7 399.4 248.2 402.4 246.8C405.4 245.5 407.3 234 404.6 231.1C407.9 233.9 407.3 243.6 407.3 243.9C407.3 244.2 405.9 245.5 405.9 245.5L407 246.3C406.9 246.4 406.3 253 398.8 250Z" fill="black"/>
<g id="Group_5">
<path id="Vector_19" d="M374 241.1L368.7 241.5C372.5 238.1 371.9 234.8 371.4 233.3C371.2 232.8 371 232.4 371 232.4L373.5 232L372.1 230.1C372.1 230.1 376.6 224.9 378.3 211.1C383.6 220.4 381.5 228.8 378.7 234.3C376.6 238.6 374 241.1 374 241.1Z" fill="#FFCA51"/>
<g id="Group_6" opacity="0.25">
<path id="Vector_20" opacity="0.25" d="M378.3 211.1C378.9 213.7 379.2 216.3 379.3 218.9C379.4 221.5 379.4 224.2 379 226.8C378.6 229.4 378 232 377 234.4C376 236.8 374.5 239.1 372.7 241.1C372.6 241.2 372.5 241.2 372.4 241.1C372.3 241 372.3 240.9 372.4 240.8C374.2 238.9 375.6 236.7 376.7 234.3C377.7 231.9 378.4 229.3 378.8 226.8C379.2 224.2 379.3 221.6 379.2 219C379.1 216.3 378.9 213.7 378.3 211.1Z" fill="white"/>
</g>
<path id="Vector_21" opacity="0.25" d="M374 241.1L368.7 241.5C372.5 238.1 371.9 234.8 371.4 233.3C374.2 235 377 234.8 378.7 234.3C376.6 238.6 374 241.1 374 241.1Z" fill="black"/>
</g>
<path id="Vector_22" d="M408.3 251.1H323L336.7 240C336.7 240 354.9 230.6 362.5 232.6C370.1 234.5 368.9 240.9 368.9 240.9C368.9 240.9 369.4 240.4 370.1 239.8C371.8 238.5 375 236.7 378.2 238.6C382.8 241.4 382.1 245 382.1 245.2C382.2 245.1 385 242.4 387.3 243.2C389.6 244.1 390.5 246.6 390.5 246.6C390.5 246.6 393.5 242.5 396 244C398.5 245.5 400 248.6 400 248.6C400 248.6 404 244.6 408.3 251.1Z" fill="#982245"/>
<path id="Vector_23" opacity="0.25" d="M391.9 251.1H323.1L336.8 240C336.8 240 355 230.6 362.6 232.6C370.2 234.5 369 240.9 369 240.9C369 240.9 369.5 240.4 370.2 239.8C370.4 241.2 370.4 242.6 370.2 244C370.2 244 374.1 242.5 376.6 244.6C379.1 246.7 378.4 248.6 378.4 248.6C378.4 248.6 381.8 246.6 385.7 248.6C386.8 249.3 389.3 250.2 391.9 251.1Z" fill="black"/>
</g>
<g id="Group_7">
<path id="Vector_24" d="M237.3 191.1V97.5H201.8V97.8L159 166.6L140.3 196.7L142.4 218.4H201.8V251H237.3V218.4H253V191H237.3V191.1ZM201.8 191.1H174.2L199.6 147.4L201.8 143.8V191.1Z" fill="url(#paint6_linear)"/>

<path id="Vector_26" d="M487.5 191.1V97.5H452V97.8L390.5 196.7L392.6 218.4H452V251H487.5V218.4H503.1V191H487.5V191.1ZM452 191.1H424.4L449.8 147.4L452 143.8V191.1V191.1Z" fill="url(#paint8_linear)"/>
<path id="Vector_27" opacity="0.25" d="M230.7 97.5C225.9 103.6 209.6 101.4 206 101.8C201.8 102.2 172.9 153.1 169 159.6C166.4 163.8 161.9 165.8 159.1 166.7L201.9 97.9V97.6H230.7V97.5Z" fill="white"/>
<path id="Vector_28" opacity="0.25" d="M487.5 97.5V168.3C478.4 160.7 483.4 104.9 482 103.1C480.5 101.1 461.5 102.4 458 101.3C455.7 100.6 453.8 98.6 452.8 97.4H487.5V97.5Z" fill="white"/>
<path id="Vector_29" opacity="0.25" d="M329.1 232.4C300.5 233.7 303.8 192.4 303.8 192.4C304 202.9 305.4 210.6 308.1 215.6C311 220.9 315.6 223.6 321.8 223.6C327.8 223.6 332.3 221 335.2 215.8C338.1 210.6 339.6 202.5 339.6 191.5V153.5C339.6 142.5 338.2 134.2 335.3 128.8C332.4 123.3 327.8 120.6 321.6 120.6C321.6 120.6 339.3 118.4 346.6 144.7C353.8 171 357.8 231.1 329.1 232.4Z" fill="black"/>

</g>
  <g id="zero">
    <path id="Vector_25" d="M361.2 110.3C351.9 99 338.7 93.3 321.6 93.3C304.6 93.3 291.4 98.9 282.1 110.2C272.8 121.5 268.1 137.4 268.1 158.2V186.3C268.1 206.9 272.8 222.9 282.1 234.2C291.5 245.5 304.7 251.2 321.8 251.2C338.7 251.2 351.9 245.6 361.2 234.3C370.5 223 375.2 207.1 375.2 186.3V158.3C375.2 137.6 370.5 121.6 361.2 110.3ZM303.8 151.3C304 141 305.5 133.4 308.3 128.3C311.1 123.2 315.5 120.7 321.6 120.7C327.9 120.7 332.4 123.4 335.3 128.9C338.2 134.4 339.6 142.6 339.6 153.6V191.6C339.5 202.6 338.1 210.7 335.2 215.9C332.3 221.1 327.8 223.7 321.8 223.7C315.5 223.7 311 221 308.1 215.7C305.4 210.7 303.9 202.9 303.8 192.5C303.8 191.9 303.8 191.2 303.8 190.6V151.3V151.3Z" fill="url(#paint7_linear)"/>
    <path id="Vector_30" d="M291.5 110.1C291.5 110.1 279.6 101.5 278.3 88.1C286.9 90.5 291.5 101 291.5 101C291.5 101 289.3 91.4 291.5 84.9C297.8 94.1 296.1 101.6 291.5 110.1Z" fill="url(#paint9_linear)"/>
  </g>
<g id="Group_8">
<g id="Group_9">
<path id="Vector_31" d="M569.9 241.4V244.7C569.3 244.6 567.9 244.7 566.7 244.9C565.9 245 565.2 245 564.8 245.1L564.5 242.3L565.8 242.1L569.9 241.4Z" fill="url(#paint10_linear)"/>
<g id="handboy">
<path id="Vector_32" d="M529.1 188C529.1 188 529.2 188.3 528.8 188.7C528.5 189 528 189.3 527.1 189.7C521.7 191.8 510.6 186.7 504.5 183.3C498.5 179.9 481.3 182.7 469.7 181.1C458.1 179.5 453.2 173.3 442.8 170.7C432.4 168.1 393.6 179.3 391.4 170.6C389.2 161.9 432.8 77.2 436.6 83.1C440.3 89 453.2 89.4 462.3 94.1C471.4 98.8 479.1 122.1 489.2 124.4C490.6 124.7 491.9 125.2 493.2 125.9C501.2 130.2 507 140.9 507.2 149.7C507.4 159.9 521.4 168.1 526.5 173.6C531.5 179.2 529.1 188 529.1 188Z" fill="url(#paint11_linear)"/>
<path id="Vector_33" opacity="0.25" d="M529.1 188C529.1 188 529.2 188.3 528.8 188.7C530.6 177.5 520.3 172.2 510.8 164.4C501.1 156.3 505.2 150.2 503.2 141.9C502 137 497 130.5 493.2 126C501.2 130.3 507 141 507.2 149.8C507.4 160 521.4 168.2 526.5 173.7C531.5 179.2 529.1 188 529.1 188Z" fill="white"/>
<path id="Vector_34" d="M528.9 186.5L526.3 188.9C525.9 189.2 526.1 189.8 526.5 190L528.7 190.7L533.7 196.2C533.9 196.4 534.3 196.5 534.5 196.2L535.3 195.4C535.5 195.2 535.6 194.8 535.3 194.6L530.3 189.1L529.8 186.9C529.8 186.3 529.2 186.1 528.9 186.5Z" fill="#2F1829"/>
<path id="Vector_35" d="M548.7 190C548 190.9 547.2 192 546.3 193.1C546 193.5 545.6 193.9 545.3 194.3C543.9 196 542.7 197.4 542.3 197.5C541.3 197.7 535.7 194.5 534.9 194.5C534.1 194.5 532.2 195.9 531.7 195.7C531.2 195.6 528.5 193.1 528.6 192.4C528.7 191.8 531.1 189.6 532.3 189.3C532.6 189.2 533.4 189.3 534.3 189.5H534.4C536.7 190 540.1 191.1 540.6 190.8C540.9 190.7 541.4 189.8 542 188.7C542.2 188.3 542.4 187.9 542.6 187.5C542.9 187 543.1 186.5 543.4 186C543.6 185.5 543.8 185.1 544 184.8C544.5 185.6 545.3 186.6 546.2 187.5C547.2 188.8 548.2 189.8 548.7 190Z" fill="url(#paint12_linear)"/>
</g>
<path id="Vector_36" d="M571.4 196.6C571.4 198.4 571.4 200.2 571.3 201.6C570.9 207.3 570.4 211.9 568.5 212C566.6 212.1 566.2 196.7 566.3 195.8C566.3 195.6 566.3 195.2 566.4 194.7C566.5 193 566.5 190 566.5 188.7C566.5 188.4 566.5 188.2 566.5 188.1L566.9 187.9L571.1 185.2C571.1 185.2 571.3 188.8 571.5 193C571.5 193.6 571.5 194.1 571.5 194.7C571.4 195.3 571.4 195.9 571.4 196.6Z" fill="url(#paint13_linear)"/>
<path id="Vector_37" opacity="0.25" d="M571.4 196.6C570.4 197.4 568.8 198.5 567.2 198.6C564.6 198.7 568.4 193.2 569.3 193.1C569.6 193.1 570.4 193 571.3 193C571.3 193.6 571.3 194.1 571.3 194.7C571.4 195.3 571.4 195.9 571.4 196.6Z" fill="black"/>
<path id="Vector_38" d="M571.4 194.7C570.3 195.1 568.9 195.3 567 194.9C566.7 194.8 566.5 194.8 566.3 194.6C564.7 193.7 565.3 191 566.4 188.6C566.5 188.3 566.7 188 566.8 187.8L571 185.1C571 185.1 571.3 189.8 571.4 194.7Z" fill="#2F1829"/>
<path id="Vector_39" d="M562.5 164.2C562.4 164.8 562.2 165.5 561.7 166.2C561.2 167.1 560.4 168 559.7 168.6C559.1 169 558.6 169.3 558.2 169.3C556.9 169.1 555.2 166.9 555.1 166.5C555.1 166.1 556.5 165.9 556.4 164.7C556.2 163.5 555.4 163.3 554.9 163.5C554.3 163.7 553.6 165 553.6 166.2C553.2 166.1 552.5 164.7 551.1 163.8C550.7 163.6 550.3 163.4 549.8 163.3C549.2 163.2 548.5 163.2 547.7 163.5C547.3 159.1 550 157.2 552 158C552 158 551.3 156.5 550.2 156.2C552.7 156.6 553.3 158.7 553.3 158.7C553.3 158.7 554 155.8 557.1 155.4C560.2 155 560.8 159.1 560.8 159.1C560.8 159.1 561.5 157.1 561.2 155.9C561.8 157.5 561.1 160.2 561.1 160.2C561.1 160.2 562.6 160.6 563 162.6C561.7 161.6 561.7 161.7 561.7 161.7C561.7 161.7 562.6 162.3 562.5 164.2Z" fill="#2F172B"/>
<path id="Vector_40" d="M559.7 168.5C559.5 169.2 559.2 169.8 559.1 170.1C558.8 170.7 555.6 173.4 553.3 170.3C551.4 167.7 551.1 164.7 551.1 163.8C552.5 164.6 553.2 166.1 553.6 166.2C553.6 165 554.3 163.8 554.9 163.5C555.5 163.3 556.2 163.5 556.4 164.7C556.6 165.9 555.1 166.1 555.1 166.5C555.1 166.9 556.8 169.1 558.2 169.3C558.6 169.2 559.1 169 559.7 168.5Z" fill="url(#paint14_linear)"/>
<path id="Vector_41" d="M561.3 155.6C561.2 155.4 561.2 155.3 561.1 155.2C561.2 155.3 561.2 155.5 561.3 155.6Z" fill="#2F172B"/>
<path id="Vector_42" d="M572.4 184.6C572.1 185.2 571.7 185.7 571.4 186.2C571.3 186.3 571.2 186.5 571.1 186.6C570.1 187.8 569.2 188.5 569.2 188.5C569.2 188.5 569.2 188.5 569.2 188.6C569.2 188.7 569.2 188.8 569.3 189C569.4 189.4 569.5 190.1 569.6 191C569.6 191.1 569.6 191.3 569.7 191.4C569.8 191.8 569.8 192.2 569.8 192.6C569.8 192.8 569.9 193.1 569.9 193.3C569.9 193.4 569.9 193.6 569.9 193.7C570 194.4 570 195 570 195.7C570 195.8 570 196 570 196.1C570 196.9 569.9 197.6 569.8 198.1C569.8 198.3 569.7 198.4 569.7 198.5C569.6 198.7 569.6 198.8 569.5 198.9C569.4 199 569.2 199.1 569 199.2C567.5 199.9 563.7 199.9 559.8 199.7C556.5 199.5 553.2 199.2 551.5 198.9C551 198.8 550.6 198.7 550.3 198.5C550.1 198.4 549.9 198.2 549.8 198.1C549.7 198 549.6 197.9 549.6 197.8C549.3 197.3 549.2 196.8 549.2 196.1C549.2 196 549.2 195.8 549.2 195.7C549.3 195.1 549.4 194.5 549.5 193.8V193.7C549.5 193.6 549.6 193.4 549.6 193.3C549.8 192.6 550 192 550.1 191.3C550.1 191.2 550.1 191.1 550.2 191V190.9C550.4 190.1 550.5 189.4 550.5 188.9C550.5 188.7 550.5 188.6 550.6 188.5C550.7 187.2 550.6 186.8 550.6 186.8C550.6 186.8 550.3 187.6 549.8 188.5C549.7 188.6 549.6 188.8 549.6 188.9C549.3 189.4 548.9 189.9 548.7 189.9C548.7 189.9 548.6 189.9 548.5 189.9C548.2 189.8 547.8 189.4 547.3 188.9C547.2 188.8 547 188.6 546.9 188.5C546.6 188.2 546.3 187.9 546 187.5C545.7 187.2 545.4 186.8 545.1 186.5C545 186.4 544.9 186.2 544.8 186.1C544.4 185.6 544.1 185.2 543.8 184.8C543.6 184.5 543.5 184.3 543.4 184.1C543.3 184 543.3 183.9 543.3 183.8V183.7C543.4 183.4 543.6 182.6 543.9 181.7C544 181.6 544 181.4 544.1 181.3C544.3 180.7 544.6 180 545 179.3C545.1 179.2 545.1 179 545.2 178.9C545.5 178.3 545.9 177.6 546.2 176.9C546.3 176.8 546.4 176.6 546.4 176.5C546.8 175.8 547.2 175.1 547.6 174.5C547.7 174.4 547.8 174.2 547.9 174.1C548.5 173.3 549 172.6 549.6 172.1C549.8 171.9 549.9 171.8 550.1 171.7C550.2 171.6 550.3 171.6 550.4 171.5C551.2 171 552 170.6 552.8 170.3C555.5 169.3 557.8 169.4 557.8 169.4C559.1 169.4 560.4 169.7 561.7 170.2C562.6 170.6 563.5 171.1 564.4 171.7C564.6 171.8 564.8 172 565 172.1C565.7 172.7 566.4 173.3 567 174.1C567.1 174.2 567.2 174.4 567.4 174.5C567.9 175.1 568.4 175.8 568.8 176.5C568.9 176.6 569 176.8 569.1 176.9C569.5 177.5 569.8 178.2 570.2 178.9C570.3 179 570.3 179.2 570.4 179.3C570.7 179.9 571 180.6 571.3 181.3C571.4 181.4 571.4 181.6 571.5 181.7C571.7 182.3 572 183 572.2 183.7C572.2 183.8 572.3 184 572.3 184.1C572.4 184.3 572.4 184.5 572.4 184.6Z" fill="#FFCA51"/>
<g id="Group_10">
<path id="Vector_43" opacity="0.25" d="M565.2 172.2H549.9C550.1 172 550.2 171.9 550.4 171.8H564.6C564.8 171.9 565 172 565.2 172.2Z" fill="white"/>
<path id="Vector_44" opacity="0.25" d="M567.6 174.6H548C548.1 174.5 548.2 174.3 548.3 174.2H567.3C567.3 174.3 567.4 174.4 567.6 174.6Z" fill="white"/>
<path id="Vector_45" opacity="0.25" d="M569.2 177H546.4C546.5 176.9 546.6 176.7 546.6 176.6H569C569.1 176.7 569.1 176.8 569.2 177Z" fill="white"/>
<path id="Vector_46" opacity="0.25" d="M570.5 179.4H545.2C545.3 179.3 545.3 179.1 545.4 179H570.3C570.4 179.1 570.4 179.2 570.5 179.4Z" fill="white"/>
<path id="Vector_47" opacity="0.25" d="M571.5 181.8H544.2C544.3 181.7 544.3 181.5 544.4 181.4H571.4C571.4 181.5 571.5 181.7 571.5 181.8Z" fill="white"/>
<path id="Vector_48" opacity="0.25" d="M572.3 184.2H543.6C543.5 184.1 543.5 184 543.5 183.9V183.8H572.2C572.2 183.9 572.3 184 572.3 184.2Z" fill="white"/>
<path id="Vector_49" opacity="0.25" d="M571.4 186.2C571.3 186.3 571.2 186.5 571.1 186.6H545.4C545.3 186.5 545.2 186.3 545.1 186.2H571.4Z" fill="white"/>
<path id="Vector_50" opacity="0.25" d="M547.1 188.6H550C549.9 188.7 549.8 188.9 549.8 189H547.5C547.4 188.9 547.3 188.7 547.1 188.6Z" fill="white"/>
<path id="Vector_51" opacity="0.25" d="M569.3 189H550.7C550.7 188.8 550.7 188.7 550.8 188.6H569.3C569.3 188.7 569.3 188.8 569.3 189Z" fill="white"/>
<path id="Vector_52" opacity="0.25" d="M569.7 191.4H550.3C550.3 191.3 550.3 191.2 550.4 191.1V191H569.7C569.7 191.1 569.7 191.3 569.7 191.4Z" fill="white"/>
<path id="Vector_53" opacity="0.25" d="M570 193.8H549.7C549.7 193.7 549.8 193.5 549.8 193.4H570C569.9 193.6 570 193.7 570 193.8Z" fill="white"/>
<path id="Vector_54" opacity="0.25" d="M570.1 195.8C570.1 195.9 570.1 196.1 570.1 196.2H549.3C549.3 196.1 549.3 195.9 549.3 195.8H570.1Z" fill="white"/>
<path id="Vector_55" opacity="0.25" d="M569.9 198.2C569.9 198.4 569.8 198.5 569.8 198.6H550.5C550.3 198.5 550.1 198.3 550 198.2H569.9Z" fill="white"/>
</g>
<path id="Vector_56" d="M570.3 238.7C569.4 239.3 563.3 239.9 563.3 239.9L563.1 238.8L562 232.1L559.3 216.4L556.6 236.1L555.8 241.9C555.8 241.9 548.3 242.3 548.3 240.5C548.3 240.3 548.3 239.5 548.4 238.2C548.6 230.2 549.5 203.9 549.7 198C550 198.6 550.7 199 551.7 199.1C551.8 199.1 551.9 199.1 552 199.1C555.8 199.7 566.5 200.6 569.1 199.4C569.2 200.4 569.3 201.9 569.4 203.8C569.8 211.4 570.1 225.2 570.3 232.9C570.3 236.4 570.3 238.7 570.3 238.7Z" fill="#2F1829"/>
<path id="Vector_57" opacity="0.25" d="M562 232.1L559.3 216.4C559.3 216.4 560 210.1 560.3 209.3C560.6 208.6 562.5 209.1 563.3 208.6C563.7 209.6 561 211 560.8 214.3C560.7 216.6 561.5 226.7 562 232.1Z" fill="black"/>
<path id="Vector_58" opacity="0.25" d="M551.1 201.4C551.1 201.4 550.9 205 553.8 206.7" stroke="white" stroke-width="0.4635" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
<g id="Group_11" opacity="0.25">
<g id="Group_12" opacity="0.25">
<path id="Vector_59" opacity="0.25" d="M551.8 206.2L551.7 206.9" stroke="white" stroke-width="0.4635" stroke-linecap="round" stroke-linejoin="round"/>
<path id="Vector_60" opacity="0.25" d="M551.7 208.2L550.3 238" stroke="white" stroke-width="0.4635" stroke-linecap="round" stroke-linejoin="round" stroke-dasharray="1.39 1.39"/>
<path id="Vector_61" opacity="0.25" d="M550.2 238.7V239.4" stroke="white" stroke-width="0.4635" stroke-linecap="round" stroke-linejoin="round"/>
</g>
</g>
<path id="Vector_62" opacity="0.25" d="M562 209.6L564.7 237.9" stroke="white" stroke-width="0.4635" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round" stroke-dasharray="1.39 1.39"/>
<path id="Vector_63" opacity="0.25" d="M564.3 201.9C564.3 201.9 564 205.4 564.3 206C564.6 206.7 565.9 207.2 566.2 207.4C566.5 207.5 567.7 206.4 567.8 205.7C567.9 205 567.9 202 567.9 202C567.9 202 565.7 201.6 564.3 201.9Z" stroke="white" stroke-width="0.4635" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
<path id="Vector_64" opacity="0.25" d="M570.3 238.7C569.4 239.3 563.3 239.9 563.3 239.9L563.1 238.8C564.9 237.8 568.4 235.6 570.2 232.9C570.3 236.4 570.3 238.7 570.3 238.7Z" fill="black"/>
<path id="Vector_65" d="M570.7 241.3L569.9 241.4L564.5 242.2L564.1 242.3C563.3 242.4 562.6 241.9 562.4 241.1V241C562.3 240.2 562.8 239.5 563.6 239.3L570.2 238.3C571 238.2 571.7 238.7 571.9 239.5V239.6C572 240.4 571.5 241.2 570.7 241.3Z" fill="#4C3146"/>
<path id="Vector_66" opacity="0.25" d="M556.7 236L555.9 241.8C555.9 241.8 548.4 242.2 548.4 240.4C548.4 240.2 548.4 239.4 548.5 238.1C550.2 238 554.3 237.5 556.7 236Z" fill="black"/>
<path id="Vector_67" d="M556.5 242.2V242.3C556.4 243.1 555.7 243.7 554.9 243.6L549.2 243.1L548.3 243C547.5 242.9 546.9 242.2 547 241.4V241.3C547.1 240.5 547.8 239.9 548.6 240L555.2 240.6C556 240.7 556.6 241.4 556.5 242.2Z" fill="#4C3146"/>
<path id="Vector_68" opacity="0.25" d="M569.4 203.8C560.2 205 554 200.8 551.9 199.1C555.7 199.7 566.4 200.6 569 199.4C569.2 200.4 569.3 201.9 569.4 203.8Z" fill="black"/>
<path id="Vector_69" opacity="0.25" d="M550.4 191.1C551.1 187.8 550.8 186.9 550.8 186.9C550.8 186.9 549.6 189.9 548.9 190C548.6 190 547.4 188.9 546.2 187.6C547.2 187.3 548.7 186.8 549.5 185.9C550.7 184.5 550.6 178.5 551.1 178.5C551.6 178.5 552.7 189.6 549.6 193.9C549.9 193 550.2 192 550.4 191.1Z" fill="black"/>
<path id="Vector_70" opacity="0.25" d="M572.4 184.6C571 187.2 569.2 188.5 569.2 188.5C569.2 188.5 567.6 179.9 567.1 179.1C566.7 178.4 567.3 177.8 568.2 180.7C568.9 183 570.7 184.7 572.3 184.3C572.4 184.3 572.4 184.4 572.4 184.6Z" fill="black"/>
<path id="Vector_71" opacity="0.25" d="M569.5 199.1C569.4 199.2 569.2 199.3 569 199.4C567.5 200.1 563.7 200.1 559.8 199.9C562.4 199.6 568.7 198.2 569.8 192.7C570.1 195.2 570.3 198.2 569.5 199.1Z" fill="black"/>
<path id="Vector_72" opacity="0.25" d="M562 170.2C561.7 170.6 561.1 170.8 560.1 170.6C558.2 170.2 555.7 171 554.5 170.8C553.8 170.7 553.4 170.5 553.1 170.3C555.8 169.3 558.1 169.4 558.1 169.4C559.4 169.4 560.7 169.7 562 170.2Z" fill="black"/>
<path id="Vector_73" d="M548.7 190C548 190.9 547.2 192 546.3 193.1C544.4 192 542.9 190 542 188.8C542.8 187.4 543.6 185.7 544 184.9C544.5 185.7 545.3 186.7 546.2 187.6C547.2 188.8 548.2 189.8 548.7 190Z" fill="#2F1829"/>
<path id="Vector_74" opacity="0.25" d="M548.7 190C548 190.9 547.2 192 546.3 193.1C546 193.5 545.6 193.9 545.3 194.3C545.4 190.8 544.2 187.7 543.5 186.1C543.7 185.6 543.9 185.2 544.1 184.9C544.6 185.7 545.4 186.7 546.3 187.6C547.2 188.8 548.2 189.8 548.7 190Z" fill="black"/>
<path id="Vector_75" opacity="0.25" d="M542.7 187.6C542.7 188.6 541.7 190.1 541.5 190.5C541.2 191 541.4 193.3 541.1 193C540.8 192.7 540.7 191.6 540.3 191.2C539.9 190.9 535.3 189.7 534.5 189.5C536.8 190 540.2 191.1 540.7 190.8C541 190.7 541.5 189.8 542.1 188.7C542.3 188.5 542.5 188.1 542.7 187.6Z" fill="white"/>
<path id="Vector_76" opacity="0.25" d="M561.7 166.2C561.2 167.1 560.4 168 559.7 168.6C559.1 169 558.6 169.3 558.2 169.3C556.9 169.1 555.2 166.9 555.1 166.5C555.1 166.1 556.5 165.9 556.4 164.7C556.2 163.5 555.4 163.3 554.9 163.5C554.3 163.7 553.6 165 553.6 166.2C553.2 166.1 552.5 164.7 551.1 163.8C550.7 163.6 550.3 163.4 549.8 163.3C550.5 163.2 551.4 163.2 551.9 163.4C553.1 163.9 553.2 164.4 553.2 164.4C553.2 164.4 553.4 162.6 555.4 162.2C557.1 161.9 558.4 166.5 561.7 166.2Z" fill="black"/>
<path id="Vector_77" d="M555.9 251.1H542.8C542.8 251.1 542.7 250.7 542.7 250.2C542.7 249.5 542.9 248.6 544 248.2C544.4 248 544.8 247.9 545.2 247.7C546.8 246.9 548.6 245.9 548.9 245.3C548.9 245.3 549 245.3 549.2 245.4C549.5 245.5 550.1 245.8 550.8 246C551.1 246.1 551.4 246.1 551.7 246.1C552.4 246.1 553.9 245.7 554.8 245.6C555.2 245.5 555.5 245.5 555.6 245.7C555.8 246 556 248.7 556.1 250.2C555.8 250.7 555.9 251.1 555.9 251.1Z" fill="#1F3247"/>
<path id="Vector_78" d="M554.9 243.6C554.8 244.2 554.7 244.9 554.5 245.5C553.8 245.6 552.9 245.8 552.2 245.9C551.9 245.9 551.7 246 551.5 246C550.7 246 549.6 245.5 549.1 245.3C549.1 244.6 549.2 243.7 549.2 243L551.5 243.2L554.9 243.6Z" fill="url(#paint15_linear)"/>
<path id="Vector_79" d="M571.6 251.1H563.7C563.7 251.1 563.6 250.7 563.6 250.2C563.6 249.8 563.7 249.4 563.9 248.9C564.5 247.6 564.2 245.6 564.4 245.2C564.4 245.2 564.5 245.2 564.8 245.2C565.9 245.1 569 244.8 569.9 244.8C570 244.8 570 244.8 570.1 244.8C570.6 245 571.2 248.4 571.5 250.2C571.6 250.6 571.6 250.9 571.6 251.1Z" fill="#1F3247"/>
<path id="Vector_80" opacity="0.25" d="M555.8 250.1C555.8 250.7 555.9 251 555.9 251H542.8C542.8 251 542.7 250.6 542.7 250.1H555.8Z" fill="black"/>
<path id="Vector_81" opacity="0.25" d="M571.6 251.1H563.7C563.7 251.1 563.6 250.7 563.6 250.2H571.5C571.6 250.6 571.6 250.9 571.6 251.1Z" fill="black"/>
<path id="Vector_82" d="M550.6 245.9C549.4 246.7 547.1 248.1 546.3 248.1C545.7 248.1 545.3 247.8 545 247.6C546.6 246.8 548.4 245.8 548.7 245.2C548.7 245.2 548.8 245.2 549 245.3C549.4 245.5 550 245.7 550.6 245.9Z" fill="#122230"/>
<path id="Vector_83" opacity="0.25" d="M554.9 243.6C554.8 244.2 554.7 244.9 554.5 245.5C553.8 245.6 552.9 245.8 552.2 245.9L551.4 243.2L554.9 243.6Z" fill="black"/>
<path id="Vector_84" opacity="0.25" d="M569.9 241.4V244.7C569.3 244.6 567.9 244.7 566.7 244.9L565.8 242.1L569.9 241.4Z" fill="black"/>
</g>
</g>
<g id="Group_13">
<g id="Group_14">
<path id="Vector_85" d="M98.3 163.3C98.3 163.3 98.2 164.3 98.1 165.5C97.9 167.1 97.5 169.2 96.8 170.2C96.8 170.2 96.8 170.3 96.7 170.3C95.6 171.7 93.6 171.4 92.6 169.6C93.2 168.8 93.5 167.9 93.1 167.5C92.3 166.7 92.5 164.4 93.7 164.7C94.9 165 95.1 168.2 95.5 168.1C95.8 168.2 97.6 165.3 98.3 163.3Z" fill="url(#paint16_linear)"/>
<path id="Vector_86" d="M98.7 161.9C98.7 162.2 98.6 162.7 98.4 163.3C98.3 163.6 98.1 164 98 164.3C97.2 166.1 95.9 168.1 95.6 168.2C95.2 168.3 95 165 93.8 164.8C92.6 164.5 92.4 166.8 93.2 167.6C93.6 168 93.3 168.9 92.7 169.7C92 170.5 91 171.1 89.9 170.4C87.9 169.2 87.5 161.4 87.5 160.8C87.5 160.8 87.5 160.3 87.6 159.6C87.8 158.6 88.5 157.4 90.2 156.6C93.2 155.3 98.7 155.6 98.7 161.9Z" fill="#2F1829"/>
<path id="Vector_87" d="M114.4 194.3C114.4 194.4 114.4 194.5 114.3 194.5C114.2 194.9 114.1 195.1 114 195.1C113.9 195.1 113.3 195.1 112.4 195C111.2 194.8 109.4 194.6 107.8 194.3C105.8 193.9 104 193.5 103.4 193.2C102.9 192.9 102.1 191.9 101.3 190.7C101.1 190.4 100.9 190.1 100.7 189.7C99.7 188.1 98.9 186.5 98.7 186.1C98.7 186 98.6 186 98.6 186C98.6 186 98.6 186 98.6 186.1C98.6 186.5 98.4 188.1 97.9 189.7C97.8 190 97.7 190.4 97.5 190.7C97.4 191 97.2 191.3 97 191.5C96.5 192.3 96.6 193.3 96.9 194.3C96.9 194.4 97 194.5 97 194.7C97.1 194.9 97.2 195.1 97.3 195.3C97.5 195.7 97.6 196 97.8 196.3C98.3 197.3 98.7 198.2 98.6 198.7C98.6 198.8 98.5 198.8 98.4 198.9C98.3 199 98.3 199 98.2 199.1C97.9 199.3 97.3 199.6 96.6 199.9C92.7 201.5 83.9 203.4 80.1 199.9C80 199.8 80 199.8 79.9 199.7C79.7 199.4 79.6 199.2 79.6 198.9C79.6 198.5 79.8 198.2 80.1 197.7C80.5 197 81.2 196.3 81.7 195.2C81.9 194.9 82 194.6 82.1 194.2C82.3 193.7 82.5 193.1 82.5 192.4C82.6 191.8 82.6 191.1 82.7 190.5C82.7 190.2 82.8 189.8 82.8 189.5C82.9 188.2 82.9 187 82.9 185.9C82.9 185.6 82.9 185.2 82.9 184.9C82.9 183.6 82.8 182.4 82.8 181.3C82.8 181 82.8 180.6 82.8 180.3C82.8 179 82.8 177.8 82.9 176.7C82.9 176.4 83 176 83 175.7C83.3 174.2 83.9 173 85 172.1L85.1 172C85.5 171.7 85.9 171.4 86.2 171.1C86.6 170.8 87 170.6 87.3 170.3C89.7 168.9 90.9 169.1 90.9 169.1C90.9 169.1 91.6 169.1 92.7 169.3C93.8 169.5 95.1 169.8 96.5 170.3C96.7 170.4 96.8 170.4 97 170.5C97.4 170.7 97.7 170.8 98.1 171C98.3 171.1 98.6 171.3 98.8 171.4C99.1 171.6 99.4 171.8 99.6 172C100.3 172.5 100.8 173.1 101.3 173.8C101.6 174.3 102 175 102.3 175.6C102.5 175.9 102.6 176.2 102.8 176.6C103.3 177.8 103.9 179 104.4 180.2C104.5 180.5 104.7 180.9 104.8 181.2C105.3 182.5 105.8 183.8 106.1 184.8C106.2 185.1 106.3 185.5 106.4 185.8C106.8 186.9 107 187.6 107.1 187.9C107.2 188.3 108.1 188.7 109.2 189.1C109.6 189.2 109.9 189.3 110.3 189.4C111.1 189.6 111.8 189.8 112.5 190C113 190.1 113.5 190.3 113.9 190.4C114.3 190.5 114.5 190.6 114.6 190.7C114.6 190.7 114.6 190.8 114.7 190.9C114.7 191.8 114.6 193.3 114.4 194.3Z" fill="#F5B539"/>
<g id="Group_15" opacity="0.25">
<g id="Group_16" opacity="0.25">
<path id="Vector_88" opacity="0.25" d="M98.1 171.4C98.4 171.6 98.7 171.7 99 171.9H85.7C85.9 171.7 86.2 171.5 86.4 171.4H98.1ZM98.1 171.2H86.2C85.8 171.5 85.5 171.7 85.1 172.1L85 172.2H99.7C99.2 171.8 98.7 171.5 98.1 171.2Z" fill="white"/>
</g>
<g id="Group_17" opacity="0.25">
<path id="Vector_89" opacity="0.25" d="M102.1 176.1C102.2 176.3 102.3 176.4 102.4 176.6H83.1C83.1 176.4 83.2 176.2 83.2 176.1H102.1ZM102.3 175.8H83C82.9 176.1 82.9 176.4 82.9 176.8H102.8C102.6 176.5 102.4 176.1 102.3 175.8Z" fill="white"/>
</g>
<g id="Group_18" opacity="0.25">
<path id="Vector_90" opacity="0.25" d="M104.2 180.7C104.3 180.9 104.3 181 104.4 181.2H83.1C83.1 181 83.1 180.9 83.1 180.7H104.2ZM104.3 180.5H82.8C82.8 180.8 82.8 181.1 82.8 181.5H104.7C104.6 181.1 104.4 180.8 104.3 180.5Z" fill="white"/>
</g>
<g id="Group_19" opacity="0.25">
<path id="Vector_91" opacity="0.25" d="M105.9 185.3L106 185.7L106.1 185.9H83.3C83.3 185.7 83.3 185.6 83.3 185.4H105.9V185.3ZM106 185.1H83C83 185.4 83 185.7 83 186.1H106.4C106.3 185.8 106.1 185.4 106 185.1Z" fill="white"/>
</g>
<g id="Group_20" opacity="0.25">
<path id="Vector_92" opacity="0.25" d="M97.6 189.9C97.5 190.1 97.5 190.3 97.4 190.4H83.1C83.1 190.2 83.1 190.1 83.1 189.9H97.6ZM97.9 189.7H82.9C82.9 190 82.9 190.3 82.8 190.7H97.5C97.7 190.4 97.8 190 97.9 189.7Z" fill="white"/>
</g>
<g id="Group_21" opacity="0.25">
<path id="Vector_93" opacity="0.25" d="M110.2 189.9C110.8 190.1 111.4 190.2 111.9 190.4L112.1 190.5H101.5C101.4 190.3 101.3 190.2 101.2 190H110.2V189.9ZM110.2 189.7H100.7C100.9 190 101.1 190.4 101.3 190.7H113.7C113.3 190.6 112.9 190.4 112.3 190.3C111.8 190.1 111 189.9 110.2 189.7Z" fill="white"/>
</g>
<g id="Group_22" opacity="0.25">
<path id="Vector_94" opacity="0.25" d="M96.9 194.6C96.9 194.6 96.9 194.7 97 194.7V194.8C97 194.9 97.1 195 97.1 195.1H82.2C82.3 194.9 82.4 194.8 82.4 194.6H96.9V194.6ZM97 194.3H82.2C82.1 194.7 81.9 195 81.8 195.3H97.4C97.3 195.1 97.2 194.9 97.1 194.7C97.1 194.6 97.1 194.5 97 194.3Z" fill="white"/>
</g>
<g id="Group_23" opacity="0.25">
<path id="Vector_95" opacity="0.25" d="M114.1 194.6C114 194.9 113.9 195 113.9 195C113.9 195 113.9 195 113.8 195C113.6 195 113.1 195 112.4 194.9C111.8 194.8 111.2 194.7 110.5 194.6H114.1V194.6ZM114.4 194.3H107.8C109.4 194.6 111.2 194.9 112.4 195C113.1 195.1 113.6 195.1 113.8 195.1C113.9 195.1 113.9 195.1 114 195.1C114.1 195.1 114.2 194.8 114.3 194.5C114.4 194.5 114.4 194.4 114.4 194.3Z" fill="white"/>
</g>
<g id="Group_24" opacity="0.25">
<path id="Vector_96" opacity="0.25" d="M97.8 199.2C97.5 199.4 97.1 199.5 96.7 199.7H80.4L80.3 199.6L80.1 199.8L80.2 199.6C80.1 199.5 80 199.4 80 199.2H97.8ZM98.5 199H79.7C79.7 199.3 79.8 199.5 80 199.8C80.1 199.9 80.1 199.9 80.2 200H96.7C97.4 199.7 97.9 199.4 98.3 199.2C98.4 199.1 98.4 199 98.5 199Z" fill="white"/>
</g>
</g>
<path id="Vector_97" d="M99.9 242.3C99.8 242.5 99.8 242.7 99.7 242.8C98.6 244.7 95.6 244.9 94.5 244.5C94.4 244.5 94.2 244.4 94.2 244.3C93.5 243.7 93 238.9 89.4 211.7C89.4 211.8 89.4 211.8 89.4 211.9C89.3 215.8 88.5 222.6 87.7 228.9C86.8 235.9 85.8 242.2 85.6 243.2C85.6 243.5 85.4 243.8 85.2 244.1C84.2 245.2 81.7 245.5 80.2 243.7C80.1 243.6 80 243.4 79.9 243.2C80.5 238.2 80.8 222.8 79.8 213.6C79.4 210.2 79.4 207.2 79.5 204.8C79.6 202.3 79.9 200.5 80.1 199.5C83.9 203.3 93.1 201.3 97 199.6C97.6 199.3 98 199.1 98.3 198.9C99.3 203.5 98.9 216.4 99.9 242.3Z" fill="#2F1829"/>
<path id="Vector_98" opacity="0.25" d="M97.1 170.7C90.7 170.9 88.9 180.8 88.9 180.8L87.4 170.4C89.8 169 91 169.2 91 169.2C91 169.2 94.1 169.4 97.1 170.7Z" fill="black"/>
<path id="Vector_99" d="M107.2 251C107.2 251 96.3 251 94.5 251C94.4 250.6 94.4 250.1 94.4 249.5C94.4 249.3 94.4 249.1 94.4 248.8C94.4 247.3 94.4 245.5 94.5 244.6C94.8 244.7 95.2 244.8 95.7 244.7C96.7 244.7 97.9 244.4 98.8 243.8C99.1 243.6 99.4 243.2 99.6 242.9C100.4 244.6 102 245.7 103.5 246.5C104.8 247.2 106.1 247.7 106.6 248.1C107.1 248.5 107.3 249 107.3 249.5C107.5 250.2 107.2 251 107.2 251Z" fill="#1F3247"/>
<path id="Vector_100" d="M85.3 249.5C85.3 250.5 85.2 251 85.2 251H77.9C78 250.5 78.1 250 78.2 249.5C78.8 247 79.7 244.8 80.1 243.9C80.6 244.5 81.2 244.8 81.8 245C82.5 245.2 83.2 245.2 83.9 245C84.4 244.8 84.9 244.6 85.2 244.2C85.4 246.3 85.3 248.2 85.3 249.5Z" fill="#1F3247"/>
<path id="Vector_101" opacity="0.25" d="M98.7 198.7C98.7 198.8 98.5 199 98.3 199.1C96 200.7 84.4 204.1 80.1 199.7C79.5 199.1 79.8 198.5 80.3 197.8C80.9 198.3 82 198.8 84 199.2C87.9 199.8 94.7 198.8 98 196.4C98.4 197.4 98.8 198.2 98.7 198.7Z" fill="black"/>
<g id="girllight">
<path id="Vector_102" d="M121.8 188C121.8 188 119.4 179.3 124.5 173.8C129.6 168.3 143.5 160.1 143.8 149.9C144.1 139.7 151.7 126.9 161.8 124.5C171.9 122.2 179.6 98.8 188.7 94.2C197.8 89.5 210.7 89.1 214.4 83.2C218.1 77.3 261.7 162 259.6 170.7C257.4 179.4 218.6 168.2 208.2 170.8C197.8 173.4 192.9 179.6 181.3 181.2C169.7 182.8 152.5 180 146.5 183.4C140.5 186.8 129.4 191.8 123.9 189.8C121.6 188.8 121.8 188 121.8 188Z" fill="url(#paint17_linear)"/>
<path id="Vector_103" d="M123.9 189.6L121.4 187.1C121 186.7 120.4 186.9 120.3 187.4L119.7 189.6L114.4 194.9C114.2 195.1 114.2 195.5 114.4 195.7L115.2 196.5C115.4 196.7 115.8 196.7 116 196.5L121.3 191.2L123.5 190.6C124.1 190.6 124.3 190 123.9 189.6Z" fill="#2F1829"/>
<path id="Vector_104" d="M121.2 192.6C121.1 193.4 118.2 195.9 117.3 195.7C117.2 195.7 117 195.6 116.9 195.5C116.3 195.2 115.6 194.6 114.4 194.5C114.6 193.5 114.7 191.7 114.6 191.1C114.8 191 115 190.9 115.2 190.8C116.2 190.4 117.5 189.8 118 189.9C118.9 190.2 121.4 191.8 121.2 192.6Z" fill="url(#paint18_linear)"/>
<path id="Vector_105" opacity="0.25" d="M114.4 194.6C114.3 195 114.2 195.2 114.1 195.2C114 195.2 113.4 195.2 112.5 195.1C113.1 192.8 112.7 191.1 112.5 190.3C113.6 190.6 114.4 190.8 114.5 191C114.5 191 114.5 191.1 114.6 191.2C114.7 191.8 114.6 193.6 114.4 194.6Z" fill="black"/>
</g>
<path id="Vector_106" opacity="0.25" d="M97.2 194.7C95.7 193.3 96.4 192.1 97.2 189.3C98 186.4 96.4 185.2 96.1 182C95.8 178.8 96.2 177 98.1 174.9C95.7 181.1 98.7 186 98.7 186C98.7 186 98.6 189.4 97.1 191.6C96.5 192.4 96.7 193.6 97.2 194.7Z" fill="black"/>
<path id="Vector_107" opacity="0.25" d="M97.9 164.4C97.1 166.2 95.8 168.2 95.5 168.3C95.1 168.4 94.9 165.1 93.7 164.9C92.5 164.6 92.3 166.9 93.1 167.7C93.5 168.1 93.2 169 92.6 169.8C91.9 170.6 90.9 171.2 89.8 170.5C87.8 169.3 87.4 161.5 87.4 160.9C87.4 160.9 87.4 160.4 87.5 159.7C88.5 159.6 90.8 159.8 91.3 161.8C91.8 163.8 91.8 164.7 91.8 165.1C91.9 164.5 92.4 162.8 94.3 163.2C95.4 163.3 96.7 164.1 97.9 164.4Z" fill="black"/>
<g id="hairgirl">
<path id="Vector_108" d="M89.6 161.6C89.6 161.6 88.8 159.9 86.1 160.4C83.5 160.9 82.3 164.3 83.5 169.8C83.5 164.9 84.2 163.8 84.2 163.8C84.2 163.8 83.1 166.8 84.5 173.5C85.9 180.2 86.8 186.7 83.2 189.5C90.3 185.5 90.8 180.7 90.3 174.9C90 169.1 91.3 164 89.6 161.6Z" fill="#2F1829"/>
</g>
<path id="Vector_109" opacity="0.25" d="M93.9 167.5C93.8 167.9 95.2 169.8 96.7 170.2C96.7 170.2 96.7 170.3 96.6 170.3C96.6 170.4 96.5 170.4 96.5 170.5C95.1 170 93.7 169.6 92.7 169.5C93.2 168.8 93.4 168 93 167.6C92.2 166.8 92.4 164.5 93.6 164.8C94.8 165.1 95 168.3 95.4 168.2C95.7 168.1 97.5 165.3 98.2 163.3C98.2 163.3 98.1 164.3 98 165.5C97.6 166.2 96.7 167.7 96 168.3C95.1 169.1 94.7 168.1 94.5 167.5C94.4 167 94 167 93.9 167.5Z" fill="black"/>
<path id="Vector_110" opacity="0.25" d="M81.5 204.9C81.5 204.9 81.3 208.6 81.8 209.6C82.3 210.6 83.7 211.3 83.7 211.3C83.7 211.3 85.5 210.5 86 209.4C86.5 207.2 86.4 204.5 86.4 204.5C86.4 204.5 82.8 203.7 81.5 204.9Z" stroke="white" stroke-width="0.4635" stroke-miterlimit="10"/>
<path id="Vector_111" opacity="0.25" d="M97.2 201.9C97.2 201.9 97.4 205 94.7 206.5" stroke="white" stroke-width="0.4635" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
<path id="Vector_112" opacity="0.25" d="M96.5 204.6L98.7 241.6" stroke="white" stroke-width="0.4635" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
<path id="Vector_113" opacity="0.25" d="M89.3 212C89.2 215.9 88.4 222.7 87.6 229.1C87.5 221.7 86.4 212.6 86.8 211.1C87.9 212.1 89.3 212 89.3 212Z" fill="black"/>
<path id="Vector_114" opacity="0.25" d="M87.4 213L84.3 243.2" stroke="white" stroke-width="0.4635" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
<path id="Vector_115" opacity="0.25" d="M96.9 199.9C95.1 201.7 89.5 206.1 79.4 205.1C79.5 202.6 79.8 200.8 80 199.8C83.8 203.6 93.1 201.5 96.9 199.9Z" fill="black"/>
<path id="Vector_116" opacity="0.25" d="M78.3 249.5H85.3C85.3 250.5 85.2 251 85.2 251H77.9C78 250.5 78.1 250 78.3 249.5Z" fill="black"/>
<path id="Vector_117" opacity="0.25" d="M107.2 251C107.2 251 96.3 251 94.5 251C94.4 250.6 94.4 250.1 94.4 249.5H107.4C107.5 250.2 107.2 251 107.2 251Z" fill="black"/>
<path id="Vector_118" opacity="0.25" d="M103.6 246.4C101.3 247.5 99.7 245.2 98.9 243.7C99.2 243.5 99.5 243.1 99.7 242.8C100.5 244.5 102.1 245.6 103.6 246.4Z" fill="white"/>
<path id="Vector_119" opacity="0.25" d="M83.9 245C83.7 248.4 82.5 248.5 81.9 248.1C81.3 247.8 81.7 245.6 81.9 244.9C82.5 245.2 83.2 245.2 83.9 245Z" fill="black"/>
<path id="Vector_120" opacity="0.25" d="M94.4 248.8C94.4 247.3 94.4 245.5 94.5 244.6C94.8 244.7 95.2 244.8 95.7 244.7C95.9 245.8 96 248.3 94.4 248.8Z" fill="black"/>
<path id="Vector_121" opacity="0.25" d="M114.4 194.6C114.6 193.6 114.7 191.8 114.6 191.2C114.8 191.1 115 191 115.2 190.9C115.8 191.8 116.9 193.5 117 195.5C116.3 195.2 115.7 194.6 114.4 194.6Z" fill="black"/>
<path id="Vector_122" opacity="0.25" d="M109.1 189.4C107.1 189.6 105.7 191.7 105.6 191.3C105.4 190.8 106.5 189.8 106.4 189.1C106.3 188.4 103.2 180.5 101.5 176.6C100.5 174.2 99.5 172.6 98.9 171.6C99.2 171.8 99.5 172 99.7 172.2C100.4 172.7 100.9 173.3 101.4 174C101.7 174.5 102.1 175.2 102.4 175.8C102.6 176.1 102.7 176.4 102.9 176.8C103.4 178 104 179.2 104.5 180.4C104.6 180.7 104.8 181.1 104.9 181.4C105.4 182.7 105.9 184 106.2 185C106.3 185.3 106.4 185.7 106.5 186C106.9 187.1 107.1 187.8 107.2 188.1C107.2 188.6 108 189 109.1 189.4Z" fill="white"/>
</g>
</g>
<path id="Vector_123" d="M592.4 253C591.7 252.5 570.9 196.3 594.9 164.3C591.6 186.9 593.4 205.4 593.4 205.4L590.3 208.5L593.8 209.5C593.8 209.5 596.1 240.9 597.3 244.5C594.7 221 601.1 207.3 601.1 207.3C601.1 207.3 600 224 602.1 230.1L600.4 232.3L602.1 232C602.1 232 600.9 242.1 602.1 245.1C602.1 245.1 615.5 205.1 609.2 187.5C617.5 200.3 615.1 221.8 615.1 221.8L613 222.6L614.3 223.6C614.3 223.6 610.8 246.5 602.9 252.9" fill="#2F1829"/>
<g id="Group_25">
<path id="Vector_124" d="M452.1 246.4C452.1 246.4 433.5 244.7 426.1 249.9C429.6 244.9 443.7 242.6 443.7 242.6L444.7 243.4V242.6C444.7 242.6 447.1 241.4 450.6 240.9C433.7 237.6 425.6 240.8 425.6 240.8C425.6 240.8 428.7 238.2 433.9 236.7C439.1 235.2 442.3 235.8 442.3 235.8L444.4 237.1V235.7L462.4 241" fill="black"/>
<path id="Vector_125" d="M523.5 247.4C523.5 247.4 521.5 234.8 531.8 226.1C531.7 236.3 528.9 245 523.5 247.4Z" stroke="#1F3247" stroke-width="0.9271" stroke-miterlimit="10"/>
<g id="Group_26">
<path id="Vector_126" d="M454.5 239.1L452.5 244C451.1 239.1 448 238.1 446.4 238C445.8 237.9 445.5 238 445.5 238L446.2 235.6L443.9 236C443.9 236 441.3 229.7 429.6 222C440.3 221.4 446.9 227 450.6 232C453.4 235.7 454.5 239.1 454.5 239.1Z" fill="#FFCA51"/>
<g id="Group_27" opacity="0.25">
<path id="Vector_127" opacity="0.25" d="M429.6 222C432.1 222.6 434.6 223.5 437 224.6C439.4 225.7 441.7 226.9 443.9 228.3C446.1 229.8 448.1 231.5 449.9 233.5C451.6 235.5 453 237.8 454 240.3C454 240.4 454 240.6 453.9 240.6C453.8 240.6 453.6 240.6 453.6 240.5C452.7 238.1 451.4 235.8 449.7 233.8C448 231.8 446 230.1 443.9 228.6C441.7 227.1 439.4 225.9 437 224.8C434.6 223.6 432.1 222.6 429.6 222Z" fill="white"/>
</g>
<path id="Vector_128" opacity="0.25" d="M454.5 239.1L452.5 244C451.1 239.1 448 238.1 446.4 238C449.2 236.3 450.2 233.6 450.6 231.9C453.4 235.7 454.5 239.1 454.5 239.1Z" fill="black"/>
</g>
<g id="Group_28">
<path id="Vector_129" d="M531.8 215.8C512.6 231.6 507.7 239.4 507.7 239.4L504.3 237.9C504.3 237.9 504.3 238 504.3 238.2C504.3 239.1 504.4 241.5 504.3 242.4C504.2 243.1 497.4 246.8 493.5 248.8C491.9 249.6 490.9 250.2 490.9 250.2L487.7 247L488 246.4L489.7 243.2C489.7 243.2 494.1 236.9 501.6 230.3C508.9 223.7 519.4 216.9 531.8 215.8Z" fill="#FFADAE"/>
<g id="Group_29" opacity="0.25">
<path id="Vector_130" opacity="0.25" d="M489.6 248.9C492.2 245.1 495.1 241.5 498.1 238.1C501.1 234.7 504.4 231.4 507.8 228.4C511.3 225.4 515 222.7 519 220.4C523 218.2 527.3 216.5 531.8 215.7C527.3 216.5 523 218.2 519 220.5C515 222.8 511.4 225.5 507.9 228.5C504.5 231.5 501.3 234.8 498.3 238.2C495.3 241.6 492.5 245.2 489.9 249C489.8 249.1 489.7 249.1 489.6 249.1C489.5 249.2 489.5 249 489.6 248.9Z" fill="white"/>
</g>
<path id="Vector_131" opacity="0.25" d="M504.3 242.3C504.2 243 497.4 246.7 493.5 248.7C491.4 247.9 489.4 247 488 246.2L489.7 243C489.7 243 494.1 236.7 501.6 230.1C502 232.4 502.9 235.7 504.4 238.1C504.3 239 504.4 241.5 504.3 242.3Z" fill="black"/>
</g>
<g id="Group_30">
<path id="Vector_132" d="M519.7 205.4C506 216.8 499.7 226.4 497.1 231.2C495.9 233.4 495.5 234.7 495.5 234.7L492.5 233.6L493.7 236.3L489.3 245.1L487.4 249V233.6C488 232.5 488.8 231 489.8 229.3C491.7 226.1 494.4 222.2 497.9 218.4C499.5 216.7 501.2 215 503 213.4C507.8 209.6 513.3 206.5 519.7 205.4Z" fill="#F3475C"/>
<g id="Group_31" opacity="0.25">
<path id="Vector_133" opacity="0.25" d="M487.3 239.8C488.7 236 490.6 232.4 492.7 228.9C494.8 225.4 497.3 222.2 500 219.2C502.7 216.2 505.8 213.5 509.1 211.1L511.6 209.4L514.3 207.9C514.7 207.7 515.2 207.4 515.6 207.2L517 206.6L519.8 205.4L517 206.6L515.6 207.2C515.2 207.4 514.7 207.7 514.3 207.9L511.7 209.4L509.2 211.1C505.9 213.5 502.9 216.2 500.2 219.2C497.5 222.2 495.1 225.5 493.1 229C491 232.5 489.2 236.1 487.9 239.9C487.9 240 487.7 240.1 487.6 240C487.3 240.1 487.3 239.9 487.3 239.8Z" fill="white"/>
</g>
<path id="Vector_134" opacity="0.25" d="M495.6 234.8L492.6 233.7L493.8 236.4L489.4 245.2L487.5 245.5V233.7C488.1 232.6 488.9 231.1 489.9 229.4C491.3 230.5 493.7 231.8 497.1 231.3C496 233.5 495.6 234.8 495.6 234.8Z" fill="black"/>
</g>
<path id="Vector_135" d="M537.2 251.1H487.5V244.1C487.5 244.1 488.2 242.4 490.2 241.4C490.8 241.1 491.6 240.8 492.4 240.7C496.1 240.2 497.4 243.3 497.4 243.3C497.4 243.3 498.3 240.6 502 240.3C505.6 240 507.8 245.6 507.9 246C507.9 245.7 507.6 242.6 510.4 242.4C513.3 242.2 513.3 246 513.3 246C513.3 246 515.6 243.5 518.6 243.6C521.6 243.8 522.2 246.7 522.2 246.7C522.2 246.7 523.9 244.2 527.5 245.1C531.2 245.9 531.7 251.1 537.2 251.1Z" fill="#982245"/>
<path id="Vector_136" opacity="0.25" d="M521.7 251.1H487.6V244.1C487.6 244.1 488.3 242.4 490.3 241.4C491.8 241.5 494.4 242 495.5 244C497.1 246.9 497.2 249.6 497.2 249.6C497.2 249.6 500.5 244.8 503.2 245.6C505.9 246.4 507.3 249.6 507.3 249.6C507.3 249.6 510.1 246.6 512.5 247.6C513.6 248.2 517.8 249.7 521.7 251.1Z" fill="black"/>
<path id="Vector_137" d="M423.7 253C423.5 252.9 417.7 237.1 424.4 228.1C423.5 234.5 424 239.7 424 239.7L423.1 240.6L424.1 240.9C424.1 240.9 424.8 249.7 425.1 250.8C424.4 244.2 426.2 240.3 426.2 240.3C426.2 240.3 425.9 245 426.5 246.7L426 247.3L426.5 247.2C426.5 247.2 426.2 250 426.5 250.9C426.5 250.9 430.3 239.7 428.5 234.7C430.8 238.3 430.2 244.3 430.2 244.3L429.6 244.5L430 244.8C430 244.8 429 251.2 426.8 253" fill="#2F1829"/>
</g>
<g id="Group_32">
<path id="Vector_138" d="M197 247.9C197 247.9 167.7 228.2 150.6 230C161 224.9 186.5 233.9 186.5 233.9L187.5 236.2L188.2 234.9C188.2 234.9 193.3 235 199.5 237.5C174.5 216.5 158.1 214.5 158.1 214.5C158.1 214.5 165.6 213.1 175.6 215.3C185.6 217.5 190.4 221.5 190.4 221.5L192.7 225.5L193.9 223.3L218.9 248.5" fill="black"/>
<path id="Vector_139" d="M174.2 250.2C174.2 250.2 161.8 247.6 154.1 238.3C167.3 239.7 173 244.4 174.2 250.2Z" stroke="#1F3247" stroke-width="0.9271" stroke-miterlimit="10"/>
<g id="Group_33">
<path id="Vector_140" d="M215.5 194.6C214.4 219.4 217 228.3 217 228.3L213.6 229.9C213.6 229.9 213.7 230 213.8 230.1C214.5 230.7 216.3 232.3 216.9 232.9C217.4 233.4 215.6 241 214.5 245.2C214.1 246.9 213.8 248.1 213.8 248.1L209.3 248.3L209.1 247.6L207.8 244.2C207.8 244.2 206 236.7 206.1 226.8C206.1 216.9 208.1 204.5 215.5 194.6Z" fill="#FFADAE"/>
<g id="Group_34" opacity="0.25">
<path id="Vector_141" opacity="0.25" d="M212 248.1C210.9 243.6 210.2 239.1 209.6 234.6C209.1 230 208.8 225.5 208.9 220.9C209 216.3 209.4 211.7 210.4 207.3C211.4 202.8 213 198.5 215.5 194.6C213.1 198.5 211.5 202.8 210.5 207.3C209.5 211.8 209.1 216.3 209.1 220.9C209 225.5 209.4 230 209.9 234.6C210.5 239.1 211.3 243.6 212.4 248.1C212.4 248.2 212.4 248.4 212.2 248.4C212.2 248.3 212 248.3 212 248.1Z" fill="white"/>
</g>
<path id="Vector_142" opacity="0.25" d="M216.9 232.8C217.4 233.3 215.6 240.9 214.5 245.1C212.5 246.2 210.5 247 209 247.6L207.7 244.2C207.7 244.2 205.9 236.7 206 226.8C208 228 211 229.5 213.8 230C214.4 230.6 216.3 232.2 216.9 232.8Z" fill="black"/>
</g>
<g id="Group_35">
<path id="Vector_143" d="M233 211.6C226.9 222.3 225.1 230 224.6 233.7C224.4 235.4 224.4 236.3 224.4 236.3H222.2L223.6 237.8L222.9 244.6L222.6 247.6L218.9 237.7C219 236.8 219.2 235.7 219.4 234.3C219.9 231.8 220.7 228.6 222 225.3C222.6 223.8 223.3 222.3 224.1 220.9C226.3 217.2 229.1 213.9 233 211.6Z" fill="#F3475C"/>
<g id="Group_36" opacity="0.25">
<path id="Vector_144" opacity="0.25" d="M220.2 241.7C220.2 238.9 220.5 236.1 221.1 233.3C221.6 230.5 222.4 227.9 223.5 225.3C224.5 222.7 225.9 220.2 227.4 217.9L228.6 216.2L230 214.6C230.2 214.3 230.5 214.1 230.7 213.8L231.5 213.1L233 211.7L231.5 213.2L230.8 213.9C230.6 214.2 230.3 214.4 230.1 214.7L228.8 216.3L227.6 218C226.1 220.3 224.7 222.8 223.8 225.4C222.8 228 222.1 230.7 221.5 233.4C221 236.1 220.7 238.9 220.7 241.7C220.7 241.8 220.6 241.9 220.5 241.9C220.3 241.9 220.2 241.8 220.2 241.7Z" fill="white"/>
</g>
<path id="Vector_145" opacity="0.25" d="M224.4 236.4H222.2L223.6 237.9L222.9 244.7L221.7 245.3L218.9 237.7C219 236.8 219.2 235.7 219.4 234.3C220.5 234.7 222.4 235 224.5 233.8C224.4 235.5 224.4 236.4 224.4 236.4Z" fill="black"/>
</g>
<path id="Vector_146" d="M254 251H241.6L187.6 251.1H171.6C171.6 251.1 172.9 246.8 179.2 244.8C185.5 242.8 187.3 246.9 187.3 246.9C187.3 246.9 187 238.7 194.4 235.9C201.8 233.1 205.1 242.5 205.1 242.5C205.1 242.5 206.6 237.9 214.5 237.5C222.4 237.1 221.6 243.3 221.6 243.3C221.6 243.3 226.1 238.3 234.2 239.4C242.3 240.5 243.1 247 243.1 247C243.1 247 250.2 244.8 254 251Z" fill="#982245"/>
<path id="Vector_147" opacity="0.25" d="M241.6 251L187.6 251.1C190.4 248.6 195 245.4 199.8 245.3C207.7 245.2 209 248.1 209 248.1C209 248.1 213.9 242.9 217.7 243.8C221.6 244.7 221.7 248.8 221.7 248.8C221.7 248.8 234.1 245.9 241.6 251Z" fill="black"/>
<path id="Vector_148" d="M262.9 254.5C262.9 254.5 253.9 238.6 256.6 223.2C259.2 235.3 265.7 243.3 265.7 243.3L263.1 245.4H265.7L271.3 256.1L263.7 254.5V255.2L262.9 254.5Z" fill="#2F1829"/>
</g>
</g>
<defs>
<linearGradient id="paint0_linear" x1="327.54" y1="250.471" x2="330.184" y2="46.9149" gradientUnits="userSpaceOnUse">
<stop stop-color="#E8D197"/>
<stop offset="1" stop-color="#FEF5DA"/>
</linearGradient>
<linearGradient id="paint1_linear" x1="326.925" y1="147.902" x2="330.395" y2="242.079" gradientUnits="userSpaceOnUse">
<stop/>
<stop offset="1" stop-opacity="0"/>
</linearGradient>
<linearGradient id="paint2_linear" x1="344.3" y1="64.1527" x2="344.961" y2="87.284" gradientUnits="userSpaceOnUse">
<stop stop-color="white"/>
<stop offset="1" stop-color="white" stop-opacity="0"/>
</linearGradient>
<linearGradient id="paint3_linear" x1="130.102" y1="26.1247" x2="132.084" y2="77.0139" gradientUnits="userSpaceOnUse">
<stop stop-color="white"/>
<stop offset="1" stop-color="white" stop-opacity="0"/>
</linearGradient>
<linearGradient id="paint4_linear" x1="455.752" y1="229.215" x2="433.942" y2="41.3544" gradientUnits="userSpaceOnUse">
<stop stop-color="#E8D197"/>
<stop offset="1" stop-color="#FEF5DA"/>
</linearGradient>
<linearGradient id="paint5_linear" x1="60.0761" y1="430.474" x2="23.3198" y2="113.867" gradientUnits="userSpaceOnUse">
<stop stop-color="#E8D197"/>
<stop offset="1" stop-color="#FEF5DA"/>
</linearGradient>
<linearGradient id="paint6_linear" x1="197.311" y1="242.736" x2="195.989" y2="148.447" gradientUnits="userSpaceOnUse">
<stop stop-color="#2F1829"/>
<stop offset="1" stop-color="#3B223C"/>
</linearGradient>
<linearGradient id="paint7_linear" x1="322.636" y1="240.979" x2="321.314" y2="146.691" gradientUnits="userSpaceOnUse">
<stop stop-color="#2F1829"/>
<stop offset="1" stop-color="#3B223C"/>
</linearGradient>
<linearGradient id="paint8_linear" x1="447.456" y1="239.229" x2="446.134" y2="144.941" gradientUnits="userSpaceOnUse">
<stop stop-color="#2F1829"/>
<stop offset="1" stop-color="#3B223C"/>
</linearGradient>
<linearGradient id="paint9_linear" x1="281.068" y1="73.4007" x2="292.303" y2="109.089" gradientUnits="userSpaceOnUse">
<stop stop-color="#2F1829"/>
<stop offset="1" stop-color="#3B223C"/>
</linearGradient>
<linearGradient id="paint10_linear" x1="567.282" y1="246.761" x2="567.144" y2="239.051" gradientUnits="userSpaceOnUse">
<stop stop-color="#FECBA6"/>
<stop offset="1" stop-color="#D17878"/>
</linearGradient>
<linearGradient id="paint11_linear" x1="575.336" y1="236.543" x2="417.383" y2="126.175" gradientUnits="userSpaceOnUse">
<stop stop-color="white"/>
<stop offset="1" stop-color="white" stop-opacity="0"/>
</linearGradient>
<linearGradient id="paint12_linear" x1="529.726" y1="200.324" x2="554.29" y2="176.972" gradientUnits="userSpaceOnUse">
<stop stop-color="#FECBA6"/>
<stop offset="1" stop-color="#D17878"/>
</linearGradient>
<linearGradient id="paint13_linear" x1="568.688" y1="209.407" x2="569.018" y2="182.751" gradientUnits="userSpaceOnUse">
<stop stop-color="#FECBA6"/>
<stop offset="1" stop-color="#D17878"/>
</linearGradient>
<linearGradient id="paint14_linear" x1="552.343" y1="166.843" x2="558.043" y2="168.082" gradientUnits="userSpaceOnUse">
<stop stop-color="#FECBA6"/>
<stop offset="1" stop-color="#D17878"/>
</linearGradient>
<linearGradient id="paint15_linear" x1="550.457" y1="250.958" x2="552.881" y2="239.337" gradientUnits="userSpaceOnUse">
<stop stop-color="#FECBA6"/>
<stop offset="1" stop-color="#D17878"/>
</linearGradient>
<linearGradient id="paint16_linear" x1="95.6885" y1="163.838" x2="93.7609" y2="174.468" gradientUnits="userSpaceOnUse">
<stop stop-color="#FECBA6"/>
<stop offset="1" stop-color="#D17878"/>
</linearGradient>
<linearGradient id="paint17_linear" x1="75.5473" y1="236.543" x2="233.501" y2="126.174" gradientUnits="userSpaceOnUse">
<stop stop-color="white"/>
<stop offset="1" stop-color="white" stop-opacity="0"/>
</linearGradient>
<linearGradient id="paint18_linear" x1="124.267" y1="190.961" x2="113.114" y2="194.142" gradientUnits="userSpaceOnUse">
<stop stop-color="#FECBA6"/>
<stop offset="1" stop-color="#D17878"/>
</linearGradient>
</defs>
</svg>
    </div>
  </div>
</div>
  </a>
[/html]

0

171

Код:
body {
    margin: auto;
    font-family: -apple-system, BlinkMacSystemFont, sans-serif;
    overflow: auto;
    background: linear-gradient(315deg, rgba(101,0,94,1) 3%, rgba(60,132,206,1) 38%, rgba(48,238,226,1) 68%, rgba(255,25,25,1) 98%);
    animation: gradient 15s ease infinite;
    background-size: 400% 400%;
    background-attachment: fixed;
}

@keyframes gradient {
    0% {
        background-position: 0% 0%;
    }
    50% {
        background-position: 100% 100%;
    }
    100% {
        background-position: 0% 0%;
    }
}

.wave {
    background: rgb(255 255 255 / 25%);
    border-radius: 1000% 1000% 0 0;
    position: fixed;
    width: 200%;
    height: 12em;
    animation: wave 10s -3s linear infinite;
    transform: translate3d(0, 0, 0);
    opacity: 0.8;
    bottom: 0;
    left: 0;
    z-index: -1;
}

.wave:nth-of-type(2) {
    bottom: -1.25em;
    animation: wave 18s linear reverse infinite;
    opacity: 0.8;
}

.wave:nth-of-type(3) {
    bottom: -2.5em;
    animation: wave 20s -1s reverse infinite;
    opacity: 0.9;
}

@keyframes wave {
    2% {
        transform: translateX(1);
    }

    25% {
        transform: translateX(-25%);
    }

    50% {
        transform: translateX(-50%);
    }

    75% {
        transform: translateX(-25%);
    }

    100% {
        transform: translateX(1);
    }
}


<body>
  <div>
     <div class="wave"></div>
     <div class="wave"></div>
     <div class="wave"></div>
  </div>
</body>

0

172

[html]
<style>
.btns-wrap {
padding: 20px;
width: 80vw;
height: 80vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: space-around;
background: linear-gradient(-193deg, #3c3cad 0%, #262699 20%, #176772 70%, #b965b9 100%);
box-shadow: 0 20px 130px 0 rgba(0, 153, 255, 0.69);

button {
    display: block;
    margin: 30px 0;
    padding: 20px 30px;
    font-size: 14px;
    line-height: 1;
    text-transform: uppercase;
    text-align: center;
    letter-spacing: 1px;
    color: #fff;
    border: none;
    cursor: pointer;
    background: transparent;
}

.btn1 {
    position: relative;
    padding: 0 30px;
    height: 4em;
    line-height: 4em;
   
    span {
    position: relative;
    z-index: 50;
    }
   
    &::before, &::after {
    content: "";
    position: absolute;
    z-index: 20;
    top: 2em;
    left: 0;
    width: 100%;
    height: 0;
    padding-top: 4em;
    border-radius: 4em;
    border: 1px dashed rgba(255, 255, 255, .4);
    transition: all .4s ease;
    transform: translateY(-50%)
    }
   
    &::after {
    z-index: 10;
    background: radial-gradient(50% 50% at 56% 38%, rgba(255, 255, 255, 0.5) 0%, transparent 100%);
    opacity: 0;
    }
   
    &:hover span {
    opacity: 0;
    }
   
    &:hover::before,
    &:hover::after {
    padding-top: 100%;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, .4);
    }
   
    &:hover::before {
    background:
        radial-gradient(6px 12px at 35% 25%, #000 6px, transparent 8px),
        radial-gradient(6px 12px at 65% 27%, #000 6px, transparent 8px),
        radial-gradient(18px 34px at 50% 65%, #000 18px, transparent 20px);
    border-color: transparent;
    }
   
    &::after, &:hover::after {
    border: none;
    }
   
    &:hover::after {
    opacity: 1;
    }
}

.btn2 {
    position: relative;
    overflow: hidden;
    padding: 20px 60px;
    border: 3px groove rgba(#fff, .2);
   
    &::after {
    content: "";
    position: absolute;
    z-index: 10;
    bottom: 0;
    left: 0;
    width: 50px;
    height: 100px;
    border-radius: 50% 50% 0 0;
    transform-origin: left bottom;
    transform: translate(-45px, 20px) rotate(45deg);
    background:
        radial-gradient(2px 2px at 18px 20px, rgba(#000, .5) 2px, transparent 3px),
        radial-gradient(2px 2px at 32px 20px, rgba(#000, .5) 2px, transparent 3px),
        radial-gradient(70% 80% at 30% 20%, #fff 0%, transparent 100%);
    opacity: .15;
    }

    &:hover {
    border-color: #fff;
    overflow: visible;
   
    &::after {
        opacity: .8;
        animation: fly 1s ease-in alternate infinite;
    }
    }

}

.btn3 {
    position: relative;
    padding: 10px 40px;
    border: 1px solid rgba(#ccc, .35);
   
    span {
    position: relative;
    z-index: 50;
    }
   
    &::before {
    content: "";
    position: absolute;
    z-index: 30;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0;
    border-bottom: 1px solid #fff;
    opacity: .75;
    }
   
    &::after {
    content: attr(data-title);
    position: absolute;
    z-index: 20;
    left: 0;
    top: 1.25em;
    width: 100%;
    transform: rotateX(70deg);
    color: transparent;
    text-shadow: 0 3px 3px #000;
    white-space: nowrap;
    }
   
    &:hover {
    border-color: transparent;
    }
    &:hover::after {
    transform: rotateX(0) scaleY(3) translateY(-80%);
    font-size: 1.5em;
    text-shadow: 0 5px 5px #000;
    }
    &:hover::before {
    transform: translateY(10px)
    }
}
}
@keyframes fly {

100% {
    transform: translate(-40px, 18px) rotate(38deg);
}

}
</style>
<div class="wrapper">

<div class="btns-wrap">
    <button class="btn1" type="button">
    <span>Ghost button</span></button>
    <button class="btn2" type="button">Ghost button</button>
    <button class="btn3" type="button" data-title="Ghost button"><span>Ghost button</span></button>
</div>

</div>

[/html]

0

173

[html]
<style>
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800;900&family=Roboto:wght@400;500;700&display=swap");

* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: "Roboto", sans-serif;
}
body {
position: relative;
display: flex;
justify-content: center;
align-items: center;
min-height: 100vh;
background: linear-gradient(to bottom, #5d326c, #350048); /*fiolet*/
}
.container {
width: 1000px;
display: flex;
flex-wrap: wrap;
justify-content: space-around;
}
.container .btn {
position: relative;
top: 0;
left: 0;
width: 250px;
height: 50px;
margin: 0;
display: flex;
justify-content: center;
align-items: center;
}
.container .btn a {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
background: rgba(255, 255, 255, 0.05);
box-shadow: 0 15px 15px rgba(0, 0, 0, 0.3);
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
border-top: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 30px;
padding: 10px;
letter-spacing: 1px;
text-decoration: none;
overflow: hidden;
color: #fff;
font-weight: 400px;
z-index: 1;
transition: 0.5s;
backdrop-filter: blur(15px);
}
.container .btn:hover a {
letter-spacing: 3px;
}
.container .btn a::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 50%;
height: 100%;
background: linear-gradient(to left, rgba(255, 255, 255, 0.15), transparent);
transform: skewX(45deg) translate(0);
transition: 0.5s;
filter: blur(0px);
}
.container .btn:hover a::before {
transform: skewX(45deg) translate(200px);
}
.container .btn::before {
content: "";
position: absolute;
left: 50%;
transform: translatex(-50%);
bottom: -5px;
width: 30px;
height: 10px;
background: #f00;
border-radius: 10px;
transition: 0.5s;
transition-delay: 0.5;
}
.container .btn:hover::before /*lightup button*/ {
bottom: 0;
height: 50%;
width: 80%;
border-radius: 30px;
}

.container .btn::after {
content: "";
position: absolute;
left: 50%;
transform: translatex(-50%);
top: -5px;
width: 30px;
height: 10px;
background: #f00;
border-radius: 10px;
transition: 0.5s;
transition-delay: 0.5;
}
.container .btn:hover::after /*lightup button*/ {
top: 0;
height: 50%;
width: 80%;
border-radius: 30px;
}
.container .btn:nth-child(1)::before, /*chnage 1*/
.container .btn:nth-child(1)::after {
background: #ff1f71;
box-shadow: 0 0 5px #ff1f71, 0 0 15px #ff1f71, 0 0 30px #ff1f71,
    0 0 60px #ff1f71;
}
.container .btn:nth-child(2)::before, /* 2*/
.container .btn:nth-child(2)::after {
background: #2db2ff;
box-shadow: 0 0 5px #2db2ff, 0 0 15px #2db2ff, 0 0 30px #2db2ff,
    0 0 60px #2db2ff;
}
.container .btn:nth-child(3)::before, /* 3*/
.container .btn:nth-child(3)::after {
background: #1eff45;
box-shadow: 0 0 5px #1eff45, 0 0 15px #1eff45, 0 0 30px #1eff45,
    0 0 60px #1eff45;
}

</style>

<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Glassmorphism button</title>
</head>

<body>
<div class="container">
    <div class="btn"><a href="#">Read more 1</a></div>
    <div class="btn"><a href="#" >Read more 2</a></div>
        <div class="btn"><a href="#" >Read more 3</a></div>

</div>   
</body>

[/html]

0

174

[html]
<style>
@import url("https://fonts.googleapis.com/css2?family=Roboto&display=swap");

*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:root {
  --bg-color: #222429;
  --primary-bg-color: #333740;
  --primary-color: #2c62f6;
  --text-color: #b1b8ca;
  --text-active: #ffffff;
  --button-hover-bg-color: #2b2e34;
  --border-color: #494d59;
  --dropdown-height: 0;
  --rotate-arrow: 0;
  --translate-value: 0;
  --list-opacity: 0;
  --transition-time: 0.4s;
  --transition-timing: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --border-radius: 1.4rem;
  --list-button-height: 4.6rem;
  --floating-icon-size: 26;
  --floating-icon-top: 0;
  --floating-icon-left: 0;
}

html {
  font-size: 62.5%;
}

html,
body {
  height: 100%;
}

body {
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: var(--bg-color);
  padding: 1.5rem;
  line-height: 1.4;
}

button {
  border: none;
  cursor: pointer;
  background-color: transparent;
  outline: none;
}

svg {
  height: 1.6rem;
  width: 1.6rem;
}

.text-truncate {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

.dropdown-container {
  margin-top: 30vh;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 34rem;
}

.dropdown-title-icon,
.dropdown-arrow {
  display: inline-flex;
}

.dropdown-title {
  margin: 0 auto 0 1.8rem;
  text-transform: capitalize;
}

.dropdown-button {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-size: 1.7rem;
  display: flex;
  align-items: center;
  padding: 0 1.8rem;
}

.dropdown-button svg {
  transition: all var(--transition-time) var(--transition-timing);
  fill: var(--text-color);
}

.dropdown-button svg,
.dropdown-button span {
  pointer-events: none;
}

.dropdown-button:hover,
.dropdown-button:focus {
  color: var(--text-active);
}

.dropdown-button:hover svg,
.dropdown-button:focus svg {
  fill: var(--text-active);
}

.main-button {
  height: 5.2rem;
  border-radius: var(--border-radius);
  color: var(--text-color);
  background-color: var(--primary-bg-color);
  border: 0.1rem solid var(--border-color);
  transition: all var(--transition-time) var(--transition-timing);
}

.main-button:focus {
  border: 0.1rem solid var(--primary-color);
  box-shadow: 0 0 0 0.2rem rgba(44, 98, 246, 0.4);
}

.main-button .dropdown-arrow {
  transition: transform var(--transition-time) var(--transition-timing);
  transform: rotate(var(--rotate-arrow));
  margin-left: 1.8rem;
}

.list-button {
  height: var(--list-button-height);
  transition: color var(--transition-time) var(--transition-timing);
  color: var(--text-color);
  overflow: hidden;
  cursor: none;
}

.dropdown-list-container {
  overflow: hidden;
  max-height: var(--dropdown-height);
  transition: max-height var(--transition-time) var(--transition-timing);
}

.dropdown-list-wrapper {
  margin-top: 1rem;
  padding: 1rem;
  background-color: var(--primary-bg-color);
  border-radius: var(--border-radius);
  border: 0.1rem solid var(--border-color);
  position: relative;
}

ul.dropdown-list {
  position: relative;
  list-style-type: none;
}

ul.dropdown-list::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 0;
  opacity: 0;
  height: var(--list-button-height);
  background-color: var(--button-hover-bg-color);
  transition: all var(--transition-time) linear;
  transform: translateY(var(--translate-value));
  border-radius: var(--border-radius);
  pointer-events: none;
}
ul.dropdown-list:hover::before,
ul.dropdown-list:hover ~ .floating-icon {
  opacity: 1;
}

li.dropdown-list-item {
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 1;
  opacity: var(--list-opacity);
  transition: opacity 0.8s var(--transition-timing);
}

.floating-icon {
  height: calc(var(--floating-icon-size) * 1px);
  width: calc(var(--floating-icon-size) * 1px);
  position: absolute;
  top: var(--floating-icon-top);
  left: var(--floating-icon-left);
  background-color: var(--border-color);
  border-radius: 1rem;
  pointer-events: none;
  opacity: 0;
  transition: opacity var(--transition-time) var(--transition-timing);
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.floating-icon svg {
  fill: var(--text-active);
}

</style>
<script>
const root = document.documentElement;
const dropdownTitleIcon = document.querySelector(".dropdown-title-icon");
const dropdownTitle = document.querySelector(".dropdown-title");
const dropdownList = document.querySelector(".dropdown-list");
const mainButton = document.querySelector(".main-button");
const floatingIcon = document.querySelector(".floating-icon");

const icons = {
  linkedin:
    "M0 1.146C0 .513.526 0 1.175 0h13.65C15.474 0 16 .513 16 1.146v13.708c0 .633-.526 1.146-1.175 1.146H1.175C.526 16 0 15.487 0 14.854V1.146zm4.943 12.248V6.169H2.542v7.225h2.401zm-1.2-8.212c.837 0 1.358-.554 1.358-1.248-.015-.709-.52-1.248-1.342-1.248-.822 0-1.359.54-1.359 1.248 0 .694.521 1.248 1.327 1.248h.016zm4.908 8.212V9.359c0-.216.016-.432.08-.586.173-.431.568-.878 1.232-.878.869 0 1.216.662 1.216 1.634v3.865h2.401V9.25c0-2.22-1.184-3.252-2.764-3.252-1.274 0-1.845.7-2.165 1.193v.025h-.016a5.54 5.54 0 0 1 .016-.025V6.169h-2.4c.03.678 0 7.225 0 7.225h2.4z",
  instagram:
    "M8 0C5.829 0 5.556.01 4.703.048 3.85.088 3.269.222 2.76.42a3.917 3.917 0 0 0-1.417.923A3.927 3.927 0 0 0 .42 2.76C.222 3.268.087 3.85.048 4.7.01 5.555 0 5.827 0 8.001c0 2.172.01 2.444.048 3.297.04.852.174 1.433.372 1.942.205.526.478.972.923 1.417.444.445.89.719 1.416.923.51.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.444-.01 3.298-.048c.851-.04 1.434-.174 1.943-.372a3.916 3.916 0 0 0 1.416-.923c.445-.445.718-.891.923-1.417.197-.509.332-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.299c-.04-.851-.175-1.433-.372-1.941a3.926 3.926 0 0 0-.923-1.417A3.911 3.911 0 0 0 13.24.42c-.51-.198-1.092-.333-1.943-.372C10.443.01 10.172 0 7.998 0h.003zm-.717 1.442h.718c2.136 0 2.389.007 3.232.046.78.035 1.204.166 1.486.275.373.145.64.319.92.599.28.28.453.546.598.92.11.281.24.705.275 1.485.039.843.047 1.096.047 3.231s-.008 2.389-.047 3.232c-.035.78-.166 1.203-.275 1.485a2.47 2.47 0 0 1-.599.919c-.28.28-.546.453-.92.598-.28.11-.704.24-1.485.276-.843.038-1.096.047-3.232.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.478 2.478 0 0 1-.92-.598 2.48 2.48 0 0 1-.6-.92c-.109-.281-.24-.705-.275-1.485-.038-.843-.046-1.096-.046-3.233 0-2.136.008-2.388.046-3.231.036-.78.166-1.204.276-1.486.145-.373.319-.64.599-.92.28-.28.546-.453.92-.598.282-.11.705-.24 1.485-.276.738-.034 1.024-.044 2.515-.045v.002zm4.988 1.328a.96.96 0 1 0 0 1.92.96.96 0 0 0 0-1.92zm-4.27 1.122a4.109 4.109 0 1 0 0 8.217 4.109 4.109 0 0 0 0-8.217zm0 1.441a2.667 2.667 0 1 1 0 5.334 2.667 2.667 0 0 1 0-5.334z",
  facebook:
    "M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951z",
  twitter:
    "M5.026 15c6.038 0 9.341-5.003 9.341-9.334 0-.14 0-.282-.006-.422A6.685 6.685 0 0 0 16 3.542a6.658 6.658 0 0 1-1.889.518 3.301 3.301 0 0 0 1.447-1.817 6.533 6.533 0 0 1-2.087.793A3.286 3.286 0 0 0 7.875 6.03a9.325 9.325 0 0 1-6.767-3.429 3.289 3.289 0 0 0 1.018 4.382A3.323 3.323 0 0 1 .64 6.575v.045a3.288 3.288 0 0 0 2.632 3.218 3.203 3.203 0 0 1-.865.115 3.23 3.23 0 0 1-.614-.057 3.283 3.283 0 0 0 3.067 2.277A6.588 6.588 0 0 1 .78 13.58a6.32 6.32 0 0 1-.78-.045A9.344 9.344 0 0 0 5.026 15z",
  youtube:
    "M8.051 1.999h.089c.822.003 4.987.033 6.11.335a2.01 2.01 0 0 1 1.415 1.42c.101.38.172.883.22 1.402l.01.104.022.26.008.104c.065.914.073 1.77.074 1.957v.075c-.001.194-.01 1.108-.082 2.06l-.008.105-.009.104c-.05.572-.124 1.14-.235 1.558a2.007 2.007 0 0 1-1.415 1.42c-1.16.312-5.569.334-6.18.335h-.142c-.309 0-1.587-.006-2.927-.052l-.17-.006-.087-.004-.171-.007-.171-.007c-1.11-.049-2.167-.128-2.654-.26a2.007 2.007 0 0 1-1.415-1.419c-.111-.417-.185-.986-.235-1.558L.09 9.82l-.008-.104A31.4 31.4 0 0 1 0 7.68v-.123c.002-.215.01-.958.064-1.778l.007-.103.003-.052.008-.104.022-.26.01-.104c.048-.519.119-1.023.22-1.402a2.007 2.007 0 0 1 1.415-1.42c.487-.13 1.544-.21 2.654-.26l.17-.007.172-.006.086-.003.171-.007A99.788 99.788 0 0 1 7.858 2h.193zM6.4 5.209v4.818l4.157-2.408L6.4 5.209z"
};

const listItems = ["Linkedin", "Instagram", "Facebook", "Twitter", "Youtube"];

const iconTemplate = (path) => {
  return `
    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16">
      <path d="${path}" />
    </svg>
  `;
};

const listItemTemplate = (text, translateValue) => {
  return `
    <li class="dropdown-list-item">
      <button class="dropdown-button list-button" data-translate-value="${translateValue}%">
        <span class="text-truncate">${text}</span>
      </button>
    </li>
  `;
};

const renderListItems = () => {
  dropdownList.innerHTML += listItems
    .map((item, index) => {
      return listItemTemplate(item, 100 * index);
    })
    .join("");
};

window.addEventListener("load", () => {
  renderListItems();
});

const setDropdownProps = (deg, ht, opacity) => {
  root.style.setProperty("--rotate-arrow", deg !== 0 ? deg + "deg" : 0);
  root.style.setProperty("--dropdown-height", ht !== 0 ? ht + "rem" : 0);
  root.style.setProperty("--list-opacity", opacity);
};

mainButton.addEventListener("click", () => {
  const listWrapperSizes = 3.5; // margins, paddings & borders
  const dropdownOpenHeight = 4.6 * listItems.length + listWrapperSizes;
  const currDropdownHeight =
    root.style.getPropertyValue("--dropdown-height") || "0";

  currDropdownHeight === "0"
    ? setDropdownProps(180, dropdownOpenHeight, 1)
    : setDropdownProps(0, 0, 0);
});

dropdownList.addEventListener("mouseover", (e) => {
  const translateValue = e.target.dataset.translateValue;
  root.style.setProperty("--translate-value", translateValue);
});

dropdownList.addEventListener("click", (e) => {
  const clickedItemText = e.target.innerText.toLowerCase().trim();
  const clickedItemIcon = icons[clickedItemText];

  dropdownTitleIcon.innerHTML = iconTemplate(clickedItemIcon);
  dropdownTitle.innerHTML = clickedItemText;
  setDropdownProps(0, 0, 0);
});

dropdownList.addEventListener("mousemove", (e) => {
  const iconSize = root.style.getPropertyValue("--floating-icon-size") || 0;
  const x = e.clientX - dropdownList.getBoundingClientRect().x;
  const y = e.clientY - dropdownList.getBoundingClientRect().y;
  const targetText = e.target.innerText.toLowerCase().trim();
  const hoverItemText = icons[targetText];

  floatingIcon.innerHTML = iconTemplate(hoverItemText);
  root.style.setProperty("--floating-icon-left", x - iconSize / 2 + "px");
  root.style.setProperty("--floating-icon-top", y - iconSize / 2 + "px");
});

</script>
<div class="dropdown-container">
  <button class="dropdown-button main-button">
    <span class="dropdown-title-icon">
      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16">
        <path d="M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951z" />
      </svg>
    </span>
    <span class="dropdown-title text-truncate">Facebook</span>
    <span class="dropdown-arrow">
      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16">
        <path d="M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z" />
      </svg>
    </span>
  </button>
  <div class="dropdown-list-container">
    <div class="dropdown-list-wrapper">
      <ul class="dropdown-list"></ul>
      <div class="floating-icon" aria-hidden="true"></div>
    </div>
  </div>
</div>

[/html]

0

175

[html]
<style>
:root {
--icon: #b0bfd8;
}

nav.menu {
display: flex;
justify-content: space-between;
position: relative;
height: 150px;
padding: 0 29px 10px;
background: #fff0;
align-items: flex-end;
width: 600px;
}

nav.menu:before {
content: "";
width: 100%;
height: 150px;
background: #181818;
position: absolute;
left: 0;
bottom: 0;
border-radius: 20px;
z-index: -1;
box-shadow: 1px 1px 2px 0px #fff;
}

input { display: none; }

label {
text-decoration: none;
font-family: sans-serif;
text-transform: uppercase;
font-size: 14px;
min-width: 100px;
height: 100px;
margin: 10px 10px 20px;
text-align: center;
display: inline-grid;
align-items: end;
color: #b0bfd8;
position: relative;
transition: all 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55) 0s;
cursor: pointer;
}

label:hover {
color: #fff;
text-shadow: 0 0 5px #fff, 0 0 10px #fff;
}

input:checked + label {
color: #fff;
height: 130px;
}

.selector {
--hole: #2196f3;
background:
    radial-gradient(circle at 50% 50%, #fff8 30px, #fff0 45px, #fff 50px, #fff0 50px 100%),
    radial-gradient(circle at 50% 50%, var(--hole) 0 45px, #fff0 50px 100%),
    radial-gradient(circle at 50% 75px, #181818 0 70px, #fff0 71px 100%);
width: 95px;
height: 95px;
position: absolute;
bottom: 47px;
left: 0;
z-index: -1;
transition: all 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55) 0s;
border: 19px solid #181818;
border-radius: 100%;
}

#m-home:checked ~ .selector {
left: 23px;
}

#m-search:checked ~ .selector {
left: 143px;
filter: hue-rotate(535deg);
}

#m-notification:checked ~ .selector {
left: 263px;
filter: hue-rotate(950deg);
}

#m-favorites:checked ~ .selector {
left: 383px;
filter: hue-rotate(1580deg);
}

#m-profile:checked ~ .selector {
left: 502px;
filter: hue-rotate(1850deg);
}

.selector:after {
content: "";
position: absolute;
bottom: -80px;
width: 80px;
height: 10px;
background: #181818;
left: calc(50% - 40px);
border-radius: 5px 5px 15px 15px;
}

input:checked ~ .selector:after {
box-shadow: 0 -17px 35px 8px var(--hole);
}




/*** ICONS ***/
label:before,
label:after {
content: "";
position: absolute;
box-sizing: border-box;
transition: all 0.5s ease 0s;
}

label:hover:before,
label:hover:after {
filter: brightness(1.5) drop-shadow(0px 0px 4px #fff);
transition: all 0.5s ease 0s;
}

input:checked + label:before,
input:checked + label:after {
filter: brightness(1.5) drop-shadow(0px 0px 2px var(--sel));
transition: all 0.5s ease 0s;
}

label[for=m-home]:before {
width: 40px;
height: 40px;
left: 30px;
top: 30px;
transition: all 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55) 0s;
border-radius: 2px;
background:
    conic-gradient(from 90deg at 65% 60%, var(--icon) 0 25%, #fff0 0 100%),
    conic-gradient(from 180deg at 35% 60%, var(--icon) 0 25%, #fff0 0 100%),
    conic-gradient(from 135deg at 50% 0%, var(--icon) 0 25%, #fff0 0 100%);
background-repeat: no-repeat;
background-size: 100% 100%, 100% 100%, 100% 27px;
}

label[for=m-home]:after {
width: 40px;
height: 40px;
left: 30px;
top: 24px;
border: 6px solid var(--icon);
border-right-width: 0;
border-bottom-width: 0;
transform: rotate(45deg);
border-radius: 5px;
transition: all 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55) 0s;
}

label[for=m-search]:before {
width: 40px;
height: 40px;
left: 20px;
top: 17px;
border: 6px solid var(--icon);
border-radius: 100%;
transition: all 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55) 0s;
}

label[for=m-search]:after {
width: 22px;
height: 9px;
left: 60px;
top: 50px;
transition: all 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55) 0s;
background: var(--icon);
transform-origin: left top;
transform: rotate(45deg);
border-radius: 0 10px 10px 0;
}

label[for=m-notification]:before {
width: 50px;
height: 42px;
left: 25px;
top: 20px;
z-index: 1;
border-radius: 30px 30px 0 0;
transition: all 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55) 0s;
background:
    linear-gradient(90deg, #fff0 0 6px, var(--icon) 0 calc(100% - 6px), #fff0 calc(100% - 6px) 100%),
    conic-gradient(from 135deg at 50% 33%, var(--icon) 0 25%, #fff0 0 100%);
}

label[for=m-notification]:after {
width: 10px;
height: 57px;
left: 45px;
top: 14px;
z-index: 0;
transition: all 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55) 0s;
background: radial-gradient(circle at 50% 6px, var(--icon) 3px, #fff0 4px 100%), #fff0;
transform-origin: left top;
border-bottom: 6px solid var(--icon);
border-radius: 5px;
}

label[for=m-favorites]:before {
width: 50px;
height: 50px;
left: 18px;
top: -9px;
transition: all 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55) 0s;
background:
    radial-gradient(circle at 16px 16px, var(--icon) 0 16px, #fff0 calc(16px + 1px) 100%),
    radial-gradient(circle at 34px 34px, var(--icon) 0 16px, #fff0 calc(16px + 1px) 100%),
    linear-gradient(45deg, var(--icon) 0 37px, #fff0 38px 100%);
border-radius: 17px 22px 17px 4px;
transform: rotate(-45deg);
transform-origin: center right;
}

label[for=m-profile]:before {
width: 50px;
height: 54px;
top: 16px;
background:
    radial-gradient(circle at 50% 15px, var(--icon) 0 12px, #fff0 13px 100%),
    radial-gradient(circle at 50% 100%, var(--icon) 0 22px, #fff0 23px 100%);
left: 25px;
border-radius: 8px;
}

input:checked + label {
color: var(--sel);
text-shadow: 0 0 5px var(--sel), 0 0 10px var(--sel);
}

input:checked + label[for=m-home] {
--sel: #39a1f4;
}

input:checked + label[for=m-search] {
--sel:  #f48d4e;
}

input:checked + label[for=m-notification] {
--sel:  #84a91c;
}

input:checked + label[for=m-favorites] {
--sel:  #ff6275;
height: 125px;
}

input:checked + label[for=m-profile] {
--sel:  #9d74ff;
}

@media only screen and (orientation: portrait) {
label { color: transparent !important; text-shadow: none !important;}
}
</style>
<nav class="menu">

<input type="radio" name="nav-item" id="m-home" checked><label for="m-home">Home</label>
<input type="radio" name="nav-item" id="m-search"><label for="m-search">Search</label>
<input type="radio" name="nav-item" id="m-notification"><label for="m-notification">Notification</label>
<input type="radio" name="nav-item" id="m-favorites"><label for="m-favorites">Favorites</label>
<input type="radio" name="nav-item" id="m-profile"><label for="m-profile">Profile</label>

<div class="selector"></div>
</nav>

[/html]

0

176

[html]
<style>
div {
filter: url(#noise);
width: 300px;
height: 300px;
background: linear-gradient(pink, lightblue);
border-radius: 50%;
}

</style>
<script>

</script>
<svg class="svg-filters" width="0" height="0" viewBox="0 0 0 0" xmlns="http://www.w3.org/2000/svg" version="1.1">
<defs>
    <filter id="noise">
    <feTurbulence type="fractalNoise" baseFrequency="0.5" numOctaves="1" />
    <feColorMatrix type="matrix" values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.5 0" />
    <feBlend in="SourceGraphic" mode="overlay" />
    <feComposite in2="SourceAlpha" operator="in" />
    </filter>
</defs>
</svg>

<div></div>

[/html]

0

177

Код:
 {
   box-sizing: border-box;
}
.dbl-border {
   position: relative;
   display: table;
   margin: 50px auto;
}
.dbl-border img {
   display: block;
}
.dbl-border:before, .dbl-border:after {/*двойная смешённая рамка*/
   content: "";
   position: absolute;
   z-index: 1;
   width: 100%;
   height: 100%;
   border: 2px solid #40D8EC; /*толщина, цвет и стиль рамки*/
}
.dbl-border:before {
   top: -15px;
   left: -15px;
}
.dbl-border:after {
   right: -15px;
   bottom: -15px;
}
.image-wrapper {/*Рамка вокруг изображения*/
   position: relative;
   z-index: 2;
   padding: 5px; /*толщина рамки вокруг фото*/
   background: white; /*цвет фона*/
   box-shadow: 1px 1px 20px 0 rgba(0, 0, 0, 0.1); /*Тень*/
}

--

<div class="dbl-border">
<div class="image-wrapper">
<img src="ссылка на изображение">
</div>
</div>

0

178

[html]<style>
/*переменные для стиля*/
#game {
    --c: 200px; /*Высота блока, высота картинки*/
    --b: #dbc3db; /*цвет текста, цвет рамки*/
    --g: 500px; /*ширина картинки, ширина рамки, ширина таблицы*/
    --f: "helvetica"; /*опционально - шрифт блока*/}
/*стили блока с картинкой*/
.e1 {
  padding: 7px;
  border: 1px solid var(--b);
  height: calc(var (--c));
  width: calc(var(--g));
}
/*стиль самой картинки*/ 
.e1 img {
  width: calc(var(--g));
  height: calc(var (--c));
}
/*стиль названия эпизода*/
.e2 {
  width: 70px;
  border-right: 1px solid var(--b)!important;
  color: var(--b);
  vertical-align: top;
  padding-right: 10px!important;
  text-align:  right;  font-size:  30px;
  font-family:  impact;
text-shadow: 2px 2px 2px #fff;
}
/*стиль описания эпизода*/ 
.e3 {
  padding: 10px;
  text-align: justify;
  padding-right: 0px;
  vertical-align: top;
}
/*по желанию - стиль буквицы*/
//  .e3::first-letter {
  float: left;
  line-height: 35px;
  font-size: 3em;
  color: var(--b);
  border: solid var(--b);
  padding-top: 5px;
  padding-bottom: 5px;
  padding-right: 5px;
  padding-left: 5px;
  margin-right: 5px;
  margin-bottom: -5px;
   }
/*стиль блока участники*/ 
.e4 {
  padding: 7px;
  border: 1px solid var(--b);
  width: calc(var(--g));
    height: 22px;
    font-size: 1.1em;
    font-family: var(--f);
}
</style>

<div id="game">
<div align="center">
<div class="e1"><img src="https://dummyimage.com/500x200/dbc3db/fff.jpg"></div>
<table style="width:calc(var(--g));" border="0">
    <tbody>
    <tr>
        <td class="e2">Название эпизода</td>
        <td class="e3">
Описание эпизода:
<br>
        — Вэй Усянь мёртв! Вот так прекрасные новости!<br>
<br>
Не прошло и дня с осады горы Луаньцзан, как добрые вести разлетелись среди заклинателей, будто на крыльях, ничуть не уступая в скорости когда-то разгоревшемуся пожару войны. И в самых именитых кланах, и среди простых бродячих заклинателей — всюду оживленно обсуждали осаду, которую возглавили Четыре Великих Ордена, собрав под свои знамёна сотни союзников.
        </td>
    </tr>
    </tbody>
</table>
<div class="e4">
     Участники эпизода
</div>
</div></div>[/html]

0

179

[html]
<style>
body {
  background: #eee;
  padding: 20px;
}

article {
  max-width: 50em;
  background: white;
  padding: 2em;
  margin: 1em auto;
}

.table-of-contents {
  float: right;
  width: 40%;
  background: #eee;
  font-size: 0.8em;
  padding: 1em 2em;
  margin: 0 0 0.5em 0.5em;
}
.table-of-contents ul {
  padding: 0;
}
.table-of-contents li {
  margin: 0 0 0.25em 0;
}
.table-of-contents a {
  text-decoration: none;
}
.table-of-contents a:hover,
.table-of-contents a:active {
  text-decoration: underline;
}

h3:target {
  animation: highlight 1s ease;
}

@keyframes highlight {
  from { background: yellow; }
  to { background: white; }
}
</style>
<script>

var ToC =
  "<nav role='navigation' class='table-of-contents'>" +
    "<h2>On this page:</h2>" +
    "<ul>";

var newLine, el, title, link;

$("article h3").each(function() {

  el = $(this);
  title = el.text();
  link = "#" + el.attr("id");

  newLine =
    "<li>" +
      "<a href='" + link + "'>" +
        title +
      "</a>" +
    "</li>";

  ToC += newLine;

});

ToC +=
   "</ul>" +
  "</nav>";

$(".all-questions").prepend(ToC);

</script>
<article>
  <h1>Documentation</h1>
 
  <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.</p> 
 
  <div class="all-questions">
 
  <h3 id="one">How do you smurf a murf?</h3>
 
  <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.</p> 
 
  <h3 id="two">How do many licks does a giraffe?</h3>
 
  <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.</p> 
 
  <h3 id="three">Which Frank is?</h3>
 
  <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.</p> 
 
  <h3 id="four">Is fourteen enough?</h3>
 
  <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.</p> 
 
  <h3 id="five">Is a circle an oval y/n?</h3>
 
  <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.</p> 
 
  <h3 id="six">Many mongerals manifest mountains</h3>
 
  <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.</p> 
 
  <h3 id="seven">How would you like a soda drink?</h3>
 
  <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.</p> 
 
  <h3 id="eight">I would very much like a soda drink.</h3>
 
  <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.</p> 
 
  <h3 id="nine">Thank you for accepting the soda drink.</h3>
 
  <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.</p>
   
  </div>
 
</article>
[/html]

0

180

[html]
<script>
/* super inefficient right now, could be improved */
var c = document.getElementById('c'),
    ctx = c.getContext('2d'),
    cw = c.width = 400,
    ch = c.height = 300,
    rand = function(a,b){return ~~((Math.random()*(b-a+1))+a);},
    dToR = function(degrees){
        return degrees * (Math.PI / 180);
    },
    circle = {
      x: (cw / 2) + 5,
      y: (ch / 2) + 22,
      radius: 90,
      speed: 2,
      rotation: 0,
      angleStart: 270,
      angleEnd: 90,
      hue: 220,
      thickness: 18,
      blur: 25
    },
    particles = [],
    particleMax = 100,
    updateCircle = function(){
      if(circle.rotation < 360){
      circle.rotation += circle.speed;
      } else {
      circle.rotation = 0;
      }
    },
    renderCircle = function(){
      ctx.save();
      ctx.translate(circle.x, circle.y);
      ctx.rotate(dToR(circle.rotation));
      ctx.beginPath();
      ctx.arc(0, 0, circle.radius, dToR(circle.angleStart), dToR(circle.angleEnd), true);
      ctx.lineWidth = circle.thickness;   
      ctx.strokeStyle = gradient1;
      ctx.stroke();
      ctx.restore();
    },
    renderCircleBorder = function(){
      ctx.save();
      ctx.translate(circle.x, circle.y);
      ctx.rotate(dToR(circle.rotation));
      ctx.beginPath();
      ctx.arc(0, 0, circle.radius + (circle.thickness/2), dToR(circle.angleStart), dToR(circle.angleEnd), true);
      ctx.lineWidth = 2; 
      ctx.strokeStyle = gradient2;
      ctx.stroke();
      ctx.restore();
    },
    renderCircleFlare = function(){
      ctx.save();
      ctx.translate(circle.x, circle.y);
      ctx.rotate(dToR(circle.rotation+185));
      ctx.scale(1,1);
      ctx.beginPath();
      ctx.arc(0, circle.radius, 30, 0, Math.PI *2, false);
      ctx.closePath();
      var gradient3 = ctx.createRadialGradient(0, circle.radius, 0, 0, circle.radius, 30);     
      gradient3.addColorStop(0, 'hsla(330, 50%, 50%, .35)');
      gradient3.addColorStop(1, 'hsla(330, 50%, 50%, 0)');
      ctx.fillStyle = gradient3;
      ctx.fill();     
      ctx.restore();
    },
    renderCircleFlare2 = function(){
      ctx.save();
      ctx.translate(circle.x, circle.y);
      ctx.rotate(dToR(circle.rotation+165));
      ctx.scale(1.5,1);
      ctx.beginPath();
      ctx.arc(0, circle.radius, 25, 0, Math.PI *2, false);
      ctx.closePath();
      var gradient4 = ctx.createRadialGradient(0, circle.radius, 0, 0, circle.radius, 25);
      gradient4.addColorStop(0, 'hsla(30, 100%, 50%, .2)');
      gradient4.addColorStop(1, 'hsla(30, 100%, 50%, 0)');
      ctx.fillStyle = gradient4;
      ctx.fill();     
      ctx.restore();
    },
    createParticles = function(){
      if(particles.length < particleMax){
        particles.push({
          x: (circle.x + circle.radius * Math.cos(dToR(circle.rotation-85))) + (rand(0, circle.thickness*2) - circle.thickness),
          y: (circle.y + circle.radius * Math.sin(dToR(circle.rotation-85))) + (rand(0, circle.thickness*2) - circle.thickness),
          vx: (rand(0, 100)-50)/1000,
          vy: (rand(0, 100)-50)/1000,
          radius: rand(1, 6)/2,
          alpha: rand(10, 20)/100
        });
      }
    },
    updateParticles = function(){
      var i = particles.length;
      while(i--){
      var p = particles[i];
        p.vx += (rand(0, 100)-50)/750;
        p.vy += (rand(0, 100)-50)/750;
        p.x += p.vx;
        p.y += p.vy;
        p.alpha -= .01;
       
        if(p.alpha < .02){
          particles.splice(i, 1)
        }
      }
    },
    renderParticles = function(){
      var i = particles.length;
      while(i--){
      var p = particles[i];
        ctx.beginPath();
        ctx.fillRect(p.x, p.y, p.radius, p.radius);
        ctx.closePath();
        ctx.fillStyle = 'hsla(0, 0%, 100%, '+p.alpha+')';
      }
    },
    clear = function(){
      ctx.globalCompositeOperation = 'destination-out';
      ctx.fillStyle = 'rgba(0, 0, 0, .1)';
      ctx.fillRect(0, 0, cw, ch);
      ctx.globalCompositeOperation = 'lighter';   
    }
    loop = function(){
      clear();
      updateCircle();
      renderCircle();
      renderCircleBorder();
      renderCircleFlare();
      renderCircleFlare2();
      createParticles();
      updateParticles();
      renderParticles();
    }

/* Append Canvas */
//document.body.appendChild(c);

/* Set Constant Properties */
ctx.shadowBlur = circle.blur;
ctx.shadowColor = 'hsla('+circle.hue+', 80%, 60%, 1)';
ctx.lineCap = 'round'
 
var gradient1 = ctx.createLinearGradient(0, -circle.radius, 0, circle.radius);
gradient1.addColorStop(0, 'hsla('+circle.hue+', 60%, 50%, .25)');
gradient1.addColorStop(1, 'hsla('+circle.hue+', 60%, 50%, 0)');
 
var gradient2 = ctx.createLinearGradient(0, -circle.radius, 0, circle.radius);
gradient2.addColorStop(0, 'hsla('+circle.hue+', 100%, 50%, 0)');
gradient2.addColorStop(.1, 'hsla('+circle.hue+', 100%, 100%, .7)');
gradient2.addColorStop(1, 'hsla('+circle.hue+', 100%, 50%, 0)');

/* Loop It, Loop It Good */
setInterval(loop, 16);

</script>

<canvas id="c" style="
    width: 200px;
"></canvas>

[/html]

0


Вы здесь » concoction » ХТМЛ и журнал » Тестовое сообщение


Рейтинг форумов | Создать форум бесплатно