@font-face {
    font-family: GoodDog;
    src: url(GOODDC.TTF);
}
@font-face {
    font-family: HaloDek;
    src: url(Halo\ Dek.ttf);
}
@keyframes Scroll {
    0% {
        background-position: 0px 0px;
    }
    100% {
        background-position: 5vw 5vw;
    }
}
/* @view-transition {
    navigation: auto;
} */

@keyframes SlideOut {
    from {
        transform: translateY(0);
        opacity: 100;
    }
    to {
        transform:translateY(-20vh);
        opacity: 0;
    }
}
@keyframes SlideIn{
    from {
        transform:translateY(20vh);
        opacity: 100;
    }
    to {
        transform: translateY(0);
        opacity: 100;
    }
}


:root {
    --DefaultFont: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    --Rounding: 8px;
    --Border: 3px;
    --Border-Thin: 2px;
    --GlassBlur: 3px;
    --Normal-Font-Size:4vh;
    --Purple: rgb(132, 0, 255);
    --Pink: rgb(247, 0, 255);
    --White: rgb(255, 255, 255);
    --GlassBG: rgba(0, 0, 0, 0.425);
    --BG-Gradient: linear-gradient(180deg,rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0.41) 75%, rgba(0, 0, 0, 0.42) 100%);
}

::view-transition {
    background-color: black;
}

/*::view-transition-group(root) {
    transition: .25s;
}
::view-transition-new(root){
    animation-name: SlideIn;
}
::view-transition-old(root){
    animation-name: SlideOut;
} */


/* tags */

body {
    font-family: var(--DefaultFont);
    margin:0px;
    background-color: black;
}

header {
    font-family: GoodDog;
    z-index: 2;z-index: 2;
    font-size: var(--Normal-Font-Size);
    text-align: center;
    position: fixed;
    color: var(--White);
    background: var(--BG-Gradient);
    width: 100%;
    height: 12vh;
    backdrop-filter: blur(var(--GlassBlur));
    border-bottom: var(--Border) solid var(--GlassBG);
}

footer {
    color: white;
    font-size: 1.5vh;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    text-align: center;
    align-content: end;
    position: fixed;
    bottom: 0%;
    background: var(--BG-Gradient);
    width: 100%;
    height: 11vh;
    backdrop-filter: blur(var(--GlassBlur));
    border-top: var(--Border) solid var(--GlassBG);
}

menu {
    justify-content: center;
    margin: auto;
    margin-left: -2.5vw;
    height: 6vh;
    width: 100%;
    display: flex;
}

label {
    user-select: none;
}

a {
    transition: .5s;
    color: var(--Purple);
    text-decoration: underline;
    text-decoration-color: var(--Purple);
}
#Main a, #Side a{
    background: var(--BG-Gradient);
    padding: .4vw;
    border-radius: var(--Rounding);
    line-height: 4.5vh;
}

iframe {
    width: 40vw;
    height: 40vh;
    border: 2px solid var(--Purple);
    border-radius: 15px;
}

a:hover {
    color: var(--Pink);
    text-decoration-color: var(--Pink);
    font-size: 4.7vh;
}

/* Classes */

.Button {
    text-decoration: underline;
    text-decoration-color: var(--Purple);
    text-align: center;
    align-content: center;
    color:aliceblue;
    border-radius: var(--Rounding);
    margin: 10px;
    padding: 5px;
    width: 20vw;
    height: 4vh;
    background: var(--BG-Gradient);
    border: var(--Border-Thin) solid rgba(43, 41, 41, 0.6);
    text-shadow: 0px 0px 10px black;
    transition: .5s ease-out;
}

.webicon {
    width: 1.5vw;
    letter-spacing: 3vw;
}

.Sticker {
    z-index: 9999 !important;
    position: fixed;
    user-select: none;
    -webkit-user-drag: none;
    cursor: grab;
    max-width: 5vw;
    image-rendering:optimizeQuality;
}

.Sticker:active {
    box-shadow: 0px 15px 4px 4px rgba(0, 0, 0, 0.11);
    cursor: grabbing;
}

.ArtPiece {
    user-select: none;
    -webkit-user-drag: none;
    overflow: hidden;
    margin: 1vw 1vw 0 1vw;
    width: 100%;
    height: 30vh;
    border: var(--Border) solid var(--GlassBG);
    border-radius: var(--Rounding);
    background-color: var(--Purple);
    text-align: end;
    transition: .25s;
    transition-property: transform;
}

.ArtPiece:hover {
    transform: scale(1.3);
    z-index: 10;
}

.ArtPieceIMG{
    user-select: none;
    -webkit-user-drag: none;
    filter: blur(3px) brightness(.4);
    object-fit:cover;
    width: 100%;
    height: 100%;
    aspect-ratio: 1/1;
    border-radius: var(--Rounding);
    transition: .25s;
    position: static;
}
.ArtPiece:hover .ArtPieceIMG{
    filter:none;
    object-fit: contain;
}

.ArtPiece:hover .ArtText {
    visibility: hidden;
}
.ArtText {
    transform: translate(-.3vw, -4.5vh);
}

.Button:hover {
    font-size: 5vh;
    background-color: rgba(255, 255, 255, 0.6);
    margin: 15px;
    padding-bottom: 9px;
    width: 21vw;
    height: 4.5vh;
    border: var(--Border-Thin) solid rgba(255, 255, 255, 0.6);
}


/* ID's */

#Side, #Main, #ArtContainer {
    view-transition-name: main-content;
    
}

#NikImg {
    user-select: none;
    -webkit-user-drag: none;
    position: relative;
    top: -5%;
    width: 100%;
    height: 100%;
    aspect-ratio: 1;
    object-fit: contain;
}

#BGIC {
    background-image: url("diamondpattern.png");
    background-size: 5vw;
    animation: Scroll 10s linear infinite;
    position: absolute;
    width: 100vw;
    height: 100vh;
    overflow:hidden;
}

#BGI {
    z-index: -100;
    position: absolute;
    bottom:0%;
    width: 102%;
    left: -1%;
    bottom: -1%;
    min-height: 100%;
    min-width: 100%;
    display: flex;
    object-fit: cover;
    filter: saturate(1.7) contrast(1.1) blur(3px);
    user-select: none;
    -webkit-user-drag: none;
}

#Side {
    line-height: 2.9vh;
    font-family: var(--DefaultFont);
    color: white;
    text-align: center;
    position: fixed;
    font-size: 3vh;
    padding-top: 5vh;
    top: 20vh;
    left: 5vw;
    width: 40vw;
    height: 55vh;
    align-content: start;
    border: var(--Border) solid var(--GlassBG);
    backdrop-filter: blur(var(--GlassBlur));
    background: var(--BG-Gradient);
    border-radius: var(--Rounding);
    overflow-y:auto;
    scrollbar-color: var(--GlassBG) rgba(0,0,0,0);
}

#StickerContainer {
    position: fixed;
    left: 5vw;
    width: 40vw;
    top: 82vh;
}

#ArtContainer {
    justify-self: center;
    align-self:center;
    display: grid;
    grid-template-columns: 21.65vw 21.65vw 21.65vw;
    grid-gap: 1vw;
    margin: 2px;
    backdrop-filter: blur(var(--GlassBlur));
    background: var(--BG-Gradient);
    outline: 2px;
    margin-top: 1.5vh;
    width: 99%;
    height: 90%;
    border-radius: var(--Rounding);
    border: var(--Border) solid var(--GlassBG);
    overflow-y: auto;
    scrollbar-color: rgb(255,255,255) rgba(0,0,0,0);
}

#MainArt {
    z-index: 3;
    line-height: 3.5vh;
    font-family: var(--DefaultFont);
    color: white;
    text-align: center;
    position: fixed;
    font-size: 3vh;
    padding-top: 2vh;
    top: 18vh;
    left: 15vw;
    width: 70vw;
    height: 60vh;
    align-content: start;
    border: var(--Border) solid var(--GlassBG);
    backdrop-filter: blur(var(--GlassBlur));
    background: linear-gradient(180deg,rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0.41) 15%, rgba(0, 0, 0, 0.42) 20%);
    border-radius: var(--Rounding);
    overflow:hidden;
}

#Main {
    line-height: 3.5vh;
    font-family: var(--DefaultFont);
    color: white;
    text-align: center;
    position: fixed;
    font-size: 3vh;
    padding-top: 5vh;
    top: 18vh;
    left: 15vw;
    width: 70vw;
    height: 60vh;
    align-content: start;
    border: var(--Border) solid var(--GlassBG);
    backdrop-filter: blur(var(--GlassBlur));
    background: var(--BG-Gradient);
    border-radius: var(--Rounding);
    overflow-y:auto;
    scrollbar-color: var(--GlassBG) rgba(0,0,0,0);
}

#PawPattern1, #PawPattern2 {
    user-select: none;
    -webkit-user-drag: none;
    z-index: -1;
    width: 30vw;
    height: 50vh;
    position: fixed;
    object-fit: contain;
    aspect-ratio: 1;
}

#PawPattern1 {
    left: -7vw;
    top: 25vh;
    transform: scalex(-1);
}
#PawPattern2 {
    right: -7vw;
    top: 25vh;
}


#IntEle {
    z-index: 0;
    width: 30%;
    height: 85%;
    position: fixed;
    align-content: center;
    justify-content: center;
    right: 12%;
    top: 4%;
    aspect-ratio: 1;
    object-fit:contain;
}

#IntPet {
    position: relative;
    /* background-color: rgb(255, 0, 0); */
    width: 20%;
    height: 9%;
    left: 68%;
    top: 21%;
    cursor: grab;
    z-index: 2;
}
#IntBoop {
    position: relative;
    /* background-color: rgb(0, 17, 255); */
    width: 8%;
    height: 3%;
    left: 67%;
    top: 40%;
    cursor: grab;
    z-index: 2;
    cursor: pointer;
}
#IntBoop:active ~ #BoopImg {
    visibility: visible;
}
#NSFWcheck:checked ~ #IntPet {
    visibility: collapse;
    background-color: aqua;
}

#IntPet:active {
    outline: 3px dashed rgba(0, 0, 0, 0.069);
    cursor: grabbing;
    left: 66%;
    width: 25%;
    transform: scale(1.5) scaleY(1.4);
}

#IntPet:active ~ #BubbleImg {
    visibility: visible;
}

#IntPet:hover ~ #NikImg {
    content: url('NikLookUp.webp');
}

#IntPet:active ~ #NikImg {
    content: url('NikPet.webp');
}

#IntPaw {
    position: relative;
    /* background-color: rgb(0, 255, 64); */
    width: 30%;
    height: 30%;
    left: 38%;
    top: 95%;
    cursor: grab;
    z-index: 2;
}

#IntPaw:hover {
    cursor: url('Sparkles.png') 18 18, auto;
}

#IntPaw:active ~ #WBubbleImg {
    visibility: visible;
}

#IntPaw:active ~ #NikImg {
    content: url(NikTouched.webp);
}

#NFSW {
    color: white;
    position: fixed;
    font-size: 1.5vh;
    left: 19%;
    padding: 10px;
    padding-right: 15px;
    bottom: 14%;
    background-color: var(--GlassBG);
    border-radius: var(--Rounding);
    border: var(--Border-Thin) solid var(--GlassBG);
    backdrop-filter: blur(var(--GlassBlur));
}

#NikHome {
    user-select: none;
    max-height: 100%;
    aspect-ratio: 1;
}

#BubbleImg {
    position: fixed;
    width: 12%;
    top:27%;
    visibility: hidden;
}
#BoopImg {
    position: fixed;
    width: 12%;
    top:33%;
    visibility: hidden;
    rotate: -15deg;
}
#WBubbleImg {
    position: fixed;
    width: 12%;
    top:27%;
    visibility: hidden;
}
#audio {
    filter: brightness(.3);
}

/* Spans */
.CFontB {
    font-family: HaloDek;
    font-size: 8vh;
}
.CFont {
    font-family: GoodDog;
    font-size: 4.5vh;
}

.WFont {
    margin: 0%;
    font-family: GoodDog;
    font-size: 2vh;
    color: rgba(255, 255, 255, 0.2);
}