| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198 | <!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8" />  <!-- <link rel="icon" type="image/svg+xml" href="/vite.svg" /> -->  <link rel="icon" type="image/png" href="/icon.png" />  <meta name="viewport" content="width=device-width, initial-scale=1.0" />  <title><%- title %></title></head><body>  <div id="app">    <style>      #loader-wrapper {        position: fixed;        top: 0;        left: 0;        width: 100%;        height: 100%;        z-index: 1000;      }      #loader {        display: block;        position: relative;        left: 50%;        top: 50%;        width: 150px;        height: 150px;        margin: -75px 0 0 -75px;        border-radius: 50%;        border: 3px solid transparent;        border-top-color: #3498db;        -webkit-animation: spin 2s linear infinite;        /* Chrome, Opera 15+, Safari 5+ */        animation: spin 2s linear infinite;        /* Chrome, Firefox 16+, IE 10+, Opera */        z-index: 1001;      }      #loader-logo {        display: block;        position: absolute;        left: 48%;        top: 46%;        background: url(../images/user-bg-2.jpg) no-repeat center center;        z-index: 1001;      }      #loader:before {        content: "";        position: absolute;        top: 5px;        left: 5px;        right: 5px;        bottom: 5px;        border-radius: 50%;        border: 3px solid transparent;        border-top-color: #e74c3c;        -webkit-animation: spin 3s linear infinite;        /* Chrome, Opera 15+, Safari 5+ */        animation: spin 3s linear infinite;        /* Chrome, Firefox 16+, IE 10+, Opera */      }      #loader:after {        content: "";        position: absolute;        top: 15px;        left: 15px;        right: 15px;        bottom: 15px;        border-radius: 50%;        border: 3px solid transparent;        border-top-color: #f9c922;        -webkit-animation: spin 1.5s linear infinite;        /* Chrome, Opera 15+, Safari 5+ */        animation: spin 1.5s linear infinite;        /* Chrome, Firefox 16+, IE 10+, Opera */      }      @-webkit-keyframes spin {        0% {          -webkit-transform: rotate(0deg);          /* Chrome, Opera 15+, Safari 3.1+ */          -ms-transform: rotate(0deg);          /* IE 9 */          transform: rotate(0deg);          /* Firefox 16+, IE 10+, Opera */        }        100% {          -webkit-transform: rotate(360deg);          /* Chrome, Opera 15+, Safari 3.1+ */          -ms-transform: rotate(360deg);          /* IE 9 */          transform: rotate(360deg);          /* Firefox 16+, IE 10+, Opera */        }      }      @keyframes spin {        0% {          -webkit-transform: rotate(0deg);          /* Chrome, Opera 15+, Safari 3.1+ */          -ms-transform: rotate(0deg);          /* IE 9 */          transform: rotate(0deg);          /* Firefox 16+, IE 10+, Opera */        }        100% {          -webkit-transform: rotate(360deg);          /* Chrome, Opera 15+, Safari 3.1+ */          -ms-transform: rotate(360deg);          /* IE 9 */          transform: rotate(360deg);          /* Firefox 16+, IE 10+, Opera */        }      }      #loader-wrapper .loader-section {        position: fixed;        top: 0;        width: 51%;        height: 100%;        background: #222222;        z-index: 1000;        -webkit-transform: translateX(0);        /* Chrome, Opera 15+, Safari 3.1+ */        -ms-transform: translateX(0);        /* IE 9 */        transform: translateX(0);        /* Firefox 16+, IE 10+, Opera */      }      #loader-wrapper .loader-section.section-left {        left: 0;      }      #loader-wrapper .loader-section.section-right {        right: 0;      }      /* Loaded */      .loaded #loader-wrapper .loader-section.section-left {        -webkit-transform: translateX(-100%);        /* Chrome, Opera 15+, Safari 3.1+ */        -ms-transform: translateX(-100%);        /* IE 9 */        transform: translateX(-100%);        /* Firefox 16+, IE 10+, Opera */        -webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);        transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);      }      .loaded #loader-wrapper .loader-section.section-right {        -webkit-transform: translateX(100%);        /* Chrome, Opera 15+, Safari 3.1+ */        -ms-transform: translateX(100%);        /* IE 9 */        transform: translateX(100%);        /* Firefox 16+, IE 10+, Opera */        -webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);        transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);      }      .loaded #loader {        opacity: 0;        -webkit-transition: all 0.3s ease-out;        transition: all 0.3s ease-out;      }      .loaded #loader-wrapper {        visibility: hidden;        -webkit-transform: translateY(-100%);        /* Chrome, Opera 15+, Safari 3.1+ */        -ms-transform: translateY(-100%);        /* IE 9 */        transform: translateY(-100%);        /* Firefox 16+, IE 10+, Opera */        -webkit-transition: all 0.3s 1s ease-out;        transition: all 0.3s 1s ease-out;      }    </style>    <div id="loader-wrapper">      <div id="loader"></div>      <div class="loader-section section-left"></div>      <div class="loader-section section-right"></div>    </div>  </div>  <script type="module" src="/src/main.ts"></script></body></html>
 |