/* Firmenzugriff: Grundlayout aus cs-admin-*; hier nur Abweichungen. */
.cs-firm-access__sync {
	display: flex;
	gap: var(--cs-space-2);
	align-items: center;
	justify-content: flex-end;
	color: var(--cs-color-text-muted);
	font-size: var(--cs-font-size-sm, .8125rem);
}

.cs-firm-access__inline {
	display: flex;
	gap: var(--cs-space-2);
	& input {
		width: 9rem;
	}
}

/* Offene Anträge brauchen eine Entscheidung und fallen in der Liste zuerst auf. */
.cs-firm-access__item {
	align-items: start;
	&.is-pending {
		border-left: 3px solid var(--cs-color-warning);
	}
}

.cs-firm-access__details {
	margin-top: var(--cs-space-2);
	& > summary {
		width: max-content;
		color: var(--cs-color-primary);
		font-size: var(--cs-font-size-sm, .8125rem);
		cursor: pointer;
	}
}

.cs-firm-access__details-body {
	display: grid;
	gap: var(--cs-space-3);
	margin-top: var(--cs-space-2);
	padding: var(--cs-space-3);
	border-radius: var(--cs-radius-md);
	background: var(--cs-color-surface);
}

.cs-firm-access__quote {
	margin: 0;
	padding-left: .6rem;
	border-left: 2px solid var(--cs-color-border-soft);
	color: var(--cs-color-text-muted);
	white-space: pre-line;
	overflow-wrap: anywhere;
}

.cs-firm-access__pager {
	display: flex;
	flex-wrap: wrap;
	gap: var(--cs-space-2);
	align-items: center;
	&:empty {
		display: none;
	}
}

.cs-firm-access__submit {
	justify-content: flex-end;
}

.cs-firm-access__summary {
	color: var(--cs-color-text-muted);
	font-size: var(--cs-font-size-sm, .8125rem);
}

.cs-firm-access .is-error, #firmAccessDialog .is-error {
	color: var(--cs-color-danger);
}

/* Zähler offener Anträge am Einstieg (Toolbar-Zeile bzw. Onboarding-Button). */
.cs-firm-access-badge {
	display: inline-grid;
	place-items: center;
	min-width: 1.35rem;
	height: 1.35rem;
	margin-left: .4rem;
	padding: 0 .3rem;
	border-radius: 999px;
	background: var(--cs-color-danger);
	color: #fff;
	font-size: var(--cs-font-size-xs, .75rem);
	font-weight: bold;
	line-height: 1;
	&[hidden] {
		display: none;
	}
}
