/* projects.css */

.projects-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

@media (max-width: 900px){
  .projects-grid{ grid-template-columns: 1fr; }
}

/* Remove default marker */
.project > summary{
  list-style: none;
}
.project > summary::-webkit-details-marker{
  display: none;
}

/* Card (collapsed state) */
.project-card{
  display: grid;
  grid-template-columns: 88px 1fr auto;
  gap: 0.9rem;
  align-items: start;

  padding: 1rem;
  border-radius: 14px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);

  cursor: pointer;
  user-select: none;
}

.project-card:hover{
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.12);
}

.pc-thumb img{
  width: 88px;
  height: 64px;
  object-fit: contain;
  border-radius: 10px;
  opacity: 0.95;
}

.pc-title{
  margin: 0;
  font-size: 1.02rem;
  font-weight: 650;
}

.pc-subtitle{
  margin: 0.25rem 0 0.55rem 0;
  font-size: 0.86rem;
  color: rgba(255,255,255,0.75);
  line-height: 1.35;
}

.pc-tags{
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.pc-tags span{
  font-size: 0.72rem;
  padding: 0.22rem 0.5rem;
  border-radius: 999px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.72);
}

.pc-chev{
  opacity: 0.65;
  margin-top: 0.15rem;
  transition: transform 0.18s ease;
}

/* Expanded state */
.project[open] .project-card{
  border-color: rgba(255,255,255,0.16);
}
.project[open] .pc-chev{
  transform: rotate(180deg);
}

/* Panel */
.project-panel{
  margin-top: 0.75rem;
  padding: 1rem;
  border-radius: 14px;
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.07);
}

.pp-desc{
  margin: 0 0 0.85rem 0;
  color: rgba(255,255,255,0.80);
  line-height: 1.5;
}

.pp-bullets{
  margin: 0 0 0.9rem 1.1rem;
  color: rgba(255,255,255,0.75);
}
.pp-bullets li{
  margin: 0.35rem 0;
}

.pp-links{
  display: flex;
  gap: 0.6rem;
  flex-wrap: wrap;
}

.pp-btn{
  display: inline-block;
  text-decoration: none;
  font-size: 0.85rem;
  padding: 0.45rem 0.7rem;
  border-radius: 10px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.10);
  color: rgba(255,255,255,0.85);
}

.pp-btn:hover{
  background: rgba(255,255,255,0.09);
  border-color: rgba(255,255,255,0.14);
}
/* Prevent layout shift / popping during animation */
.project-panel{
  will-change: height, opacity, transform;
}

/* Make the card interaction feel less “clicky” and more “polished” */
.project-card{
  transition: background 180ms ease, border-color 180ms ease, transform 180ms ease;
}
.project[open] .project-card{
  transform: translateY(-1px);
}
