/* @override 
	http://x-tree.local/wp-content/plugins/squidweb-vacancies/css/squidweb-vacancies.css?* */

html {
  scroll-behavior: smooth;
}

#vacancies-filter-container {
  margin-bottom: 20px;
}

#vacancies-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-bottom: 20px;
}

.filter-btn {
  background-color: #fff;
  border: 1px solid #111;
  color: #111;
  padding: 7px 15px;
  text-transform: capitalize;
  font-size: 14px;
  cursor: pointer;
  transition: background-color 0.3s, color 0.3s;
  border-radius: 100px;
}

.filter-btn.active,
.filter-btn:hover {
  background-color: #111;
  color: #fff;
}

#vacancies-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.vacancy-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 2px solid #ddd;
  padding: 16px 20px;
  border-radius: 10px;
  gap: 50px;
  background-color: #fff;
}

@media (max-width: 768px) {
  .vacancy-item {
    flex-direction: column; /* Elemente untereinander anordnen */
    align-items: flex-start; /* Elemente linksbündig ausrichten */
    gap: 20px; /* Optional: kleinerer Abstand zwischen den Elementen */
  }

  .vacancy-item--left, .vacancy-item--right {
    width: 100%; /* Optional: Breite auf 100% setzen */
  }
}

.vacancy-item--heading {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 8px;
}

.vacancy-item--heading a {
  color: #111;
  text-decoration: none;
}

.vacancy-item--heading a:hover {
  text-decoration: underline;
}

.vacancy-item--region {
}

.vacancy-item--region::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url('../img/location.svg');
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 0.2rem;
  vertical-align: bottom;
}


.vacancy-cta {
  display: inline-block;
  color: #111;
  padding: 10px 18px;
  font-size: 16px;
  text-decoration: none;
  border-radius: 7px;
  font-weight: bold;
  border: 2px solid #111;
}

.vacancy-cta:hover {
  background-color: #111;
  color: #fff;
  border: 2px solid #111;
}

#vacancies-list p {
  text-align: center;
  color: #666;
  font-style: italic;
}

/* Single Post Vacancy */

.vacancy-post--container{

}

.type-vacancies {
  display: flex;
  flex-wrap: wrap; /* Für responsive Verhalten */
  gap: 60px; /* Abstand zwischen den Spalten */
  width: 100%; /* Nimmt die volle Breite ein */
  align-items: stretch; /* Stellt sicher, dass beide Spalten die gleiche Höhe haben */
}

.vacancy-left {
  flex: 2; /* Nimmt zwei Drittel der Breite ein */
}

.vacancy-right {
  flex: 1; /* Nimmt ein Drittel der Breite ein */
}

/* Mobile-Ansicht */
@media (max-width: 768px) {
  .type-vacancies {
    flex-direction: column; /* Spalten untereinander anordnen */
    gap: 30px; /* Weniger Abstand auf kleinen Bildschirmen */
  }

  .vacancy-left, .vacancy-right {
    flex: none; /* Rücksetzung der Flex-Basis */
    width: 100%; /* Volle Breite */
  }
}


.vacancy-title {
  font-size: 2em;
  margin-top: 0;
  margin-bottom: 20px;
  font-weight: bold;
}

.vacancy-description {
  font-size: 1em;
  line-height: 1.5;
}

.vacancy-right h3 {
  margin-top: 0;
  margin-bottom: 20px;
  font-size: 1.5em;
  font-weight: bold;
}

.vacancy-right p {
  margin-top: 0;
  margin-bottom: 20px;
}

.vacancy-cta-button {
  display: inline-block;
  color: #111;
  padding: 10px 18px;
  font-size: 16px;
  text-decoration: none;
  border-radius: 7px;
  font-weight: bold;
  border: 2px solid #111;
}

.vacancy-cta-button:hover {
  background-color: #111;
  color: #fff;
  border: 2px solid #111;
}

/* FORM */

#apply-form-container::before {
  content: "";
  display: block;
  height: 50px; /* Abstand über dem Ziel */
  margin-top: -50px; /* Negativer Rand, um das Ziel zu korrigieren */
}

#apply-form-container {
  margin-top: 20px;
  border: 2px solid #ddd;
  padding: 30px;
  border-radius: 20px;
  display: none; /* Formular ist versteckt, bis es sichtbar gemacht wird */
}

#apply-form-container h2{
  margin-top: 0;
  margin-bottom: 20px;
  font-weight: bold;
}

#apply-form-container h3{
  margin-top: 0;
  margin-bottom: 20px;
  font-weight: bold;
}

.apply-form-wrap {
  display: flex;
  gap: 60px; /* Abstand zwischen linker und rechter Spalte */
  flex-wrap: wrap; /* Falls zu wenig Platz, bricht die rechte Spalte um */
}

.apply-form-left {
  flex: 2;
  min-width: 300px; /* Damit die Spalten nicht zu schmal werden */
}

.apply-form-right {
  flex: 1;
  min-width: 300px; /* Damit die Spalten nicht zu schmal werden */
}

#apply-form p {
  margin-bottom: 20px;
}

#apply-form label {
  display: block;
  margin-bottom: 5px;
  font-weight: bold;0
}

#apply-form input:not([type="checkbox"]):not([type="radio"]),
#apply-form select,
#apply-form textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 8px;
}

.apply-form-documents {
	
}

/* Checkbox-Option Wrapper */
.squidweb-extra-checkbox-option {
    display: flex;
    align-items: center;
    gap: 8px; /* Abstand zwischen Checkbox & Text */
    margin-bottom: 6px;
}

/* Checkbox selbst nicht riesig */
.squidweb-extra-checkbox-option input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0;
}

/* Text neben der Checkbox */
.squidweb-checkbox-label-text {
    font-size: 16px;
    line-height: 1.2;
}

/* Überschrift der Checkbox-Gruppe fett */
.squidweb-extra-checkbox-group legend {
    font-weight: bold;
    margin-bottom: 8px;
}

/* Checkbox-Optionen normal */
.squidweb-extra-checkbox-option {
    font-weight: normal;
}

/* Der Text NACH der Checkbox extra normal setzen */
.squidweb-checkbox-label-text {
    font-weight: normal;
}





#apply-form .apply-form-privacy input {
	width: inherit;
	text-align: left;
}

.apply-form-privacy label {
	font-weight: 400 !important;
	font-size: 13px;
}

.apply-form-privacy {
	margin-bottom: 20px;
}



#apply-form input[type="file"] {
    padding: 10px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    cursor: pointer;
	border: 2px solid #ddd;
	border-radius: 8px;
}

input[type="file"]::-webkit-file-upload-button {
    background: #111;
    color: white;
    border: none;
    padding: 10px 15px;
    border-radius: 5px;
    cursor: pointer;
    font-family: inherit;
    font-size: inherit;
}

input[type="file"]::-webkit-file-upload-button:hover {
    background: #111;
}

/* Button-Styling exemplarisch, kann angepasst werden */
#apply-form button[type="submit"] {
  display: inline-block;
  color: #111;
  padding: 10px 18px;
  font-size: 16px;
  text-decoration: none;
  border-radius: 7px;
  font-weight: bold;
  border: 2px solid #111;
  background-color: #fff;
}

#apply-form button[type="submit"]:hover {
  background-color: #111;
  color: #fff;
  border: 2px solid #111;
}

.vacancy-share {
    margin-top: 30px;
    /* text-align: center; */
}

.vacancy-share .vacancy-share-heading {
    font-weight: bold;
    margin-bottom: 15px;
    font-size: 1.2em;
    color: #333;
}

.vacancy-share-buttons {
    display: flex;
    /* justify-content: center; */
    gap: 12px;
    flex-wrap: wrap;
}

.share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #ddd;
    text-decoration: none;
    transition: background 0.3s;
}

.share-btn img {
    width: 20px;
    height: 20px;
}

.share-btn:hover {
    opacity: 0.8;
}

.share-btn.whatsapp { background: #25D366; }
.share-btn.facebook { background: #3b5998; }
.share-btn.linkedin { background: #0077b5; }
.share-btn.x        { background: #111111; }
.share-btn.email    { background: #555; }
.share-btn.link     { background: #888; }

