/*
 Theme Name: GeneratePress Child
 Template: generatepress
 Description: Child theme for GeneratePress.
 Version: 1.0
*/

/****
        general styling 
****/

/* overwrite general buttons - elementor is buggy */
button.eael-load-more-button { 
    margin: 12px 0;
    padding: 6px 14px;
    background-color: var(--accent) !important;
    border-radius: 0;
    color: #fff;
}
button.eael-load-more-button:hover {
    background-color: var(--var-sec) !important;
}
a { text-decoration: none;}

/* responsive */
@media (max-width: 600px) {
   .main-title { font-size: 16px; }
   .inside-header { padding: 24px; }
}




/****
        Publications (overwrite plugin)
****/
.tp_pub_number {display: none}
div.tp_pub_info { padding: 2px 0 0 12px !important; }
.tp_pub_title, #content p.tp_pub_title {
    font-size: 1.2rem !important;
    font-weight: 500 !important;
    color: #555;
}
.tp_pub_author, #content p.tp_pub_author, .tp_pub_additional, #content p.tp_pub_additional, .tp_abstract_entry, tp_bibtex_entry  pre  { font-size: 0.8rem !important; }

.tp_pub_type {
    background-color: #d0d0d4 !important;
    box-shadow: none !important;
    padding: 4px;
}
.tp_pub_menu {
    color: var(--eb-global-tertiary-color);
}
.tp_pub_menu > span {margin: 0 4px}
.tp_pub_menu > span:first-child {margin-left: 0}
.tp_bibtex_entry {padding: 0 !important}
.tp_abstract_entry, .tp_links_entry, tp_bibtex_entry  pre {
    padding: 20px !important;
    background: rgba(0,0,0,.05);
}
.tp_links_entry ol, ul {margin: 0}
.tp_close_menu {display: none;}
ul.tp_pub_list li {
    padding: 6px 0 !important;
    margin: 0;
}
div.tp_publication {padding-bottom: 8px;}
.tp_pub_image_left { width: 132px; }
@media (max-width: 480px) {
   .tp_pub_image_left { width: 150px; }
   .tp_pub_title, #content p.tp_pub_title { font-size: 1rem !important; }
}

/****
        Team Page Template 
****/

.team-group-heading {
    margin-top: 40px;
    margin-bottom: 20px;
    border-bottom: 2px solid #ddd;
    padding-bottom: 5px;
    font-size: 28px;
}

.lab-members-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));
    gap: 20px;
    margin-bottom: 40px;
}

.member-stub {
    display: flex;
    gap: 20px;
    padding: 16px;
    border: 1px solid #e0e0e0;
    border-radius: 0;
    align-items: auto;
}
/*.member-stub:hover {box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;}*/

.member-image-container img {
    border-radius: 0;
    max-width: 100px;
    height: 100%;
    object-fit: contain; 
}

.member-details {
    flex-grow: 1;
}

.member-name {
    font-size: 1.25em;
    margin: 0 0 5px 0;
    text-decoration: none;
}

.member-details p {
    margin: 0;
    font-size: 0.9em;
    color: #555;
}

.member-details button {
  position: relative;
  display: inline-block;
  text-align: center;
  padding: 8px 16px;
  margin-top: 16px;
  font-weight: 400 !important;
  cursor: pointer;
  letter-spacing: 2px;
  background: transparent !important;
  border: 1px solid var(--eb-global-tertiary-color);
  color: var(--eb-global-tertiary-color) !important;
  overflow: hidden;
  transition: color 0.3s ease, border-color 0.3s ease;
  z-index: 0; /* Grundebene */
}

/* Hintergrund unter dem Text */
.member-details button::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--var-sec) !important;
  transform: translateX(-100%);
  transition: transform 0.4s ease;
  z-index: -1; /* ganz sicher unter dem Text */
}

/* Hover-Effekt */
.member-details button:hover {
  color: #fff !important;
  border-color: var(--var-sec);
}

/* Hintergrund fährt von links nach rechts */
.member-details button:hover::before {
  transform: translateX(0);
}


/*.details-link {
    display: inline-block;
    margin-top: 10px;
    padding: 5px 10px;
    background-color: #2570b7;
    color: white !important;
    text-decoration: none;
    border-radius: 3px;
    font-size: 0.9em;
}*/

@media (max-width: 768px) {
    .lab-members-grid {
        grid-template-columns: 1fr;
    }
}


/****
        Lab Member Single Pages 
****/

/* Overall layout for image and details */
.single-lab_member .lab-member-header-layout {
    display: flex; /* Enables flexible arrangement */
    flex-wrap: wrap; /* Allows wrapping on small screens */
    align-items: flex-start; /* Aligns content to the top */
    gap: 30px; /* Space between the image and details */
    margin-bottom: 30px;
}

.single-lab_member .lab-member-featured-image {
    text-align: left; /* Aligns the image to the left */
}

.single-lab_member .lab-member-featured-image img {
    max-width: 200px; /* Adjust size of the profile picture */
    height: auto;
    /*border-radius: 50%;  
    border: 3px solid #eee;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1); */
}

/* Container for details to sit next to the image */
.single-lab_member .lab-member-details-container {
    flex-grow: 1; /* Allows the details container to take up remaining space */
}

/* Styling for the details */
.single-lab_member .entry-header {
    margin-bottom: 10px;
    text-align: left; /* Align the name to the left */
}

.single-lab_member .entry-title {
    font-size: 2.5em; /* Adjust name font size */
    margin-bottom: 5px;
}

.single-lab_member .lab-member-contact-info p {
    text-align: left; /* Align contact details to the left */
    font-size: 1.1em;
    margin: 5px 0;
}

.single-lab_member .lab-member-short-bio,
.single-lab_member .lab-member-research-interests,
.single-lab_member .lab-member-publications {
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #eee;
}

.single-lab_member .lab-member-short-bio h3,
.single-lab_member .lab-member-research-interests h3,
.single-lab_member .lab-member-publications h3 {
    text-align: left;
}

.tp_h3 { /* smaller for readability */
    margin-bottom: 20px;
    font-size: 24px; 
}

/* dont show the very prominent error message if no publications are added */
.teachpress_message_error { display:none !important } 

