/* projects */

#projects h3 {
  color: var(--text-secondary-color) !important;
}

#projects a {
  text-decoration: none;
  color: var(--text-link-color) !important;
}

#projects .badge {
  background-color: var(--background-color) !important;
  color: var(--text-color) !important;
  margin: 0 1%;
}

#projects .card {
  cursor: context-menu;
  background-color: var(--secondary-color) !important;
  border-radius: 1rem;
  box-shadow: 0 0 36px rgba(0, 0, 0, 0.1);
  border: 2px solid transparent;
  transition: box-shadow 0.2s linear, opacity 0.2s linear, border 0.3s, transform 0.3s;
  min-height: 400px;
  overflow: hidden;
}

#projects .card:hover {
  border: 2px solid var(--text-color);
  transform: translateY(-7px);
}

#projects .card .card-head {
  -o-object-fit: cover;
  object-fit: cover;
  overflow: hidden;
  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem;
  border: none !important;
}

#projects .card .card-footer {
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
}

#projects .card:hover .card-img-top {
  transform: scale(1.2);
  transition: all 0.3s ease-out;
}

#projects .card-img-top {
  transition: transform 0.5s;
  max-height: 150px;
  width: auto;
  object-fit: contain;
  margin: 0 auto;
  display: block;
}

#projects .float-end .btn {
  transition: none;
  border-radius: 0.5rem !important;
  border-color: var(--primary-color) !important;
}

#projects .float-end .btn:focus {
  box-shadow: none !important;
}

#projects .project-abstract {
  background-color: var(--background-color);
  border-left: 3px solid var(--primary-color);
  padding: 0.75rem 1rem;
  border-radius: 0.5rem;
  font-size: 0.9rem;
  color: var(--text-secondary-color);
}

#projects .toggle-abstract-link {
  cursor: pointer;
  color: var(--text-link-color);
  font-weight: 500;
}

#projects .toggle-abstract-link:hover {
  text-decoration: underline;
}

/* horizontal project layout styles */

/* .project-horizontal {
  background-color: var(--secondary-color);
  box-shadow: 0px 8px 56px rgb(15 80 100 / 16%);
  border-radius: 1rem;
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  flex-wrap: wrap;
  border: none;
} */

.project-logo {
  max-width: 200px;
  max-height: auto;
  object-fit: contain;
  border-radius: 5rem;
}

.project-details {
  flex: 1;
  color: var(--text-color);
}

.project-content p {
  margin-bottom: 0.75rem;
}

#projects .badge {
  background-color: var(--background-color) !important;
  color: var(--text-color) !important;
  margin: 0 0.25rem 0.25rem 0;
}

.project-abstract {
  background-color: var(--background-color);
  border-left: 3px solid var(--primary-color);
  padding: 0.75rem 1rem;
  border-radius: 0.5rem;
  font-size: 0.9rem;
  color: var(--text-secondary-color);
}

.toggle-abstract-link {
  cursor: pointer;
  color: var(--text-link-color);
  font-weight: 500;
}

.toggle-abstract-link:hover {
  text-decoration: underline;
}

/* outline button that works in both themes */
.project-featured-btn {
  border-radius: 0.5rem;
  padding: 0.45rem 1rem;
  font-size: 0.9rem;
  font-weight: 500; /* regular weight */
  border: 1px solid var(--text-color);
  color: var(--text-color);
  background-color: transparent;
  transition: font-weight 0.15s ease-in-out; /* only the weight animates */
}

/* hover / focus – simply bolder text, nothing else */
.project-featured-btn:hover,
.project-featured-btn:focus {
  font-weight: 700; /* bold */
  text-decoration: none; /* keep it button‑like */
}

.link-icon {
  width: 1.25rem; /* ≈ Font‑Awesome glyph size */
  height: 1.25rem;
  object-fit: contain; /* keep aspect ratio */
  vertical-align: -0.125em; /* baseline aligns with text/icons */
}

#projects .project-horizontal {
  cursor: context-menu;
  background-color: var(--secondary-color) !important;
  border-radius: 2rem;
  box-shadow: 0 0 36px rgba(0, 0, 0, 0.1);
  border: 2px solid transparent;
  transition: box-shadow 0.2s linear, opacity 0.2s linear, border 0.3s, transform 0.3s;
}

#projects .project-horizontal:hover {
  border: 2px solid var(--text-color);

  /* transform: translateY(-1px); */
}

#projects .project-horizontal .card-footer {
  border-radius: 2rem; /* or 1rem for consistency */
}
