/* RESET */
*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

/* COLORS */
:root{
  --purple:#7b2cbf;
  --pink:#ff4da6;
  --light:#f8f8f8;
  --dark:#111;
}

/* GLOBAL */
body{
  font-family:Arial, sans-serif;
  background:white;
  color:var(--dark);
}

.container{
  width:90%;
  max-width:1000px;
  margin:auto;
}

/* NAVBAR */
.navbar{
  background:white;
  border-bottom:1px solid #eee;
}

.nav{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:15px 0;
}

.logo{
  color:var(--purple);
}

nav{
  display:flex;
  gap:20px;
}

nav a{
  text-decoration:none;
  color:black;
}

nav a:hover{
  color:var(--pink);
}

#menu-toggle{
  display:none;
  font-size:24px;
  cursor:pointer;
}

/* HERO */
.hero{
  background:linear-gradient(135deg,var(--purple),var(--pink));
  color:white;
  text-align:center;
  padding:80px 20px;
}

.hero h1{
  font-size:3rem;
}

/* CREATE POST */
.create-post{
  padding:40px 0;
}

.post-box{
  background:var(--light);
  padding:25px;
  border-radius:12px;
}

.post-box input,
.post-box textarea{
  width:100%;
  padding:15px;
  margin-bottom:15px;
  border:none;
  border-radius:8px;
  font-size:16px;
}

.post-box textarea{
  min-height:120px;
  resize:none;
}

/* BUTTON */
button{
  background:var(--purple);
  color:white;
  border:none;
  padding:12px 20px;
  border-radius:6px;
  cursor:pointer;
}

button:hover{
  background:var(--pink);
}

/* POSTS */
.posts-section{
  padding-bottom:60px;
}

.post{
  background:var(--light);
  padding:20px;
  border-radius:12px;
  margin-bottom:25px;
}

.post h3{
  color:var(--purple);
  margin-bottom:10px;
}

.post p{
  margin-bottom:15px;
}

/* ACTIONS */
.actions{
  display:flex;
  gap:15px;
  margin-bottom:15px;
}

.actions button{
  padding:8px 14px;
  font-size:14px;
}

/* COMMENTS */
.comment-input{
  width:100%;
  padding:12px;
  border-radius:6px;
  border:none;
  margin-bottom:10px;
}

.comment{
  background:white;
  padding:10px;
  border-radius:6px;
  margin-top:8px;
}

/* FOOTER */
footer{
  background:black;
  color:white;
  text-align:center;
  padding:20px;
}

/* MOBILE */
@media(max-width:768px){

  nav{
    display:none;
    position:absolute;
    top:70px;
    right:0;
    background:white;
    flex-direction:column;
    width:200px;
    padding:20px;
  }

  nav.active{
    display:flex;
  }

  #menu-toggle{
    display:block;
  }

  .hero h1{
    font-size:2rem;
  }
}