/* Tabs Container */
.tabs {
	display: flex;
	flex-wrap: wrap; 
	justify-content: center;
    align-items: center;
}
/* Labels als Tabs */
.tabs label {
	display: inline-flex;            /* Damit Text innerhalb zentriert bleibt */
    justify-content: center;         /* Horizontale Zentrierung innerhalb Label */
    align-items: center;             /* Vertikale Zentrierung */
    cursor: pointer;                 /* Zeiger ändern beim Hover */
    background: var(--background);   /* Hintergrundfarbe */
    font-family: "YoungSerif-Bold", sans-serif;
    text-transform: uppercase;
    font-size: 14px;
    color: var(--text3);
    padding: 10px 10px;              /* symmetrischer horizontaler Abstand */
    text-decoration: none;
    transition: all 0.5s;
    margin: 0;                        /* entfernt alte, unsymmetrische Abstände */
    position: relative;               /* falls später Pseudo-Elemente genutzt werden */
}
/* Unterstrich vorbereiten */
.tabs label::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 4px;          /* Abstand vom Text */
    width: 60%;           /* Länge der Linie */
    height: 1px;          /* Dicke der Linie */
    background: var(--linie1);
    transform: translateX(-50%) scaleX(0); /* startet unsichtbar */
    transform-origin: center;
    transition: transform 0.3s ease;
}
/* Hover: Linie einblenden */
.tabs label:hover::after {
    transform: translateX(-50%) scaleX(1);
}

.tabs label:active { 
	color: var(--text1); 
 
}

.tabs .tab {
    order: 99; 
    flex-grow: 1;
	width: 100%;
	display: none;
    background: var(--background);
    background-repeat: no-repeat;
    background-size: cover;
}
.tabs input[type="radio"] {
	display: none;
}
.tabs input[type="radio"]:checked + label {
	    color: var(--text1);
}
.tabs input[type="radio"]:checked + label + .tab {
	display: block;
}

@media (max-width: 45em) {
  .tabs {
    flex-wrap: wrap;
    justify-content: flex-start;
  }

  .tabs label {
    width: auto; /* <-- Wichtig */
    margin-right: 4px;
    margin-bottom: 6px;
  }

  .tabs .tab {
    width: 100%; /* Inhalt weiterhin responsive */
  }
}

.profil_navi_trennlinien-container {
    display: flex;              /* nebeneinander */
    justify-content: space-between; /* Abstand zwischen den Linien */
    gap: 10px;                  /* optionaler Abstand */
   align-items: center;
}

.profil_navi_trennlinie1 {
	flex: 0.8;
    background-image: url(https://www.buffymagazin.de/camdenvillage/images/goldrush/seperator_hor_double_short.png);
    background-repeat: no-repeat;
    background-size: auto;
    background-position: center;
    height: 40px;
   width: 200px;
    margin-left: 35px;
}

.profil_navi_trennlinie2 {
	flex: 1;
    background-image: url(https://www.buffymagazin.de/camdenvillage/images/goldrush/seperator_hor_double_short.png);
    background-repeat: no-repeat;
    background-size: auto;
    background-position: center;
    height: 40px;
   width: 400px;
    
}

.profil_userzitat {
    letter-spacing: 2px;
    font-size: 19px;
    color: var(--farbe4);
    font-family: "YoungSerif-Regular", sans-serif;
    width: 250px;
	
}

.profil-container {
  display: flex;
  gap: 20px; /* Abstand zwischen linkem und rechtem Bereich */
  width: 100%; /* Gesamtbreite, kann angepasst werden */
  max-width: 960px;
  margin: 0 auto;
  padding: 10px;
  box-sizing: border-box;
  align-items: strecht;
}

/* Linke Box: Zitat */
.profil_quote-box {
  flex: 1; /* Nimmt die Hälfte des Containers */
  display: flex;
  align-items: center; /* vertikal zentrieren */
  justify-content: center; /* optional horizontal zentrieren */
  text-align: center;
  font-family: "YoungSerif-Bold", sans-serif;
  color: var(--text4);
  position: relative;
  }

.profil_quote-box::before {
  content: "";
  position: absolute;
  inset: 0; /* deckt die ganze Box ab */
  background-image: url(https://buffymagazin.de/CamdenVillage/images/goldrush/icon_dreamcatcher.png);
  background-size: 200px 200px;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0.5; /* ? NUR das Bild wird transparent */
  pointer-events: none;
  z-index: 0;
}
/* Rechte Box: Userinfo + Bild */
.profil_user-box {
  flex: 1; /* Nimmt die andere Hälfte */
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}

/* Username und Titel */
.profil_user-info {
  /*margin-bottom: 5px;*/
}

.profil_username {
    font-size: 23px;
    text-transform: uppercase;
    text-align: center;
    line-height: 22px;
    letter-spacing: 2px;
    font-family: "YoungSerif-Bold", sans-serif;
    color: var(--text3);
    margin-top: -5px;
}

.profil_usertitle {
    color: var(--text4);
    font-size: 15px;
    text-align: center;
    font-weight: 600;
    margin-top: 5px;
    line-height: 16px;
    letter-spacing: 2px;
}

/* Userbild */
.profil_user-image img {
  width: 150px;
  height: 150px;
  border-radius: 50%; /* rundes Bild */
  object-fit: cover;
  padding: 3px;
  display: block;
  border: 1px solid var(--linie1);
  box-sizing: border-box;
  margin-top: 10px;
  
}

/* Responsive Anpassung für kleine Bildschirme */
@media (max-width: 768px) {
  .profil-container {
    flex-direction: column; /* Boxen untereinander stapeln */
    gap: 15px;
  }

  .profil_quote-box {
    border-right: none;
    border-bottom: 1px solid #ccc;
    padding: 15px 10px;
  }

  .profil_user-box {
    align-items: center; /* Inhalt zentrieren */
  }

  .profil_user-info {
    text-align: center;
    margin-bottom: 10px;
  }

  .profil_user-image img {
    width: 80px;
    height: 80px;
  }
}

.profil_navi_trennlinien-container_unten {
    display: flex;              /* nebeneinander */
    justify-content: space-between; /* Abstand zwischen den Linien */
    gap: 10px;                  /* optionaler Abstand */
   align-items: center;
}

.profil_navi_trennlinie3 {
	flex: 0.8;
    background-image: url(https://www.buffymagazin.de/camdenvillage/images/goldrush/seperator_hor_double_short_vers.png);
    background-repeat: no-repeat;
    background-size: auto;
    background-position: center;
    height: 40px;
   width: 200px;
    margin-left: 35px;
}

.profil_navi_trennlinie4 {
	flex: 1;
    background-image: url(https://www.buffymagazin.de/camdenvillage/images/goldrush/seperator_hor_double_short_vers.png);
    background-repeat: no-repeat;
    background-size: auto;
    background-position: center;
    height: 40px;
   width: 400px;
    
}


/* =========================
   Untere Boxen: Fakten + Avatar/Infos
   ========================= */
#boxen_unten {
  display: flex;
  gap: 20px;
  width: 100%;
  flex-wrap: wrap; /* bei kleinen Bildschirmen umbrechen */
  max-width: 800px;   /* ? begrenzt die Gesamtbreite */
  margin: 5px auto;  /* ? zentriert die Boxen */
}

/* Linke Box: Fakten */
#mitglieder {
  flex: 1;
  min-width: 250px;
}

/* Rechte Box: Avatar + Zusatzinfos */
.boxen.user_avatar {
  flex: 1;
  min-width: 250px;
}

/* Allgemeine Boxen-Padding */
.boxen, .boxen_user {
  box-sizing: border-box;
  
}

/* =========================
   Responsive Anpassung
   ========================= */
@media (max-width: 768px) {
  /* Obere Boxen stapeln */
  .profil-container {
    flex-direction: column;
    gap: 15px;
  }

  .profil_user-box {
    align-items: center;
  }

  .profil_user-image img {
    width: 80px;
    height: 80px;
  }

  /* Untere Boxen stapeln */
  #boxen_unten {
    flex-direction: column;
    gap: 15px;
  }

  #mitglieder, .boxen.user_avatar {
    width: 100%;
    min-width: unset;
  }
}

.member_username {
    font-size: 12px;
    }

.member_profil_header {
    color: var(--text3);
    font-size: 14px;
    text-transform: uppercase;
    text-align: left;
    /* padding: 7px 10px; */
    padding-bottom: 5px;
	font-family: "YoungSerif-Bold", sans-serif;
}

.biogra {
    /*height: 265px;*/
    overflow: auto;
    width: 350px;
    align-content: center;
    margin-left: 60px;
    position: relative;
}

.fakten {
      width: 350px;
	 margin-left: -10px;
}

.member_profil_spotted {
	 font-size: 12px;
}

.profil_fakten_text {
    color: var(--text1);
    text-align: left;
    line-height: 1.4;
    font-family: "YoungSerif-Bold", sans-serif;
    font-size: 13px;  
	text-transform: uppercase;
}

.profil_minifakten_angabe {
	color: var(--text1);
    text-align: left;
    line-height: 1.4;
	font-size: 13px; 
}

.profil_additional {
  display: flex;            /* Flex-Container für die kleinen Boxen */
  flex-wrap: wrap;          /* Bei kleinen Bildschirmen umbrechen */
  gap: 8px;                /* Abstand zwischen den Boxen */
  justify-content: center;  /* optional: zentrieren */
  margin-top: 15px;         /* Abstand nach oben zur Hauptbox */
 margin-left: 70px;	
}

.add_box {
  flex: 1 1 120px;          /* flexible Breite, min 120px */
  border: 1px solid var(--linie4);
  border-radius: 4px;
  padding: 3px 3px;
  text-align: center;
  font-size: 12px;
  color: var(--text1);
  box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.add_title {
  font-weight: bold;
  font-size: 11px;
  display: block;
  margin-bottom: 2px;
  text-transform: uppercase;
}

.add_value {
  font-size: 12px;
  color: var(--text1);
}

.member_profil_banner {
    background: url(https://www.buffymagazin.de/CamdenVillage/images/goldrush/kat_blank.jpg) no-repeat;
    background-size: cover !important;
    background-position: center;
    padding: 0 !important;
    width: 100%;
    height: 76px;
    margin-top: -5px;
}
.member_profil_ueber {
    font-size: 25px;
    color: var(--text2);
    text-transform: uppercase;
    letter-spacing: 3.5px;
    text-align: center;
    padding: 18px;
    font-family: "YoungSerif-Bold", sans-serif;
}
.member_profil_text {
    font-size: 13px;
    color: var(--text1)
    font-family: Cambria, Georgia, serif;
    text-align: justify;
    /* line-height: 15px; */
    overflow: auto;
    width: 330px;
}
.minifakten_angabe {
	
}
.biogra-trenner {
  width: 100%;
  height: 40px;
  background-image: url(https://www.buffymagazin.de/camdenvillage/images/goldrush/seperator_hor_double_short.png);
  background-repeat: no-repeat;
  background-position: center;
  margin-top: 5px; /* ? schiebt sie optisch näher ran */
  margin-left: 28px;
}
.profil_navi_trennlinien-container_abschluss {
    display: flex;              /* nebeneinander */
    justify-content: space-between; /* Abstand zwischen den Linien */
    gap: 10px;                  /* optionaler Abstand */
   align-items: center;
}

.profil_navi_trennlinie5 {
	flex: 1;
    background-image: url(https://www.buffymagazin.de/CamdenVillage/images/goldrush/seperator_hor_single.png);
    background-repeat: no-repeat;
    background-size: auto;
    background-position: center;
    height: 40px;
    margin-left: -1px;
}

.profil_navi_trennlinie7 {
	flex: 1;
    background-image: url(https://www.buffymagazin.de/CamdenVillage/images/goldrush/seperator_hor_single_vers.png);
    background-repeat: no-repeat;
    background-size: auto;
    background-position: center;
    height: 40px;
    margin-left: -1px;
}

.memberprofil_portrait_header {
    text-align: center;
    color: var(--text3);
    text-transform: uppercase;
    font-size: 20px;
    letter-spacing: 2px;
    padding: 3px;

}

/*PORTRAIT*/

.profil_facts-wrapper {
  max-width: 850px;
  margin: 10px auto;
}

/* Grid für 2er Layout */
.profil_facts-container {
   display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
  padding: 10px;
  box-sizing: border-box;
}

/* einzelne Fact-Box */
.profil_fact-item {
  position: relative;
  padding: 12px;
  border: 1px solid var(--linie4);
  background: var(--background);
  text-align: center;
  overflow: hidden;
	    border-radius: 5px;
}

/* leichter Deko-Hintergrund wie beim Zitat */
.profil_facts-container::after {
  display: none;
}

.profil_facts-container:has(.profil_fact-item:last-child:nth-child(odd))::after {
  content: "";
  display: block;
  min-height: 60px;
  background-image: url(https://buffymagazin.de/CamdenVillage/images/goldrush/icon_dreamcatcher.png);
  background-size: 280px;
  background-repeat: no-repeat;
  background-position: bottom center;
}

.profil_facts-container.no-icon::after {
  content: none !important;
}

/* Label (z.B. Augen) */
.profil_fact-label {
  font-size: 15px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--text3);
  margin-bottom: 5px;
  font-family: "YoungSerif-Regular", sans-serif;
  border-bottom: 1px solid var(--linie4);
}

/* Wert */
.profil_fact-value {
  font-size: 12px;
  color: var(--text1);
  letter-spacing: 1px;
  text-align: justify;
}
/* Wert */
.profil_fact-value2 {
  font-size: 12px;
  color: var(--text1);
  letter-spacing: 1px;
  text-align: center;
}

@media (max-width: 768px) {
  .profil_facts-container {
    grid-template-columns: 1fr;
  }
}

.profil_fact-item.has-space::after {
  content: "";
  position: absolute;

  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); /* ? echtes Zentrieren */
  width: 300px;
  height: 300px;
  background-image: url(https://buffymagazin.de/CamdenVillage/images/goldrush/icon_dreamcatcher.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 1.5;
  pointer-events: none;
  z-index: 0;
    margin-top: 280px;
}

/* Ausnahme */
.profil_fact-item.no-icon::after {
  content: none !important;
  display: none !important;
}

.profil_fact-item.solo {
  text-align: center;
  padding: 20px;
  background: var(--background);
	grid-column: span 2;
}
.profil_facts-container.solo-row {
  grid-template-columns: 1fr; /* nur EINE Spalte */
}

.yearright {
    background-color: var(--background4);
    font-size: 14px;
    font-family: "YoungSerif-Bold", sans-serif;
    text-align: end;
    float: right;
    padding: 4px 3px 4px 3px;
    margin-left: 5px;
    color: var(--text1);
    text-shadow: 1px 2px 1px var(--text2);
    margin-top: 3px;
}

.yearleft {
    background-color: var(--background4);
    font-size: 14px;
    font-family: "YoungSerif-Bold", sans-serif;
    float: left;
    padding: 4px 3px 4px 3px;
    margin-right: 5px;
    color: var(--text1);
    text-shadow: 1px 2px 1px var(--text2);
    text-align: justify;
    margin-top: 3px;
}
.tcat_relate {
    background: var(--background4);
    color: var(--text1);
    padding: 6px;
    font-size: 20px;
    position: relative;
    top: -1px;
    text-transform: uppercase;
    letter-spacing: 2px;
    box-sizing: border-box;
    width: 100%;
    text-align: center;
}

/* Äußerer Beziehungsbereich */
.relations_type_box {
    width: 810px;
    max-width: 100%;
    box-sizing: border-box;
    margin: 5px auto 20px;
}

/* Inhalt unter der Überschrift */
.relations_type_content {
    width: 100%;
    box-sizing: border-box;
    padding: 0;
}

/* Einheitliche Beziehungsboxen */
.beziehungen_scroll {
    box-sizing: border-box;
    width: 100%;
    height: auto;
    max-height: none;
    padding: 13px 10px;
    margin: 10px 0 15px;
    background: var(--background6);
    color: var(--text1);
    text-align: justify;
    font-size: 13px;
    font-weight: normal;
    font-family: Cambria, Georgia, serif;
    overflow: visible;
}

/* Bearbeitungslinks innerhalb der Box halten */
.beziehungen_scroll::after {
    content: "";
    display: block;
    clear: both;
}

.profil_record_inhalt {
    text-align: center;
}

.profil_record_inhalt .fa-lock {
    display: block;
    font-size: 17px;
    color: var(--linie1);
    margin-bottom: 10px;
}

.profil_record_inhalt span {
    display: block;
}


/* Hinweis bei fehlenden Beziehungen */
.relations_none {
    text-align: center;
    margin: 10px 0 15px;
}
.beziehungen_tabelle {
    width: 100%;
    table-layout: fixed;
    box-sizing: border-box;
}

.beziehungen_tabelle td {
    width: 100%;
    box-sizing: border-box;
}