/* ==========================================================================
   KW Job-Board (#1212) — Raster der ausgeschriebenen Stellen auf /karriere/

   WAS:   Bildet das Raster nach, das vorher aus zwei core/columns-Bloecken kam:
          zwei Karten pro Zeile, 32px dazwischen, 40px Zeilenabstand, 40px
          Seitenrand, unten 80px Luft, maximal 1200px breit und zentriert.
   WARUM: Die Zahl der Stellen kommt jetzt aus dem Backend-Reiter „Jobs" und
          ist nicht mehr im Seiteninhalt verdrahtet — das Raster muss also mit
          beliebig vielen Karten umgehen, statt an fixe Spalten gebunden zu sein.

   ZWEI HUELLEN, WARUM:
   Das Theme macht jeden direkten Kind-Block von #primary.kw-main mit einer
   `kw-`-Klasse randlos (components.css: max-width/width/margin mit !important).
   Die aeussere .kw-job-board nimmt deshalb den Seitenrand der Seite (--kw-main-pad)
   wieder auf, das innere Raster setzt die alignwide-Breite (1200px, zentriert).
   Erst diese Kombination trifft die alte Geometrie.

   GEMESSEN auf Schau vor dem Umbau, Ansichtsbreite 844:
     Karte 1 x=64 y=1936 342x271 · Karte 2 x=438 gleiche Zeile ·
     Karte 3 x=64 y=2247 716 breit (volle Breite), Abschluss bei 2473.
   Daher die Regel „letzte Karte bei ungerader Anzahl ueber die volle Breite" —
   sie reproduziert die alte Ein-Spalten-Zeile am Ende.
   ========================================================================== */

.kw-job-board {
    box-sizing: border-box;
    padding-left: var(--kw-main-pad, 24px);
    padding-right: var(--kw-main-pad, 24px);
}

.kw-job-board__grid {
    box-sizing: border-box;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 40px 80px;
    display: grid;
    /* minmax(0,1fr) statt 1fr: sonst zieht die Mindestbreite langer Woerter
       ("INITIATIVBEWERBUNG") die Spalte ueber den Container hinaus. */
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 32px;
    row-gap: 40px;
    align-items: stretch;
}

/* Ungerade Anzahl: die letzte Karte steht allein in ihrer Zeile und nimmt —
   wie vorher der einzelne Spalten-Block — die volle Breite ein. */
.kw-job-board__item:last-child:nth-child(odd) {
    grid-column: 1 / -1;
}

/* Gegenstueck zu core `.wp-block-column` (min-width/Wortumbruch) und zu den
   `.wp-block-columns > .wp-block-column > .kw-card`-Regeln in kw-blocks.css
   (gleiche Kartenhoehe je Zeile). Ohne den Wortumbruch steht die Ueberschrift
   „INITIATIVBEWERBUNG" auf schmalen Ansichten ueber den Kartenrand hinaus. */
.kw-job-board__item {
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow-wrap: break-word;
    word-break: break-word;
}
.kw-job-board__item > .kw-card {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
}
.kw-job-board__item > .kw-card > .kw-card__body {
    flex: 1 1 auto;
}

/* Unter 782px stapelt Gutenberg core/columns auf eine Spalte — dieselbe Grenze
   und derselbe 24px-Abstand, den core zwischen gestapelten Spalten setzt. */
@media (max-width: 781px) {
    .kw-job-board__grid {
        grid-template-columns: minmax(0, 1fr);
        row-gap: 24px;
    }
    .kw-job-board__item:last-child:nth-child(odd) {
        grid-column: auto;
    }
}
