body {
  background-image:url("https://64.media.tumblr.com/dfa9174ec5746864cfb77543cdb8d5f7/fe3da0387dd9f5ed-8a/s250x400/b61960c3975e6da303eb6b627a3096b578fff940.gifv");
  font-family: Arial, sans-serif;
  margin: 0;
  padding: 0;
}

/* MARQUEE */
.marquee {
  width: 100%;
  overflow: hidden;
  border-bottom: 2px solid black;
  background: #fff;
}

.marquee-track {
  display: flex;
  width: max-content;
  animation: marquee-scroll 8s linear infinite;
}

.marquee-track span {
  padding-right: 32px;
  white-space: nowrap;
}

@keyframes marquee-scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

/* FRAME */
.page-frame {
  background:url(https://64.media.tumblr.com/eeaed5f23494ad63d24c1d7be8b9eefe/fe3da0387dd9f5ed-b4/s640x960/f899291eba7f73cc6b8a603112656627950bb487.pnj);
  width: 1200px;
  margin: 40px auto;
  padding: 20px;
}

.page-title {
  text-align: center;
  font-family: "Mea Culpa", cursive;
  font-weight: 400;
  font-style: normal;
font-size: 100px;
background: -webkit-linear-gradient(#FFFFFF, #FF97C4);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
-webkit-text-stroke: 1px #ee3fb0;

animation: floating 3s ease-in-out infinite;

z-index: 100; 

}

@keyframes floating {

    0% { transform: translate(0, -8px); }

    50% { transform: translate(0, 8px); }

    100% { transform: translate(0, -8px); }   

}

/* GRID */
.content-grid {
  display: grid;
  grid-template-columns: 180px 1fr 160px;
  gap: 15px;
}

/* CHATBOX */
.chatbox {
  border: 2px solid black;
  padding: 10px;
  width: 235px;
}

.chat-line {
  height: 20px;
  border: 1px solid black;
  margin-bottom: 5px;
}

.chat-input {
  height: 30px;
  border: 1px solid black;
  margin-top: 10px;
}

/* MAIN */
.main-content {
  border: 0px solid black;
  padding: 10px;
  width: 485px;
   margin-left: 80px;
}

.self-intro {
  border: 1px solid black;
  padding: 5px;
  display: flex;
  gap: 10px;
}


/* floating decorations */
.float {
  position: absolute;
  width: 50px;
  z-index: 1;
  pointer-events: none;
  animation: floaty 4s ease-in-out infinite;
}

/* stage */
.phone-stage {
  position: relative;
  width: 360px;   
  height: 520px;
  margin-right: 160px; 
  overflow: visible; 
}

/* phone bg */
.phone-bg {
  position: absolute;
  top: 0;
  left: -30px;

  width: 100%;
  height: 100%;

  background-image: url("https://64.media.tumblr.com/498de88b06eb1c11a2fd63c6a35fb145/3cb6c28b2084a72b-aa/s1280x1920/f74bba93dd0e0c320e8902f37293ffbad9c1fffc.pnj");
  background-repeat: no-repeat;
  background-size: contain;  
  background-position: left center;

  pointer-events: none;
  z-index: 1;
}

/* app  */
.phone-apps {
  position: absolute;
  top: 110px;    
  left: 34px;
  width: 185px;

  display: grid;
  grid-template-columns: repeat(3, 1fr); 
  gap: 3px;

  z-index: 2;
}

.phone-apps img {
  width: 64px;     
  height: 64px;
  object-fit: contain;
  display: block;
}

/* decos */
.deco {
  position: absolute;
  pointer-events: none; 
  z-index: 5;
}

.deco-1 {
  width: 280px;  
  height: 290px;
  top: 240px;     
  left: 100px;
}

.deco-2 {
  width: 180px;  
  height: 180px;
  top: 5px;
  left: 200px;
}

.deco-3 {
  bottom: -40px;
  left: 60px;
}

.stamps img {
  height: 40px;
}

/* NOW PLAYING */
.now-playing {
  border: 2px solid black;
  padding: 10px;
  text-align: center;
  width: 235px;
}

.player-circle {
  width: 60px;
  height: 60px;
  border: 2px solid black;
  border-radius: 50%;
  margin: 10px auto;
}

/* STAMPS MARQUEE */
.stamps-marquee {
  width: 100%;
  overflow: hidden;
  border: 1px solid black;
  padding: 6px 0;
  margin-top: 10px;
  background: #fff;
}

.stamps-track {
  display: flex;
  width: max-content;
  animation: stamps-scroll 15s linear infinite;
}

.stamps-track img {    
  height: 60px;
  margin-right: 12px;
}

@keyframes stamps-scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}


/* LINKS */
.image-links {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin: 30px 0;
}

/* BLINKIES */
.blinkies {
  border: 2px solid black;
  width: 600px;
  margin: auto;
  padding: 10px;
  text-align: center;
}

/* PAPERDOLL */
.paperdoll {
  border: 2px solid black;
  width: 600px;
  margin: 20px auto;
  padding: 20px;
  text-align: center;
}

/* DIVIDER */
.divider {
  width: 650px;
  height: 0px;
  margin: 40px auto; 
  right: 80px;
}

/* FIXED ELEMENTS */
.fixed-left {
  position: fixed;
  bottom: 0;
  left: 0;
}

.fixed-right {
  position: fixed;
  bottom: 0;
  right: 0;
}


