/**
 * Vertriebswelt24: Jobbörse (Spur B).
 * Baut auf den gemeinsamen Klassen vw-* aus vertriebswelt.css auf;
 * hier nur Zusätze mit Präfix vw-job- (dazu vw-com-blaettern für die
 * gemeinsame Blätterleiste der Spur B).
 */

.vw-job {
	display: grid;
	gap: 1.25rem;
}

/* Filter */
.vw-job-filter {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: .75rem 1rem;
	align-items: end;
	padding: 1rem;
	border: 1px solid var(--vw-rand, #e2e8f0);
	border-radius: 18px;
	background: var(--vw-flaeche-grau, #f8fafc);
}

.vw-job-filter .vw-feld {
	margin: 0;
}

.vw-job-filter__knoepfe {
	grid-column: 1 / -1;
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	margin: 0;
}

.vw-job-zahl {
	margin: 0;
	color: var(--vw-leise, #64748b);
}

/* Karten */
.vw-job-karte {
	position: relative;
	display: grid;
	gap: .4rem;
	align-content: start;
}

.vw-job-karte__titel {
	margin: 0;
	font-size: 1.1rem;
	line-height: 1.35;
	padding-right: 3.5rem;
}

.vw-job-karte__titel a {
	color: var(--vw-text, #1f2933);
	text-decoration: none;
}

.vw-job-karte__titel a::after {
	content: "";
	position: absolute;
	inset: 0;
}

.vw-job-karte__titel a:hover,
.vw-job-karte__titel a:focus-visible {
	color: var(--vw-akzent, #0f766e);
}

.vw-job-karte__firma {
	margin: 0;
	font-weight: 600;
	color: var(--vw-akzent-dunkel, #115e59);
}

.vw-job-karte__daten {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: .2rem;
	font-size: .92rem;
}

.vw-job-karte__daten li::before {
	content: "·";
	margin-right: .4rem;
	color: var(--vw-leise, #64748b);
}

.vw-job-karte .vw-klein {
	margin: 0;
	color: var(--vw-leise, #64748b);
}

.vw-job-neu {
	background: var(--vw-amber, #f59e0b);
	color: var(--vw-nacht, #0f172a);
	font-weight: 700;
	letter-spacing: .04em;
}

.vw-job-karte .vw-job-neu {
	position: absolute;
	top: .9rem;
	right: .9rem;
}

.vw-job-einzel > .vw-job-neu {
	justify-self: start;
}

.vw-job-firmen {
	background: var(--vw-akzent-hell, #ecfdf5);
	border-color: transparent;
}

.vw-job-firmen h2 {
	margin-top: 0;
}

/* Einzelansicht */
.vw-job-zurueck {
	margin: 0;
}

.vw-job-zurueck a {
	color: var(--vw-akzent-dunkel, #115e59);
}

.vw-job-eckdaten {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: .75rem 1.25rem;
	margin: 0;
}

.vw-job-eckdaten dt {
	font-size: .8rem;
	text-transform: uppercase;
	letter-spacing: .04em;
	color: var(--vw-leise, #64748b);
}

.vw-job-eckdaten dd {
	margin: .15rem 0 0;
	font-weight: 600;
	overflow-wrap: anywhere;
}

.vw-job-text {
	overflow-wrap: anywhere;
}

.vw-job-interesse {
	border-left: 4px solid var(--vw-akzent, #0f766e);
}

.vw-job-interesse h2 {
	margin-top: 0;
}

.vw-job-interesse form {
	display: grid;
	gap: .75rem;
}

.vw-job-zaehler {
	display: block;
	text-align: right;
	color: var(--vw-leise, #64748b);
}

/* Anzeige aufgeben */
.vw-job-aufgeben form {
	display: grid;
	gap: 1rem;
}

.vw-job-aufgeben fieldset {
	border: 1px solid var(--vw-rand, #e2e8f0);
	border-radius: 18px;
	padding: 1rem 1.25rem 1.25rem;
	margin: 0;
	display: grid;
	gap: .75rem;
}

.vw-job-aufgeben legend {
	font-weight: 700;
	padding: 0 .4rem;
}

.vw-job-aufgeben abbr {
	color: var(--vw-akzent-dunkel, #115e59);
	text-decoration: none;
}

.vw-job-zeile {
	display: grid;
	grid-template-columns: minmax(110px, 160px) 1fr;
	gap: .75rem;
}

.vw-job-haken-liste {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem 1.25rem;
	margin-top: .35rem;
}

.vw-job-haken {
	display: inline-flex;
	gap: .45rem;
	align-items: flex-start;
}

.vw-job-haken input {
	margin-top: .25rem;
}

.vw-job-datenschutz {
	font-size: .95rem;
}

/* Lockfeld für Spam-Programme: für Menschen unsichtbar. */
.vw-job-honig {
	position: absolute !important;
	left: -10000px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

/* Blättern (gemeinsam mit der Community) */
.vw-com-blaettern {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .4rem;
}

.vw-com-blaettern .vw-chip {
	text-decoration: none;
}

.vw-com-blaettern .vw-chip.ist-aktiv {
	background: var(--vw-akzent, #0f766e);
	border-color: var(--vw-akzent, #0f766e);
	color: #fff;
}

@media (max-width: 600px) {
	.vw-job-zeile {
		grid-template-columns: 1fr;
	}
}
