body {
    font-family: "Roboto", sans-serif;
    background: #FFF;
}

*[id] {
    scroll-margin-top: 1rem;
}

.separate {
    height: 2px;
    background-image: linear-gradient(43deg, #4158D0 0%, #C850C0 46%, #FFF 100%);
}

.drop-shadow {
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

.text-pink {
    color: #ae52c3;
}

.link-darkblue {
    color: #4158D0;
}

.link-darkblue:focus, .link-darkblue:hover {
    color: #4158D0;
}

.bd-navbar {
    padding: 0.75rem 0;
    background-image: linear-gradient(43deg, #4158D0 0%, #C850C0 46%, #FFCC70 100%);
    /*background-image:linear-gradient(160deg, #0093E9 0%, #80D0C7 100%);*/
}

.mb-6 {
    margin-bottom: 5rem !important;
}

a {
    color: #ae52c3;
    text-decoration: none;
}

a:hover {
    color: #ae52c3;
}

a.animated {
    position: relative;
}

a.animated::before {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 2px;
    background-color: #ae52c3;
    transition: width 1s cubic-bezier(0.25, 1, 0.5, 1);
}

a.animated:hover::before {
    left: 0;
    right: auto;
    width: 100%;
}

.btn-outline-pink {
    color: #ae52c3;
    border-color: #ae52c3;
}

.btn-outline-pink:hover,
.btn-outline-pink:active {
    color: #fff;
    background-color: #ae52c3;
    border-color: #ae52c3;
}

.btn-outline-pink:focus {
    box-shadow: 0 0 0 0.25rem rgb(174 82 195 / 50%);
}

.btn-grad {
    background-image: linear-gradient(43deg, #4158D0 0%, #C850C0 46%, #FFCC70 100%)
}

.btn-grad {
    padding: 10px;
    text-transform: uppercase;
    transition: 0.5s;
    background-size: 200% auto;
    color: white;
}

.btn-grad:hover {
    background-position: right center;
    color: #fff;
}

.post-header .post-title {
    color: #4158D0;
}

.toc nav ul {
    padding-left: 0;
    list-style: none;
}

.toc nav ul ul {
    padding-left: 1rem;
    margin-top: 0.25rem;
}

.toc nav li {
    margin-bottom: 0.25rem;
}

.toc nav a {
}

.toc nav a.active {
    color: #ae52c3;
}

.video video {
    width: 100%;
    height: 100%;
    border-radius: 6px;
}

.video video[poster] {
    object-fit: cover;
}

.image img {
    border-radius: 6px;

}

.hljs {
    border-radius: 6px;
}

.vlp {
    border-radius: 6px;
}

.tag-cloud {
    background-color: #FBFBFD;
    border-radius: 6px;

}

ul.cloud {
    list-style: none;
    padding-left: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    /*justify-content: center;*/
    line-height: 2.5rem;
}

ul.cloud a {
    color: rgba(var(--bs-secondary-rgb));
    display: inline;
    font-size: 1.5rem;
    padding: 0.125rem 0.25rem;
    text-decoration: none;
    position: relative;
}

ul.cloud a:before {
    content: "";
    position: absolute;
    width: 0;
    height: 2px;
    bottom: 0;
    left: 0;
    background-color: #ae52c3;
    visibility: hidden;
    transition: all 0.3s ease-in-out;
}

ul.cloud a:hover:before {
    visibility: visible;
    width: 100%;
}

ul.cloud a[data-weight="1"] {
    --size: 0.5;
}

ul.cloud a[data-weight="2"] {
    --size: 1;
}

ul.cloud a[data-weight="3"] {
    --size: 1.5;
}

ul.cloud a[data-weight="4"] {
    --size: 2;
}

ul.cloud a[data-weight="5"] {
    --size: 2.5;
}

ul.cloud a[data-weight="6"] {
    --size: 3;
}

ul.cloud a[data-weight="7"] {
    --size: 3.5;
}

ul.cloud a[data-weight="8"] {
    --size: 4;
}

ul.cloud a[data-weight="9"] {
    --size: 4.5;
}

ul.cloud a {
    --size: 4;
    font-size: calc(var(--size) * 0.25rem + 0.5rem);
    /*opacity: calc((15 - (9 - var(--size))) / 15);*/
}

.back-to-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    cursor: pointer;
    z-index: 999;
}

.repo-language-color {
    position: relative;
    top: 1px;
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
}

.bg-github {
    right: -2rem;
    position: absolute;
    font-size: 7rem;
    bottom: -3rem;
}

.linkedin {
    color: #0077b5;
}

.linkedin:hover {
    color: #01669a;
}

.twitter {
    color: #1DA1F2;
}

.twitter:hover {
    color: #188cd3;
}

.whatsapp {
    color: #25D366;
}

.whatsapp:hover {
    color: #1cb254;
}


.share {
    color: #ae52c3;
}

.share:hover {
    color: #9843ab;
}

.page-link {
    border: none;
    color: #ae52c3;
    text-transform: uppercase;
    transition: 0.5s;
    background-size: 200% auto;
}

.page-link:hover {
    background-image: linear-gradient(43deg, #4158D0 0%, #C850C0 46%, #FFCC70 100%);
    background-position: right center;
    color: #fff;
}

.page-item.active .page-link {
    z-index: 3;
    color: #fff;
    background-image: linear-gradient(43deg, #4158D0 0%, #C850C0 46%, #FFCC70 100%);
}