/* Reset/overwrite */
.besch-jobs{display:flex; flex-direction:column; gap:12px;}
.besch-job-card{position: relative; border:1px solid #ddd; border-radius:12px; background:#fff; overflow:hidden; box-shadow:0 1px 2px rgba(0,0,0,.04);}
.besch-job-card .card-head{position: relative; z-index: 1; display:flex; justify-content:space-between; align-items:center; padding: 14px 0 0 16px; cursor:pointer; height: 75px;}
.besch-job-card .card-head .left{display:flex; align-items:center; gap:12px;}
.besch-job-card .card-head .title{font-weight:700; font-size:20px; color:#383838; line-height:1.2;}
.besch-job-card .card-head .index{font-weight:700; color:#383838;}
.besch-job-card .company-logo{pointer-events: none; z-index: 1; position: absolute; top: 15px; right: 0; margin-right: 5px; width: 60px; height: auto; object-fit: contain;}
/* Grey bar – empty, just arrow to the right */
.besch-job-card .card-toggle{position: relative; z-index: 3; background:#f4f4f4; border-top:1px solid #ddd; padding:8px 16px; display:flex; justify-content:flex-end; align-items:center; cursor:pointer;}
.besch-job-card .card-toggle .toggle-icon{transition:transform .2s ease;}
/* Details area */
.besch-job-card .card-details{padding:0; background-color: #f4f4f4;}
.besch-job-card .card-meta{position: relative; z-index: 3; display:flex; flex-wrap:wrap; gap:18px; padding:0 16px 12px 16px; color:#383838; font-size:14px;}
.besch-job-card .card-meta .meta-item{display:flex; align-items:center; gap:6px;}
.besch-job-card .card-desc{padding:0 16px 8px 16px; font-size:14px; color:#383838; display:none;}
.besch-job-card .card-list{padding:4px 16px 8px 16px;}
.besch-job-card .list-title{font-weight:600; margin:0 0 6px 0; color:#383838;}
.besch-job-card ul{margin:0 0 8px 0; padding-left:18px;}
.besch-job-card li{margin-bottom:4px; font-size: 14px;}
/* Expanded state rotates arrow */
.besch-job-card[aria-expanded="true"] .card-toggle .toggle-icon{transform:rotate(180deg);}
/* assets/frontend.css – roter Button oberhalb der Meta-Icons */
.besch-job-card .card-cta{position: relative; z-index: 3; padding:0 16px 16px 16px;}
.besch-job-card .bewerbung-btn{vertical-align: bottom; font-family: 'Roboto', sans-serif; letter-spacing: -0.5px; text-transform: uppercase; height: 35px; font-size: 14px; display:inline-flex; align-items:center; gap:8px; background:#085cac; color:#fff; text-decoration:none; padding-left: 15px; padding-right: 15px; border-radius:5px; font-weight:500; transition: background-color 0.4s ease-in-out;}
.besch-job-card .bewerbung-btn:hover{background-color:#e30007;}
.besch-job-card .pdf-btn, .besch-job-card .share-btn{vertical-align: bottom; font-family: 'Roboto', sans-serif; letter-spacing: -0.5px; text-transform: uppercase; height: 35px; font-size: 14px; display:inline-flex; align-items:center; gap:8px; background:#999; color:#fff; text-decoration:none; padding-left: 15px; padding-right: 15px; border-radius:5px; font-weight:300; transition: background-color 0.4s ease-in-out;}
.besch-job-card .pdf-btn:hover, .besch-job-card .share-btn:hover{background:#666;}
.pdf-btn .icon{display:inline-flex; align-items:center; margin-right:0px; line-height:1;}
.pdf-btn .icon svg{width:18px; height:18px;}

/* Teilen-Menü */
#besch-share-menu {
  background:#fff; border:1px solid #ddd; border-radius:8px;
  box-shadow:0 10px 30px rgba(0,0,0,.12); min-width:220px; padding:6px;
}
#besch-share-menu .besch-share-list { list-style:none; margin:0; padding:0; }
#besch-share-menu .besch-share-list li { margin:0; }
#besch-share-menu .besch-share-list button {
  display:block; width:100%; text-align:left; padding:8px 10px; background:transparent;
  border:0; cursor:pointer; font:inherit; color:#383838;
}
#besch-share-menu .besch-share-list button:hover { color:#383838; background:#f6f7f7; }
#besch-share-menu[hidden]{ display: none !important; }

.company-logo-stack {position: absolute; top: 15px; right: 0; margin-right: 20px; width: 150px; display: flex; flex-direction: column; gap: 10px; align-items: flex-end;}

@media (max-width: 1000px){
  /* Kopfzeile: Platz fürs (halbierte) Logo reservieren */
  .besch-job-card .card-head{
    padding-right:110px; /* ~75px Logo + Rand */
    height:auto;
    min-height:75px;
  }

  /* Berufsbezeichnung: 20px -> 16px */
  .besch-job-card .card-head .title{
    font-size:18px;
  }

  /* Logo: halb so groß, oben rechts, nicht überlappen */
  .besch-job-card .company-logo{
    width:70x;          /* halb von 150px */
    right:15px;          /* bündig mit Card-Padding */
    top:30px;
    margin-right:0;
  }
	
  .company-logo-stack {
	  top: 35px;
	  right: 20px;
	  margin-right: 0px;
	  width: 100px;
	}

  /* Buttons: nebeneinander, mit etwas Abstand zur Überschrift */
  .besch-job-card .card-cta{
    margin-top:8px;
    display:flex;
    gap:8px;
    flex-wrap:nowrap;    /* nebeneinander halten */
  }
  .besch-job-card .bewerbung-btn,
  .besch-job-card .pdf-btn{
    font-size:13px;
    height:34px;
    padding-left:12px;
    padding-right:12px;
    white-space:nowrap;
    flex-shrink:1;
    min-width:0;
  }

  /* Meta-Icons: untereinander, kompakt, kleinere Schrift */
  .besch-job-card .card-meta{
    flex-direction:row;
    gap:10px;
    font-size:12px;
    padding-top:8px;
  }
  .besch-job-card .card-meta .meta-item{
    align-items:center;
	line-height: 1.5;
  }
  .besch-job-card .card-meta .dashicons{
    font-size:14px;  /* kleine, aber gut sichtbare Icons */
    width:14px; height:14px; line-height:1;
  }
  .besch-job-card .card-desc {
    font-size: 12px;
    line-height: 1.6;
  }
  .besch-job-card li {
    font-size: 12px;
    line-height: 1.5;
  }
  .besch-job-card .card-list {
    padding: 0px 16px 4px 16px;
  }
}

@media (max-width: 660px){
  /* Kopfzeile: Platz fürs (halbierte) Logo reservieren */
  .besch-job-card .card-head{
    padding-right:110px; /* ~75px Logo + Rand */
    height:auto;
    min-height:75px;
  }

  /* Berufsbezeichnung: 20px -> 16px */
  .besch-job-card .card-head .title{
    font-size:16px;
  }

  /* Logo: halb so groß, oben rechts, nicht überlappen */
  .besch-job-card .company-logo{
    width:60px;          /* halb von 150px */
    right:15px;          /* bündig mit Card-Padding */
    top:25px;
    margin-right:0;
  }

  .company-logo-stack {
	top: 30px;
	right: 20px;
	margin-right: 0px;
	width: 75px;
  }

 
  /* Buttons: nebeneinander, mit etwas Abstand zur Überschrift */
  .besch-job-card .card-cta{
    margin-top:8px;
    display:flex;
    gap:8px;
    flex-wrap:nowrap;    /* nebeneinander halten */
  }
  .besch-job-card .bewerbung-btn,
  .besch-job-card .pdf-btn{
    font-size:13px;
    height:34px;
    padding-left:12px;
    padding-right:12px;
    white-space:nowrap;
    flex-shrink:1;
    min-width:0;
  }

  /* Meta-Icons: untereinander, kompakt, kleinere Schrift */
  .besch-job-card .card-meta{
    flex-direction:column;
    gap:0px;
    font-size:12px;
    padding-top:8px;
  }
  .besch-job-card .card-meta .meta-item{
    align-items:center;
	line-height: 1.5;
  }
  .besch-job-card .card-meta .dashicons{
    font-size:14px;  /* kleine, aber gut sichtbare Icons */
    width:14px; height:14px; line-height:1;
  }
  .besch-job-card .card-desc {
    font-size: 12px;
    line-height: 1.6;
  }
  .besch-job-card li {
    font-size: 12px;
    line-height: 1.5;
  }
  .besch-job-card .card-list {
    padding: 0px 16px 4px 16px;
  }
	
  /* Nur Icon bei PDF & Teilen auf kleinen Screens */
.besch-job-card .pdf-btn,
.besch-job-card .share-btn{
  padding-left:10px;
  padding-right:10px;
  gap:0;              /* keinen Abstand zur (einzigen) Icon-Span */
  font-size:0;        /* Text optisch ausblenden */
}

/* Icon-Größe wiederherstellen (Font Awesome) */
.besch-job-card .pdf-btn .icon,
.besch-job-card .share-btn .icon{ 
  display:inline-flex; 
  line-height:1;
}

.besch-job-card .pdf-btn .icon i,
.besch-job-card .share-btn .icon i{
  font-size:18px;     /* sichtbare Icon-Größe */
}

/* Falls irgendwo noch SVG statt <i> genutzt wird */
.besch-job-card .pdf-btn .icon svg,
.besch-job-card .share-btn .icon svg{
  width:18px; height:18px;
}
}