.dbq-icon-catalog {
	padding: 10px 0;

	&--standalone {
		padding: 20px 30px;
	}

	&__section {
		margin-bottom: 24px;

		&--all {
			.dbq-icon-catalog__loading {
				display: block;
			}
		}
	}

	&__title {
		font-size: 14px;
		font-weight: 600;
		margin: 0 0 12px 0;
		color: $modal-input-color;
	}

	&__loading {
		display: none;
		font-size: 13px;
		color: $modal-label-color;
		margin-bottom: 12px;
	}

	&__grid {
		display: grid;
		grid-template-columns: repeat(auto-fill, minmax(90px, 1fr));
		gap: 8px;
	}

	&__item {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		padding: 10px 6px;
		border: 1px solid $modal-border-color;
		border-radius: 8px;
		background: $modal-input-background;
		cursor: pointer;
		transition: border-color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease;

		&:hover {
			border-color: $color-primary;
			background: $input-list-active-background;
		}

		&--selected {
			border-color: $color-primary;
			background: $input-list-active-background;
			box-shadow: 0 0 0 2px $color-primary;
		}

		&--preserve-colors {
			.dbq-icon-catalog__item-icon svg {
				fill: unset;
			}
		}
	}

	&__item-icon {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 32px;
		height: 32px;
		margin-bottom: 6px;

		svg {
			width: 24px;
			height: 24px;
			fill: $modal-input-color;
		}
	}

	&__item-code {
		font-size: 11px;
		line-height: 14px;
		font-weight: 500;
		color: $modal-label-color;
		word-break: break-all;
		text-align: center;
	}
}
